Yjs-backend with custom extensions, build on top of hocuspocus: https://tiptap.dev/docs/hocuspocus/introduction
docker compose build
docker compose up -d
Migrations:
Create a migration from changes in Prisma schema, apply it to the database, trigger generators (e.g. Prisma Client)
$ npx prisma migrate dev
Reset all migrations
$ npx prisma db push --force-reset
Start the server:
docker compose exec app npm run start:dev
https://www.prisma.io/docs/orm/prisma-migrate/understanding-prisma-migrate
PORT
: PortDATABASE_URL
: Database hostOBJECT_STORAGE_BUCKET
: Bucket where to store uploads. The API needs to be s3-compatible.OBJECT_STORAGE_SCHEME
: Schema for object storage, e.g.http://
orhttps://
OBJECT_STORAGE_HOST
: Storage host, e.g. a container nameOBJECT_STORAGE_PORT
: Port for object storageOBJECT_STORAGE_REGION
: Region for object storage, e.g.local
OBJECT_STORAGE_USER
: User for object storageOBJECT_STORAGE_PASSWORD
: Password for object storageVAULT_ENCRYPTION_KEY_BASE64
: Encryption key for the object storage, as every single item is encrypted. Needs to have a length of exactly 32 chars.FEATURE_REMOVE_DOCUMENTS_TOGGLE
: Activate cleanup of inactive / old texts. Defaults to false.FEATURE_REMOVE_DOCUMENTS_MAX_AGE_IN_DAYS
: Days after which inactive texts should be deleted. Defaults to 720.
kits is a project platform hosted by a public institution for quality development in schools (Lower Saxony, Germany) and focusses on digital tools and media in language teaching. GroupWriter can be found on https://kits.blog/tools and can be used by schools for free.
Logos and text provided with courtesy of kits.