- Markdown support
- Heading
- Bold
- Italic
- Strikethrough
- Quoting code
- Quoting text
- List
- Link
- Image
- Table
- Code highlighting using highlight.js
- LaTeX math equations using MathJax
- The left borders of blockquotes are removed
- Log in to
Microsoft Azure
- Find
App registrations
underAll services
- Click
New registration
, selectAccounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)
underSupported account types
, and addhttp://localhost:5000/login/authorized
asRedirect URI
- Click
Add a permission
to addFiles.ReadWrite
,Notes.ReadWrite
,User.Read
,offline_access
underAPI permissions > Microsoft Graph > Delegated permissions
- Click
New client secret
underCertificates & secrets
and store it securely
- Install Cairo
- Clone the code
- Add your own
Application Id
andApplication secret
toconfig.py
or add them as environment variables - Run
npm install && npm run build
- Create an isolated Python virtual environment and run
python setup.py install
in it - Run
python run.py
to start the app - Navigate to
http://localhost:5000/
-
Run the app
- Run from docker
- Create an env file called
graph.key
with the following content:GRAPH_CLIENT_ID=your client id GRAPH_CLIENT_SECRET=your client secret
- Run
sudo docker run -d -p 5000:5000 --env-file graph.key xiaodanmao/markote:latest
- Create an env file called
- Run from source code
- Run from docker
-
Install nginx
-
Install certbot and run instructions
-
Create
markote.conf
under/etc/nginx/conf.d
with the following content:server { listen 443 ssl default_server; server_name yourdomain.com; ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem; location / { proxy_pass http://localhost:5000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Proto $proxy_add_x_forwarded_for; proxy_set_header X-Scheme $scheme; } }
-
Run
nginx -s reload
- Click
Add
underApp Services
, selectDocker Container
as publish method - Select
Single Container
asOptions
,Docker Hub
asImage Source
,Public
asAcess Type
and typexiaodanmao/markote
inImage and tag
field - Add
GRAPH_CLIENT_ID=your client id
,GRAPH_CLIENT_SECRET=your client secret
,MARKOTE_URL_SCHEME=https
as application settings underConfiguration