A full-stack, API-first, feature rich insurance platform built with Django (Backend) and Svelte 5 (Frontend). This repository is the project work for the L-31 degree in Digital Enterprise Informatics
The project is divided into two independent macro-components that communicate via a REST API:
- Backend (
backend/): A robust and secure API built with Django and Django REST Framework. It handles business logic, user authentication, and data persistence. - Frontend (
frontend/): A reactive and modern user interface developed with Svelte 5 and SvelteKit. It is compiled as a static site and interacts with the backend in a fully decoupled manner.
To run the project locally, you need to start the backend server and the frontend development server separately.
- Python (version 3.8 or higher)
- Node.js (version 18 or higher)
pipandvenvfor Python package managementnpm(or another package manager likepnpmoryarn)
-
Navigate to the backend directory:
cd backend -
(optional) Create and activate a Python virtual environment:
# On macOS/Linux python3 -m venv .venv source .venv/bin/activate # On Windows python -m venv .venv .\.venv\Scripts\activate
-
Install Python dependencies:
pip install -r requirements.txt
-
Run database migrations: This command will create the
db.sqlite3file with the required data schema.python manage.py migrate
-
(Optional) Create a superuser to access the Django admin panel (
/admin):python manage.py createsuperuser
-
Start the Django development server:
python manage.py runserver
The backend is now running at
http://localhost:8000.
-
Open a new terminal and navigate to the frontend directory:
cd frontend -
Install Node.js dependencies:
npm install
-
Configure environment variables: In the
frontend/folder, you will find a file named.env.example. Rename it to.env:mv .env.example .env
Open the new
.envfile and ensure thePUBLIC_BACKEND_URLvariable points to your local backend server. The default value is already configured for local development.# frontend/.env PUBLIC_BACKEND_URL="http://localhost:8000"
-
Start the SvelteKit development server:
npm run dev
The frontend is now accessible in your browser at
http://localhost:5173.
At this point, the application is fully functional locally. The SvelteKit UI at localhost:5173 will communicate with the Django API at localhost:8000.
This project is licensed. See the LICENSE file for more details.