A functional full-stack web application that allows users to calculate astrological match compatibility profiles (Ashta Koota system) between two individuals based on their birth parameters.
This project uses a decoupled architectural design split into two clear micro-services:
- Backend (Django REST Framework): Manages historical calculation data models, handles core validation, and evaluates the composite alignment matrix.
- Frontend (React.js + Bootstrap): A responsive, high-contrast cosmic workspace dashboard built with strict layout spacing, accessibility contrast safety, and smooth view animations.
Because the primary evaluation focus centers on API structural engineering rather than absolute astronomical precision, the following foundational choices were implemented:
- The Ashta Koota Points System: The system breaks down matches into 8 distinct parameters (Varna, Vashya, Tara, Yoni, Graha Maitri, Gana, Bhakoot, and Nadi) totaling a maximum of 36 computational points.
- Algorithmic Simulation: The matching matrix computes categorical allocations programmatically mapping coordinate positions to mock lunar mansions (Bakshatras) to build a consistent deterministic output distribution model.
- Geographic Input Integrity: External geocoding coordinates lookup is handled entirely on the client-side, keeping the backend API clean and lightweight, requiring only numbers (
latitude/longitude) and strings (date_of_birth/birth_time).
Ensure you have Python 3.8+ installed locally.
# Navigate to backend environment setup
python -m venv venv
source venv/bin/activate # On Windows use: venv\Scripts\activate
# Install package modules
pip install -r requirements.txt
# Run database migrations and start server
python manage.py migrate
python manage.py runserver