dashboard/docs/HACKING.md

85 lines
1.2 KiB
Markdown
Raw Normal View History

2022-06-05 23:07:15 +00:00
# Development Setup
## Development Dependencies
1. Python `3.10.4`
2. Pip
3. Virtualenv
4. GNU make
5. PostgreSQL
6. (Optionally) Docker: used to spin up PostgreSQL instance
## Setup
1. Clone the project
```bash
git clone https://gitea.hostea.org/Hostea/dashboard.git && cd dashboard
```
2. Create `virtualenv` and activate environment
```bash
virtualenv venv && source venv/bin/activate
```
4. Setup local configuration:
i) Initialize configuration file by copying `.env-sample`
```bash
cp .env-sample .env
```
ii) Modify the contents of `.env`:
```bash
export DATABSE_URL=postgres://postgres:password@localhost:5432/postgres
export db=hostea-dashboard
```
iii) Load environment
```bash
source .env
```
3. Setup PostgreSQL
_We are using Docker but you are welcome to bring your own PostgreSQL
instance_
```bash
docker create --name $db \
-e POSTGRES_PASSWORD=password \
-p 5432:5432 \
postgres && \
docker start $db
```
4. Install Dependencies
```bash
make env
```
5. Apply database migrations
```bash
make migrate
```
6. Create superuesr
```bash
python manage.py createsuperuser
```
And provide information requested
7. Launch development server
```bash
make
```