1
0
Fork 0
mirror of https://codeberg.org/Mo8it/AdvLabDB.git synced 2024-11-08 21:21:06 +00:00
AdvLabDB/README.adoc

86 lines
2.2 KiB
Text

= AdvLabDB
:source-highlighter: highlight.js
:highlightjs-languages: bash
image:https://img.shields.io/badge/code%20style-black-000000.svg[link=https://github.com/psf/black] image:https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336[link=https://pycqa.github.io/isort/]
== Requirements
You need to have Python version >=3.10 and Poetry installed. To install Poetry, follow the https://python-poetry.org/docs/#installation[official instructions].
== Starting server
IMPORTANT: Every following instruction has to be followed every time before starting the server if not mentioned otherwise.
=== Update code and dependencies
Navigate to the directory `advlabdb` where the repository is _already_ cloned (otherwise clone it) and run:
[source,bash]
----
git pull origin main
----
to pull the latest changes from the remote repository. Then run:
[source,bash]
----
poetry install
----
to install (or update) all needed packages to the virtual environment.
=== Enter the virtual environment
Run:
[source,bash]
----
poetry shell
----
'''
=== Re(create) a test database
WARNING: Running the following line *drops an eventually existing database*! The data in the database will be *lost*! This has to be done only if you are starting the server for the first time without an existing database or you want to *drop and recreate* the database.
[source,bash]
----
python -m advlabdb.scripts.test.test_database
----
This (re-)creates the database with some elements for testing.
'''
=== Start test server
Now you can start the server by running:
[source,bash]
----
python run.py
----
This command will print out the URL for accessing the local server. For example:
----
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
----
This URL leads to the home page where you can login with this testing admin account:
* email: \admin@advlabdb.de
* password: admin
NOTE: Obviously, the email address is fake.
== ToDo
* Deactivate assistants account after a while if not assigned to experiments
* Backups
* Logging
* Email integration + assistant reminder?
* Students code for getting information and giving feedback
* License (GNU AGPLv3?)
* Privacy policy