Skip to content
Snippets Groups Projects

Snip

Our digital lab book

pipeline status License: GPL v3 pipeline status

About

This is the monorepo for snip - our digital lab book. This repo includes the complete code for the frontend and backend of the application.

Currently we run a public instance of snip at snip.roentgen.physik.uni-goettingen.de. Which can be used to test the application without having to install it locally.

Installation via docker

Build node docker container with:

docker compose build
docker compose up

At the moment we do not have the container registered so you need to manually build them. This might take a minute or two!

Development

We have a docker compose file that can be used to start the development environment. This will start the frontend, backend and database.

docker compose -f docker-compose.dev.yml build
docker compose -f docker-compose.dev.yml up

Repo overview

The repo is structured into packages, apps and assets. Apps can be run and are the entry points for the application. Packages are shared code that is used by the apps and other packages. Assets are static files that are used by the apps.

apps
├── fullstack # next.js application
├── nginx # reverse proxy 
├── render # render server
├── email # email server
└── socket # socket server
packages
├── auth # authentication
├── configs # configuration for eslint, typescript, etc.
├── database # database service and types
├── snips # snip types
├── scripts # scripts for the project
└── utils # utility functions

Legacy code

Working php code can be found in the legacy branch.