ZDnevnik is a mobile-first web app (it hasn't been optimized for desktop yet) for teachers and students. It allows you to manage your classes and students.
It is a hobby project and my intention for it is to be used by my nephews and nieces. Because, jokingly, I am grading them for absurd things (like if they bring me a glass of water when I ask them to or similar shenanigans).
This is a monorepo with the following projects:
apps/api
: RESTful API made with Node using Fastify as the frameworkapps/sveltastic
: Web app made with SvelteKitlibs/toolkit
: Common/shared tools and libraries for the projects
This project requires a few tools in order to run it. Those tools are:
- Node v20.10.0 - or you can use nvm to install the correct Node version by running
nvm use
- pnpm v9.7.0
- Docker and Docker Compose
Then you also need to set up the ENV variables for the web app and API.
You also need to update your /etc/hosts
file with the following entry:
127.0.0.1 zdnevnik.local api.zdnevnik.local
To run the app, use the following commands:
docker compose up -d # This will run the api, db, web and reverse proxy services
After successfully building and running docker compose, you should be able to access the web app at http://zdnevnik.local
.