Skip to content

Commit

Permalink
Merge branch 'reinout-first-go'
Browse files Browse the repository at this point in the history
  • Loading branch information
reinout committed Mar 12, 2024
2 parents e687253 + ac428a6 commit 1be6d95
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 36 deletions.
50 changes: 16 additions & 34 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
# BRO-Hub

Introductie
------------
## Introductie

BRO-hub is een allomvattend product voor het datamanagement rondom de BRO. Het bestaat uit een API om zowel data uit de BRO te importeren als data naar de BRO op te sturen. De geimporteerde data wordt opgeslagen in een database en is via de API op te vragen.

De backend is een Django applicatie, en de frontend (voorlopig) een Streamlit dashboard.

Project beschrijving
-----------------
## Project beschrijving

De backend bestaat uit een api met daarin:

- Een importtask endpoint. Hiermee kan op basis van een KvK en projectnummer alle actuele data van een BRO domein geimporteerd worden
Expand All @@ -17,44 +16,27 @@ De backend bestaat uit een api met daarin:

- Endpoints voor alle assets die uit de BRO worden geimporteerd.

Installatie backend
-----------------------

(Voorlopig moet alles nog zelf lokaal opgezet te worden. Hopelijk wordt een groot deel via docker opgezet in de toekomst, daarom is deze omschrijving nogal beperkt in details)
## Installatie backend

Om het lokaal te installeren:
To install for development:

1) Clone de repo, maak een venv aan, en installeer de requirements.
$ docker-compose build
$ docker-compose pull
$ pip install pre-commit # Just needed once for your laptop.

2) Maak een database aan
It uses a database within docker-compose. TODO: add celery/redis.

3) Makemigrations, migrate, createsuperuser
Some instructions:

4) Start een redis server lokaal
$ docker-compose up # Starts the site on localhost:8000
$ docker-compose run --rm web pytest
$ docker-compose run --rm web python manage.py migrate
$ pre-commit run --all # runs the formatter, checks, etc.

5) start de django applicatie: python manage.py runserver
Do the regular migrate, createsuperuser stuff.

6) start celery op: celery -A bro_hub worker -l INFO -P solo
TODO: start celery automatically (`celery -A bro_hub worker -l INFO -P solo`)

7) Maak een organisatie, vul de KvK in

8) Maak een user profile aan voor de superuser, en vul het project en evt bro authenticatie in

9) De bro auth gegevens worden geencrypt. Hiervoor is een FIELD_ENCRYPTION_KEY nodig. Om deze aan te maken, run hetvolgende:

$ import os
import base64

new_key = base64.urlsafe_b64encode(os.urandom(32))
print(new_key)

Sla de key (zonder de b'' bytes structuur) op in een .env.


Nu kan het product gebruikt worden.

Installatie frontend (temp strealit)
--------------------
Start the frontend with:

$ streamlit run streamlit/Home.py
2 changes: 0 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -42,5 +42,3 @@ release = false

[tool.pyright]
include = ["bro_hub", "api", "gmn", "gmw"]
venvPath = "."
venv = ".venv"

0 comments on commit 1be6d95

Please sign in to comment.