BIMData Platform Backend is the backend for the BIMData Platform application.
The BIMData Platform Backend is written in Python 3.
You need:
-
Python 3.9 or later
-
Poetry: Download poetry
-
a running database system: we support PostgreSQL only.
Note: Any other DBMS compatible with Django should work, but we don't officially support it.
git clone https://github.com/bimdata/platform-back.git
Place yourself in the proper directory and type this:
cd platform-back
poetry shell
poetry install
The bimdata/.env file is a representation of additionnal ENV variable in order to override default config.
You can duplicate .env.example in .env and customize your config.
cp .env.example .env
- Create the database and edit the configuration file
.env - Create the tables and populate the database:
./manage.py migrate
Create a super-user (access to admin page)
./manage.py createsuperuser
./manage.py runserver
We use Celery to handle notifications emails
Celery need at least two runners: one beater and at least one worker.
# Run the beater
celery -A platform_back beat --loglevel=info --scheduler django_celery_beat.schedulers:DatabaseScheduler# Run a worker
celery -A platform_back worker --loglevel=infoFor development purpose, you can run both in the same command with:
celery -A platform_back worker --beat --loglevel=info --scheduler django_celery_beat.schedulers:DatabaseSchedulerCheck https://developers.bimdata.io to learn more about the Platform features. Our documentation helps you to understand the concepts and architecture of the Platform.
Need more information about the API?
Need some details about the authentication workflow?
./manage.py test to run tests
Install libpq-server with your packet manager, and re-do the procedure from the dependencies installation:
sudo apt install libpq-server
poetry install
You are free to copy, modify, and distribute BIMData Platform Backend under the terms of the LGPL 3.0 license. See the LICENSE file for details.