This Django project provides a backend API for an application that helps users locate accessible shops and restaurants in New York City.
nycmaps/: Main project directorynycmaps/: Project settingssettings.py: Django settings fileurls.py: Main URL configuration
places/: App directorymodels.py: DefinesPlaceandAccessibilityFeaturemodelsviews.py: Contains ViewSets for API endpointsserializers.py: Serializers for converting model instances to JSONurls.py: URL patterns for the places appadmin.py: Admin interface configuration
- REST API for accessible places and their features
- Django Admin interface for managing data
- Pagination support
-
Clone the repository:
git clone <repository-url> cd nycmaps -
Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate # On Windows, use `venv\Scripts\activate` -
Install the required packages:
pip install -r requirements.txt -
Apply database migrations:
python manage.py migrate -
Create a superuser for the admin interface:
python manage.py createsuperuser -
Run the development server:
python manage.py runserver -
Access the API at
http://127.0.0.1:8000/api/and the admin interface athttp://127.0.0.1:8000/admin/
/api/places/: List and create places/api/places/<id>/: Retrieve, update, or delete a specific place/api/accessibility-features/: List and create accessibility features/api/accessibility-features/<id>/: Retrieve, update, or delete a specific accessibility feature
Place: Represents a shop or restaurant with accessibility informationAccessibilityFeature: Represents a specific accessibility feature that can be associated with places
- Implement user authentication
- Add filtering and search functionality to the API
- Create frontend application to consume the API
- Implement data population strategy for shops and restaurants
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE.md file for details.