Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TaskFlow API

Présentation

TaskFlow est une API REST développée avec Django et Django REST Framework permettant la gestion collaborative de tâches pour de petites équipes.

L'application permet de :

  • gérer les membres ;
  • gérer les équipes ;
  • gérer les projets ;
  • gérer les tâches ;
  • ajouter des commentaires sur les tâches.

Cette API a été réalisée dans le cadre du projet de rattrapage de Développement Web.


Technologies utilisées

  • Python 3.14
  • Django 6.0.7
  • Django REST Framework 3.17.1
  • django-filter
  • SQLite

Installation

Cloner le projet :

git clone <url_du_depot>

Se placer dans le dossier du projet :

cd Taskflow

Créer un environnement virtuel :

python -m venv .venv

Activer l'environnement virtuel :

Windows

.venv\Scripts\activate

Installer les dépendances :

pip install -r requirements.txt

Base de données

Appliquer les migrations :

python manage.py migrate

Créer un superutilisateur (optionnel) :

python manage.py createsuperuser

Lancement du serveur

python manage.py runserver

L'API sera disponible à l'adresse :

http://127.0.0.1:8000/api/

L'administration Django est accessible via :

http://127.0.0.1:8000/admin/

Endpoints principaux

Members

  • GET /api/members/
  • POST /api/members/
  • GET /api/members/{id}/
  • PUT /api/members/{id}/
  • DELETE /api/members/{id}/

Teams

  • GET /api/teams/
  • POST /api/teams/
  • GET /api/teams/{id}/
  • PUT /api/teams/{id}/
  • DELETE /api/teams/{id}/
  • POST /api/teams/{id}/members/
  • DELETE /api/teams/{id}/members/{member_id}/

Projects

  • GET /api/projects/
  • POST /api/projects/
  • GET /api/projects/{id}/
  • PUT /api/projects/{id}/
  • DELETE /api/projects/{id}/

Tasks

  • GET /api/tasks/
  • POST /api/tasks/
  • GET /api/tasks/{id}/
  • PUT /api/tasks/{id}/
  • PATCH /api/tasks/{id}/
  • DELETE /api/tasks/{id}/

Filtrage disponible :

  • statut
  • priorite
  • assigne

Exemple :

/api/tasks/?statut=en_cours&priorite=haute

Comments

  • GET /api/tasks/{id}/comments/
  • POST /api/tasks/{id}/comments/
  • DELETE /api/comments/{id}/

Fonctionnalités

  • API REST complète
  • Relations entre les entités
  • Validation métier des tâches
  • Pagination des tâches
  • Filtrage des tâches
  • Gestion des erreurs HTTP
  • Interface Browsable API de Django REST Framework

About

API de gestion de tache avec django rest framework

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages