The NFTopia Analytics Service is a Django-powered microservice that processes and visualizes platform analytics data. Running on port 9002, it provides actionable insights for NFT trading, user behavior, and market trends.
View Swagger Docs | Grafana Dashboard
- Real-time Data Processing:
- 📊 NFT trading volume analytics
- 👥 User engagement metrics
- 📈 Market trend analysis
- Custom Reports:
- Collection performance
- Creator royalty tracking
- Gas fee optimization insights
- Data Export: CSV/JSON endpoints for all datasets
- Anomaly Detection: AI-powered unusual activity alerts
| Component | Technology |
|---|---|
| Framework | Django 4.2 + Django REST Framework |
| Database | PostgreSQL + TimescaleDB (for time-series) |
| Visualization | Grafana |
| Analytics Engine | Pandas + NumPy |
| Event Processing | Apache Kafka |
- Python 3.10+
- PostgreSQL 14+
- TimescaleDB extension
- Kafka broker
- Clone the repo:
git clone https://github.com/NFTopia-Foundation/nftopia-analytics-service.git cd nftopia-analytics-service - Setup virtual environment:
python -m venv ven source venv/bin/activate # Linux/Mac venv\Scripts\activate # Windows
- Install dependencies:
pip install -r requirements.txt
- Configure environment:
cp .env.example .env
- Run migrations:
python manage.py migrate
- Start the service:
python manage.py runserver 9002
- Fork the repository
- Create your feature branch:
git checkout -b feat/your-feature- Commit changes following Conventional Commits
- Push to the branch
- Open a Pull Request