]> git.lizzy.rs Git - cheatdb.git/blob - README.md
Add support for filtering content warnings
[cheatdb.git] / README.md
1 # Content Database
2 [![Build status](https://gitlab.com/minetest/contentdb/badges/master/pipeline.svg)](https://gitlab.com/minetest/contentdb/pipelines)
3
4 Content database for Minetest mods, games, and more.\
5 Developed by rubenwardy, license GPLv3.0+.
6
7 ## How-tos
8
9 Note: you should first read one of the guides on the [Github repo wiki](https://github.com/minetest/contentdb/wiki)
10
11 ```sh
12 # Run celery worker
13 FLASK_CONFIG=../config.cfg celery -A app.tasks.celery worker
14
15 # if sqlite
16 python utils/setup.py -t
17 rm db.sqlite && python setup.py -t && FLASK_CONFIG=../config.cfg FLASK_APP=app/__init__.py flask db stamp head
18
19 # Create migration
20 FLASK_CONFIG=../config.cfg FLASK_APP=app/__init__.py flask db migrate
21 # Run migration
22 FLASK_CONFIG=../config.cfg FLASK_APP=app/__init__.py flask db upgrade
23
24 # Enter docker
25 docker exec -it contentdb_app_1 bash
26
27 # Hot/live reload (only works with FLASK_DEBUG=1)
28 ./utils/reload.sh
29
30 # Cold update a running version of CDB with minimal downtime
31 ./utils/update.sh
32 ```
33
34 ## Database
35
36
37 ```mermaid
38 classDiagram
39
40 User "1" --> "*" Package
41 User --> UserEmailVerification
42 User "1" --> "*" Notification
43 Package "1" --> "*" Release
44 Package "1" --> "*" Dependency
45 Package "1" --> "*" Tag
46 Package "1" --> "*" MetaPackage : provides
47 Release --> MinetestVersion
48 Package --> License
49 Dependency --> Package
50 Dependency --> MetaPackage
51 MetaPackage "1" --> "*" Package
52 Package "1" --> "*" Screenshot
53 Package "1" --> "*" Thread
54 Thread "1" --> "*" Reply
55 Thread "1" --> "*" User : watchers
56 User "1" --> "*" Thread
57 User "1" --> "*" Reply
58 User "1" --> "*" ForumTopic
59
60 User --> "0..1" EmailPreferences
61 User "1" --> "*" APIToken
62 APIToken --> Package
63 ```