]> git.lizzy.rs Git - cheatdb.git/blobdiff - README.md
Add ability to edit comments
[cheatdb.git] / README.md
index 7cf27c5fc886ef2540956d8a80d9197bc8810d54..a81a8eea4632cd320de831be3d9963e66d5625f5 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,31 +1,63 @@
 # Content Database
-
-## Setup
-
-First create a Python virtual env:
-
-       virtualenv env
-       source env/bin/activate
-
-then use pip:
-
-       pip install -r requirements.txt
-
-## Running
-
-You need to enter the virtual environment if you haven't yet in
-the current session:
-
-       source env/bin/activate
-
-Reset the database like so:
-
-       python setup.py -d
-
-Then run the server:
-
-       python rundebug.py
-
-Then view in your web browser:
-
-       http://localhost:5000/
+[![Build status](https://gitlab.com/minetest/contentdb/badges/master/pipeline.svg)](https://gitlab.com/minetest/contentdb/pipelines)
+
+Content database for Minetest mods, games, and more.\
+Developed by rubenwardy, license GPLv3.0+.
+
+## How-tos
+
+Note: you should first read one of the guides on the [Github repo wiki](https://github.com/minetest/contentdb/wiki)
+
+```sh
+# Run celery worker
+FLASK_CONFIG=../config.cfg celery -A app.tasks.celery worker
+
+# if sqlite
+python utils/setup.py -t
+rm db.sqlite && python setup.py -t && FLASK_CONFIG=../config.cfg FLASK_APP=app/__init__.py flask db stamp head
+
+# Create migration
+FLASK_CONFIG=../config.cfg FLASK_APP=app/__init__.py flask db migrate
+# Run migration
+FLASK_CONFIG=../config.cfg FLASK_APP=app/__init__.py flask db upgrade
+
+# Enter docker
+docker exec -it contentdb_app_1 bash
+
+# Hot/live reload (only works with FLASK_DEBUG=1)
+./utils/reload.sh
+
+# Cold update a running version of CDB with minimal downtime
+./utils/update.sh
+```
+
+## Database
+
+
+```mermaid
+classDiagram
+
+User "1" --> "*" Package
+User --> UserEmailVerification
+User "1" --> "*" Notification
+Package "1" --> "*" Release
+Package "1" --> "*" Dependency
+Package "1" --> "*" Tag
+Package "1" --> "*" MetaPackage : provides
+Release --> MinetestVersion
+Package --> License
+Dependency --> Package
+Dependency --> MetaPackage
+MetaPackage "1" --> "*" Package
+Package "1" --> "*" Screenshot
+Package "1" --> "*" Thread
+Thread "1" --> "*" Reply
+Thread "1" --> "*" User : watchers
+User "1" --> "*" Thread
+User "1" --> "*" Reply
+User "1" --> "*" ForumTopic
+
+User --> "0..1" EmailPreferences
+User "1" --> "*" APIToken
+APIToken --> Package
+```