A unified academic networking platform connecting Ethiopian university communities through knowledge sharing, Q&A, and collaboration.
# UNIPIA — Inter-University Academic Network Platform
UNIPIA is an inter-university academic collaboration platform designed to connect university students, researchers, and academic staff across institutions. The platform facilitates peer-to-peer Q&A, course study groups, verified academic profiles, and reputation tracking.
---
## 🛠️ Technology Stack
### Backend
- **Framework**: Python 3.11+ / Django 5.0+
- **API Engine**: Django REST Framework (DRF) 3.15+
- **Authentication**: SimpleJWT (JSON Web Tokens with rotation)
- **Database**: MySQL 8.0+ (PyMySQL driver)
- **CORS & Filters**: `django-cors-headers`, `django-filter`
- **Environment**: `python-dotenv`
### Frontend
- **Framework**: React 19 + Vite 8
- **State & Data Fetching**: TanStack Query (React Query v5)
- **Routing**: React Router DOM v7
- **HTTP Client**: Axios (Centralized API Client with JWT interceptors)
- **Styling**: Tailwind CSS v4
- **Icons & Animations**: Lucide React, Framer Motion
- **Form Management**: React Hook Form + Zod
---
## 📂 Repository Structure
```
UNIPIA/
├── backend/ # Django REST API Backend
│ ├── config/ # Project settings, URLs, ASGI/WSGI
│ ├── common/ # Shared utils, exception handlers
│ ├── apps/ # Domain-driven Django applications
│ │ ├── accounts/ # User profiles & University model
│ │ ├── questions/ # Questions, Answers & Tags
│ │ ├── groups/ # Study groups, posts & comments
│ │ ├── notifications/ # User notification system
│ │ ├── reputation/ # Point tracking & voting history
│ │ └── moderation/ # Content flagging & reports
│ ├── .env.example # Backend environment blueprint
│ ├── manage.py # Django management CLI
│ └── requirements.txt # Python dependencies
├── frontend/ # React + Vite Frontend Application
│ ├── src/
│ │ ├── api/ # Centralized Axios client
│ │ ├── com …