GeoAuth Plugin Project
DRF GeoData API

Project Overview
A powerful Django REST API that provides real-time visitor and location intelligence using the IP2Location LITE database. It retrieves IP addresses, extracts detailed device information (browser, OS, device type), and fetches geo-location data including country, city, latitude, and longitude. It also offers country-level insights such as official languages, time zones, and currency — ideal for personalization and analytics use cases. 👉 Try the live API endpoint here: https://drf-geodata.onrender.com/ip/
- Integrating IP2Location database for accurate geo-location data
- Extracting detailed device information from HTTP requests
- Providing comprehensive country-level insights
- Ensuring fast response times for real-time applications
- Implemented efficient database lookups for IP2Location data
- Created custom middleware to extract and parse user agent information
- Built a country information service with caching for performance
- Optimized API responses with serialization and pagination
Technology Stack
Python
Primary programming language
Django
Web framework for rapid development
Django REST Framework
API toolkit for Django
IP2Location
Geo-location database
Redis
In-memory data store for caching
User-Agents
User agent parsing library
Project Metrics
API Endpoints
Total number of API endpoints
Response Time
Average response time
Accuracy
Geo-location accuracy
Cache Hit Rate
Redis cache efficiency
Development Timeline
Initial planning and requirements gathering
Implementing geo-location database
Adding user agent parsing
Implementing Redis caching
Performance tuning and documentation
System Architecture
IP Detection Service
Extracts and validates visitor IP addresses
Device Information Service
Parses user agent for browser, OS, and device details
Geo-Location Service
Provides location data based on IP address
Country Information Service
Offers additional country-level insights
System Architecture Diagram: Visual representation of the project's components and data flow