stackedit/README.md

108 lines
4.8 KiB
Markdown
Raw Normal View History

2017-10-04 02:43:14 +08:00
# StackEdit
2017-07-24 02:42:08 +08:00
从 [StackEdit 官方](https://github.com/benweet/stackedit) fork出来然后加上了 **Gitee** 的支持并且已经重新打了镜像以下官方的部署方式除了Docker镜像地址不同其他均一致。
2022-05-24 10:44:59 +08:00
Fork出来修改的原因StackEdit的作者可能因为什么原因已经很久不维护了Github授权登录很早之前就登录不了了并且还没法支持国内常用的Gitee比较蛋疼所以想到Fork出来改大概花了周末一整天终于改好了。
2022-05-24 03:50:25 +08:00
新的Docker镜像在中央仓库为mafgwo/stackedit当前最新版本为5.15.2(延续原有版本号)
并增加了以下三个环境变量:
- `GITEE_CLIENT_ID` Gitee 的 Client ID
- `GITEE_CLIENT_SECRET` Gitee 的 Client Secret
- `GITEE_CALLBACK` Gitee的回调地址Gitee授权获取token时还需要传入回调地址格式是 http[s]://[hostname]:[port]/oauth2/callback
2022-05-24 10:44:59 +08:00
**关于后续的一些想法:**
- 支持**Gitea**、**Gogs**两个轻量级且适于自建的Git仓库毕竟Gitlab对机器配置要求较高。想支持这两个主要也是考虑到其实很多公司已经禁用了Github或Gitee仓库在公司都没法连上自己的Git仓库。
- 汉化,毕竟大家最熟悉的还是母语,并且该编辑器功能页面也不多,汉化工作量并不会很大。
- 引入mdnice右边预览增加mdnice预览选项主要含选主题(含mdnice常用20多个主题)、支持自定义主题、复制到公众号、复制到知乎、复制到稀土掘金等基本功能,便于喜欢写公众号、博客的你可以更好更快的排版。
- ... 另外朋友们有好的想法也可以在Issue或者加我微信 qicoding 提给我。
目前已部署地址https://edit.qicoder.com/可以使用该地址试用或长期使用本人承诺绝对没采集任何人的Token信息。
2018-02-11 20:32:16 +08:00
[![Build Status](https://img.shields.io/travis/benweet/stackedit.svg?style=flat)](https://travis-ci.org/benweet/stackedit) [![NPM version](https://img.shields.io/npm/v/stackedit.svg?style=flat)](https://www.npmjs.org/package/stackedit)
> Full-featured, open-source Markdown editor based on PageDown, the Markdown library used by Stack Overflow and the other Stack Exchange sites.
2017-07-24 02:42:08 +08:00
2018-04-27 22:37:05 +08:00
### Ecosystem
2018-03-15 22:50:46 +08:00
2018-04-27 22:37:05 +08:00
- [Chrome app](https://chrome.google.com/webstore/detail/iiooodelglhkcpgbajoejffhijaclcdg)
- NEW! Embed StackEdit in any website with [stackedit.js](https://github.com/benweet/stackedit.js)
- NEW! [Chrome extension](https://chrome.google.com/webstore/detail/ajehldoplanpchfokmeempkekhnhmoha) that uses stackedit.js
- [Community](https://community.stackedit.io/)
### Build
2021-03-29 20:28:44 +08:00
```bash
# 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
```
2017-10-04 02:43:14 +08:00
### 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.
```bash
# 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
2021-03-29 20:28:44 +08:00
```
Later, to upgrade StackEdit to the latest version:
```bash
helm repo update
helm upgrade stackedit stackedit/stackedit
2021-03-29 20:28:44 +08:00
```
2021-03-29 20:28:44 +08:00
If you want to uninstall StackEdit:
```bash
helm delete --purge stackedit
2021-03-29 20:28:44 +08:00
```
2021-03-29 20:28:44 +08:00
If you want to use your existing ingress controller and cert-manager issuer:
```bash
# 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 \
2021-03-29 20:28:44 +08:00
--set ingress.annotations."cert-manager\.io/cluster-issuer"=letsencrypt-prod \
2019-07-03 06:52:58 +08:00
--set ingress.hosts[0].host=stackedit.example.com \
--set ingress.hosts[0].paths[0]=/ \
--set ingress.tls[0].secretName=stackedit-tls \
2019-07-03 06:52:58 +08:00
--set ingress.tls[0].hosts[0]=stackedit.example.com
```