Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/MkDocsEditor/MkDocsEditor-Backend
Server backend for MkDocsEditor clients.
https://github.com/MkDocsEditor/MkDocsEditor-Backend
collaborative-editing differential-synchronization go golang hacktoberfest mkdocs realtime-collaboration realtime-editing websocket-server
Last synced: 5 days ago
JSON representation
Server backend for MkDocsEditor clients.
- Host: GitHub
- URL: https://github.com/MkDocsEditor/MkDocsEditor-Backend
- Owner: MkDocsEditor
- License: agpl-3.0
- Created: 2019-01-11T13:45:01.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2024-07-30T22:08:20.000Z (3 months ago)
- Last Synced: 2024-08-01T12:23:24.810Z (3 months ago)
- Topics: collaborative-editing, differential-synchronization, go, golang, hacktoberfest, mkdocs, realtime-collaboration, realtime-editing, websocket-server
- Language: Go
- Homepage:
- Size: 213 KB
- Stars: 5
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-starred - MkDocsEditor/MkDocsEditor-Backend - Server backend for MkDocsEditor clients. (hacktoberfest)
README
# MkDocsEditor-Backend
Server backend for MkDocsEditor clients.
## How to use
### Configuration
Create a `mkdocsrest.yaml` file similar to the [mkdocsrest_example.yaml](mkdocsrest_example.yaml).
### Docker
Run the service using Docker and mount the configuration file and the wiki folder:
```bash
docker run -d \
-p 7413:7413 \
-v ~/mkdocsrest.yaml:/app/mkdocsrest.yaml \
-v ~/mywiki:/data \
ghcr.io/mkdocseditor/mkdocseditor-backend:latest
```### Connect
Use a client to connect to the service.
## Clients
- [MkDocsEditor-Android](https://github.com/MkDocsEditor/MkDocsEditor-Android)
- [MkDocsEditor-Web](https://github.com/MkDocsEditor/MkDocsEditor-Web)## API
[OpenAPI Documentation](https://editor-next.swagger.io/?url=https://raw.githubusercontent.com/MkDocsEditor/MkDocsEditor-Backend/master/openapi-description.yaml)
### General
| Method | Path | Description |
|--------|----------------|---------------------------------------------|
| GET | /alive | Liveness probe endpoint |
| GET | /mkdocs/config | Retrieve the `mkdocsrest.yaml` configurtion |### Sections
| Method | Path | Description |
|--------|----------------------|-------------------------------------------------------|
| GET | /section | Retrieve the whole section tree |
| GET | /section/ | Retrieve the section with the given `sectionId` |
| POST | /section | Create a new secton |
| PUT | /section/ | Update an existing section with the given `sectionId` |
| DELETE | /section/ | Delete the section with the given `sectionId` |### Documents
| Method | Path | Description |
|--------|:-------------------------------|-------------------------------------------------------------------------------------------------------------|
| GET | /document/ | Retrieve the document with the given `documentId` |
| GET | /document//ws | Websocket endpoint for realtime communication regarding updates of the document with the given `documentId` |
| GET | /document//content | Retrieve the current content of the document with the given `documentId` |
| POST | /document | Create a new document |
| PUT | /document/ | Rename an exsiting document with the given `documentId` |
| DELETE | /document/ | Delete the document with the given `documentId` |### Resources
| Method | Path | Description |
|--------|--------------------------------|--------------------------------------------------------------------------|
| GET | /resource/ | Retrieve the resource with the given `resourceId` |
| GET | /resource//content | Retrieve the current content of the resource with the given `resourceId` |
| POST | /resource | Upload a new resource |
| PUT | /resource/ | Rename an exsiting resource with the given `resourceId` |
| DELETE | /resource/ | Delete the resource with the given `resourceId` |# Contributing
GitHub is for social coding: if you want to write code, I encourage
contributions through pull requests from forks of this repository.
Create GitHub tickets for bugs and new features and comment on the ones
that you are interested in.# License
AGPLv3+