- Published on
An online collaborative text editor
Here is an online collaborative text editor built upon SpringBoot, Mybatis, Websocket and Vue.js.
- Demo website: https://jsy-doc.herokuapp.com
- Note: Due to the limitations of the free version of Heroku, it may take up to 1 minute to load the page initially to start the service.
- Public test accounts: (You can also create your own accounts if you wish)
Username: test, Password: Test123456
Username: test1, Password: Test123456
- GitHub repo: https://github.com/94rain/OnlineDocs
Deployment
Docker
To deploy the application with Docker, run docker-compose up
and configure Nginx to be like nginx.conf
Separately
To run the backend and frontend separately (with maven, jre8 and npm):
run mvn package -DskipTests; java -jar ./target/docs-0.0.1-SNAPSHOT.jar
for a production build of the backend, and npm install; npm run serve
for frontend development (npm run build
for a production build, needs a http server to host static files)
Default MySQL config: (initial file: sql.sql )
Host: localhost
Port: 3306
Username: mysqluser
Password: mysqlpass
Database: cmd
Customization
- MySQL default data location:
/var/lib/mysql
. You can change it in docker-compose.yml if you wish. - Swagger2 UI:
localhost:8082/v2/api-docs
Acknowledgement
- The Vue.js frontend UI is adapted from mortenterhart/collaborative-markdown-editor (based on Java EE)
- Springboot + websocket and vue.js integration
- JWT and inteceptors implementation demo
- ...