This file can now be pushed to the main branch. The following changes have taken place:
1) Removed my personal data.
2) Made it compliant with pydantic 2. This involved:
a) Changing the way of noting optional strings (now 'none' strings). This is as elegant as is possible.
b) Updating the imports. Origin code results in "pydantic.errors.PydanticImportError: `BaseSettings` has been moved to the `pydantic-settings` package. See https://docs.pydantic.dev/2.7/migration/#basesettings-has-moved-to-pydantic-settings for more details.
c) converting urls using the str() method. Origin code results in AttributeError: 'pydantic_core._pydantic_core.Url' object has no attribute 'decode' For further information visit https://errors.pydantic.dev/2.7/u/import-error"
New developers will still need to fill out the mail_address, mail_password, mail_username, mail_port and secret_key before they can run the code. This is by design, though.
Hope this saves time, Mawoka!
ClassQuiz
The open-source quiz-platform!
Visit the website »
Docs
·
Register
·
Self-Hosting
·
Matrix Space
About ClassQuiz
ClassQuiz is a quiz app to learn interactively for students, but open-source which is very important if it is a product for educational purposes. You can create quizzes and play them remotely with other people. It is mainly made for teachers who create a quiz, so students can compete with their knowledge against each other.
Try it
There is a hosted version at classquiz.de. The server is located in Karlsruhe, Germany and hosted by netcup, so expect some latency depending on your location.
Help/Community
Join our Matrix Space using element!
Donating
Self-Host
Please see https://classquiz.de/docs/self-host
Development
See https://classquiz.de/docs/develop
Translation
ClassQuiz uses hosted Weblate
Docs
The docs are online at https://classquiz.de/docs
Things to know about the structure
Since this repo is a monorepo, the frontend is located in
the frontend/-directory.
The backend-project (Pipfile) is in the root, but all the code is located in
the classquiz/-folder.
Tech-Stack
Backend
The backend is made with FastAPI (web-framework) , ormar (ORM) , python-socketio (realtime-communication between server and client)
Frontend
The frontend is made with SvelteKit (web-framework) and TailwindCSS (Css-Framework).
External Dependencies
Selfhostable:
- Meilisearch (Search-Server)
- Caddy (Reverse Proxy)
- Postgres (Database)
- Redis (Cache)
Closed-Source 3rd parties:
License Note
This repository is licensed under the Mozilla Public License 2.0, so you
MUST PUBLISH ANY CHANGES YOU MAKE!!!1
-
I added this note, since people are stealing my software and changing it without providing the source-code. Maybe they aren't aware of this license, maybe they don't care, but I don't care, why they don't do it. THEY HAVE TO! ↩︎