benweet/stackedit
README
StackEdit
Full-featured, open-source Markdown editor based on PageDown, the Markdown library used by Stack Overflow and the other Stack Exchange sites.
https://stackedit.io/
Ecosystem
Chrome app
NEW! Embed StackEdit in any website with stackedit.js
NEW! Chrome extension that uses stackedit.js
Community
Build
- ``` shell
- # install dependencies
- npm install
- # serve with hot reload at localhost:8080
- npm start
- # build for production with minification
- npm run build
- # build for production and view the bundle analyzer report
- npm run build --report
- ```
Deploy with Helm
StackEdit Helm chart allows easy StackEdit deployment to any Kubernetes cluster. You can use it to configure deployment with your existing ingress controller and cert-manager.
- ``` shell
- # Add the StackEdit Helm repository
- helm repo add stackedit https://benweet.github.io/stackedit-charts/
- # Update your local Helm chart repository cache
- helm repo update
- # Deploy StackEdit chart to your cluster
- helm install --name stackedit stackedit/stackedit \
- --set dropboxAppKey=$DROPBOX_API_KEY \
- --set dropboxAppKeyFull=$DROPBOX_FULL_ACCESS_API_KEY \
- --set googleClientId=$GOOGLE_CLIENT_ID \
- --set googleApiKey=$GOOGLE_API_KEY \
- --set githubClientId=$GITHUB_CLIENT_ID \
- --set githubClientSecret=$GITHUB_CLIENT_SECRET \
- --set wordpressClientId=\"$WORDPRESS_CLIENT_ID\" \
- --set wordpressSecret=$WORDPRESS_CLIENT_SECRET
- ```
Later, to upgrade StackEdit to the latest version:
- ``` shell
- helm repo update
- helm upgrade stackedit stackedit/stackedit
- ```
If you want to uninstall StackEdit:
- ``` shell
- helm delete --purge stackedit
- ```
If you want to use your existing ingress controller and cert-manager issuer:
- ``` shell
- # See https://docs.cert-manager.io/en/latest/tutorials/acme/quick-start/index.html
- helm install --name stackedit stackedit/stackedit \
- --set dropboxAppKey=$DROPBOX_API_KEY \
- --set dropboxAppKeyFull=$DROPBOX_FULL_ACCESS_API_KEY \
- --set googleClientId=$GOOGLE_CLIENT_ID \
- --set googleApiKey=$GOOGLE_API_KEY \
- --set githubClientId=$GITHUB_CLIENT_ID \
- --set githubClientSecret=$GITHUB_CLIENT_SECRET \
- --set wordpressClientId=\"$WORDPRESS_CLIENT_ID\" \
- --set wordpressSecret=$WORDPRESS_CLIENT_SECRET \
- --set ingress.enabled=true \
- --set ingress.annotations."kubernetes\.io/ingress\.class"=nginx \
- --set ingress.annotations."cert-manager\.io/cluster-issuer"=letsencrypt-prod \
- --set ingress.hosts[0].host=stackedit.example.com \
- --set ingress.hosts[0].paths[0]=/ \
- --set ingress.tls[0].secretName=stackedit-tls \
- --set ingress.tls[0].hosts[0]=stackedit.example.com
- ```