GeoDjango Backend Project is a RESTful API service built with Django REST Framework. It enables transportation providers to define and alter their service areas dynamically as custom polygons.
- ๐ Python
- ๐ต Django REST Framework
- ๐ GeoDjango
- ๐ฑ Celery
- ๐ PostgreSQL
- ๐บ PostGIS
- ๐ฆ Docker
- โ๏ธ AWS (Optional for deployment)
- CRUD operations for Providers and Service Areas
- Efficient querying of service areas by latitude/longitude pair
- Unit tests to ensure API functionality
- Comprehensive API documentation
- Deployed on AWS for real-world testing
- Clone the repo
git clone [email protected]:JuniorGunner/drf_geodjango_api.git
cd drf_geodjango_api
- Setup Environment Variables Create a .env file in the root directory and setup your environment variables. Example:
POSTGRES_USER=postgres
POSTGRES_PASSWORD=yourpassword
POSTGRES_DB=geodjango_db
- Start the project
docker-compose up --build -d
- POST /providers - Add a new provider
- GET /providers - Get all providers
- GET /providers/:id - Get a provider by ID
- PUT /providers/:id - Update a provider by ID
- DELETE /providers/:id - Delete a provider by ID
- POST /service_areas - Add a new service area
- GET /service_areas - Get all service areas
- GET /service_areas/:id - Get a service area by ID
- PUT /service_areas/:id - Update a service area by ID
- DELETE /service_areas/:id - Delete a service area by ID
- GET /service_areas/query?lat=:latitude&lng=:longitude - Query service areas by latitude and longitude