A simple knowledge management web application supports markdown, powered by blazor.
- Full markdown support powered by cherry-markdown
- Simple and Clean UI
- Plain markdown files are supported
- Images are supported, uploading or external
- Saving all resources to local file system
- Multiple level hierarchy sidebar
- Automatically saving
- Sync to Github
- For Windows
dotnet build -c Release -r win-x64 --self-contained true
- For Linux
dotnet build -c Release -r linux-x64 --self-contained true
"MemoDown": {
"MemoDir": "/path/to/markdown", // default to C:\Users\[UserName]\memo on Windows or /home/memo on Linux
"AutoSavingIntervalSecond": 30,
"UploadsDir": "/path/to/uploads", // default to [MemoDir]/uploads
"UploadsVirtualPath": "request virtual path for uploads", // default to uploads
"CleanUploadsAt": "0 1 * * *", linux cron expression, better before AutoSyncAt
"Account": {
"UserName": "your user name",
"Password": "your password hash"
},
"CloudflareTurnstile": {
"Enable": false,
"SiteKey": "your turnstile SiteKey",
"SecretKey": "your turnstile SecretKey"
},
"Github": {
"Enable": false,
"PAT": "your Personal Access Token",
"RepoName": "your repo to sync to",
"RepoOwner": "owner name of the repo",
"Branch": "branch name", // default to main
"EnableAutoSync": false,
"AutoSyncAt": "0 2 * * *" // linux cron expression
}
}
you may need the password-hasher to hash your password
- Create builder for cross-platform docker building (optional)
docker buildx create --driver-opt default-load=true --name=container --use
docker buildx inspect --bootstrap container
-
Build docker image (optional)
- Push to docker hub
docker buildx build --platform=linux/amd64,linux/arm64 --push --builder=container -t balder1840/memo-down:v1.0.1 .
- Or load to local
docker buildx build --platform=linux/amd64 --load --builder=container -t balder1840/memo-down:v1.0.1 .
- Push to docker hub
-
Use the image
docker run -d \
--name memodown \
-p 8080:8080 \
-e MemoDown__Account__UserName=your_user_name \
-e MemoDown__Account__Password=your_password_hash \
-v ~/memo:/memo \
balder1840/memo-down:tagname \