An html editor for articles of wechat
An online(production) site is the best explaination of this project, visit DWEDITOR to try it.
- This is a online html editor for articles, mainly for articles of wechat.
- You can create your articles and insert different elements/templates into it, all in html format.
- You can also copy/paste other html section from the browser into article, then modify the content you brought in.
- It supports to import wechat article directly into editor, as your article.
- Every operation is tracable, supports undo/redo for all the steps you've done editing the article.
- Support to insert snapshot from link of Taobao, Tmall, weibo.
- Purely javascript project. Nodejs(Express) as backend. JQuery + Bootstrap as front end.
- Service using nodejs + mysql.
- Heavy server light browser design. Most of the data handle/render happens in server side. (Which I believe is the future)
- Data exchange all in json format, only render into html when it needs to be drawn.
- Using LeanCloud as user register/manage solution - it's just a simple way, you can always switch to your prefered mechanism.
- Using qiniu as image storage service provider, you may switch to any cloud storage service you prefer.
- Some spider features are using casperjs as engine.
- Get mysql env ready. Run Mysql tables initialize scripts
- (Optional) Import templates into mysql using Templates data scripts
- Set up your mysql env at env.json for mysql host,port,user,pwd,db.
- (Optional - if you want to store image) Set up your qiniu account at env.json for qiniu bucket, url, accesskey, secret
- (Optional - if you want to have user system) Set up LeanCloud apikey&secret at boot.js line18
- Run npm install under enhancedmd to get all the dependency packages ready.
- Run bower install under enhancedmd to get dependency ui modules ready.
- Start server under enhancedmd (recommand way - for development :
supervisor bin/www
for debug :node-debug bin/www
) . Visit localhost
Check out desgins & code guidence at this Doc
This is our company's project from scratch since Feb/2016, the development last for about three months. I've designed the whole architecture and implement majority of the code.
This is project is in half-abandoned state as our limited resource and uncertainty about the direction of product, so I open-sourced this in order to serve as reference for anyone who is interested in doing similar product.
Other two engineers who involved in this project: