Skip to content

✅ Todo-Rest-API with Django, DRF, Postgresql. Google Auth. TDD. GitHub Actions. Next.js 13 Frontend.

License

Notifications You must be signed in to change notification settings

matiasvallejosdev/todo-rest-api-django

Repository files navigation

✅ Minimalist Todo Django REST API

GitHub top language License Forks Stars Watchers

🚀 Experience Minimalist in action: View Production

📘 Introduction

Welcome to the Minimalist Todo Django REST API repository, a backend solution designed for efficient task management. This project was built using Python and the Django REST Framework, catering to applications that require high-performance task handling capabilities.

✨ Key Features

  • Social Authentication: Utilizes dj-rest-auth, allauth, and JWT to enable users to authenticate via Google accounts.
  • Task Management: Provides endpoints to manage tasks, including creating, reading, updating, and deleting tasks.
  • Test Driven Development (TDD): Ensures the codebase is thoroughly tested using Django tests and follows TDD principles.
  • MySQL Database: Integrates with MySQL for data storage, ensuring robust and scalable data management.

🧑🏻‍💻 Frontend Repository

For the frontend part of this project, the Next.js 14 application can be found in the following repository: Minimalist Todo App Next.js.

🛠 Installation

To run Todo-Rest-API locally or in your own server, follow these steps:

  1. Clone this repository: git clone https://github.com/matiavallejosdev/todo-rest-api.git
  2. Install the required dependencies: pip install -r requirements.txt
  3. Configure the MySQL database settings in settings.py.
  4. Perform database migrations: python manage.py migrate
  5. Start the development server: python manage.py runserver

📃 API Documentation

The API endpoints and their usage are documented using Swagger. Once the development server is running, you can access the API documentation by navigating to http://localhost:8000/swagger/ in your web browser.

💡 Usage

  1. Visit the deployed app in your browser.
  2. Log in with Google via NextAuth.
  3. Manage your tasks efficiently.

🧪 Running Tests

To run the unit tests for the application, execute the following command:

python manage.py test

🤝 Contributing

The Minimalist Todo App Next.js is an open-source project, and contributions are welcome. Feel free to fork the repository, make your changes, and submit a pull request.

📞 Contact

If you have any questions or need further assistance, you can contact the project maintainer:

Feel free to reach out if you have any inquiries or need any additional information about the project.

📄 License

This project is open source and available under the MIT License.

Releases

No releases published

Packages

No packages published