Usman-bin-Khalid /
Django-Rest-APIs-Complete-Course
A complete Django REST Framework (DRF) course repository with examples of models, views, serializers, CRUD APIs, authentication, and real-world projects.
61/100 healthLoading repository data…
lucasaaarruda / repository
REST API com Django para cadastro e gestão de clientes — autenticação JWT, paginação e filtros avançados
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Este projeto foi desenvolvido como parte de um curso de Django Rest Framework oferecido pela Alura. Ele implementa uma API completa para a gestão de clientes, aplicando conceitos como paginação, validação, filtros, buscas e ordenação de endpoints. O deploy da API foi feito na AWS, garantindo que o serviço esteja disponível online.
A API-Cliente permite a criação e manipulação de registros de clientes, incluindo informações como CPF, RG, celular, entre outros dados essenciais. A API foi desenvolvida para seguir as melhores práticas de arquitetura de projetos utilizando Django Rest Framework e inclui funcionalidades como:
O deploy foi realizado na AWS, garantindo que a API esteja disponível de maneira contínua.
Além das principais ferramentas citadas, outras bibliotecas podem ser encontradas no arquivo requirements.txt.
Clone o Repositório:
git clone https://github.com/seu-usuario/api-cliente
Instale as Dependências:
Certifique-se de instalar todas as dependências listadas no arquivo requirements.txt:
pip install -r requirements.txt
Execute as Migrações:
Para criar o banco de dados e aplicar as migrações necessárias, execute:
python manage.py migrate
Inicie o Servidor:
Para rodar a API localmente, utilize o comando:
python manage.py runserver
A API estará disponível em http://localhost:8000.
A API está hospedada na AWS, garantindo sua disponibilidade constante.
Este projeto está aberto para melhorias e novas funcionalidades. Se você tiver sugestões ou encontrar problemas, sinta-se à vontade para abrir uma issue ou enviar um pull request.
Para mais informações ou dúvidas, entre em contato:
Obrigado por conferir o projeto! Sinta-se à vontade para contribuir e ajudar a melhorar a API.
Selected from shared topics, language and repository description—not editorial ratings.
Usman-bin-Khalid /
A complete Django REST Framework (DRF) course repository with examples of models, views, serializers, CRUD APIs, authentication, and real-world projects.
61/100 healthpedrovergueiro /
API REST completa com FastAPI - CRUD | Autenticação JWT | PostgreSQL | Testes Automatizados | Python Backend
54/100 healthDevMo7md /
E-Commerce API— A fully functional e-commerce backend built with Python and Django,featuring a robust REST API. It includes complete product management (CRUD), user authentication with email verification, a shopping cart and checkout flow, media handling for product images, order tracking with delivery service integration,and secure online payments
34/100 healthcheikhkeydi /
Enoncé du Mini-Projet Mini-projet à réaliser et à rendre à deux Comptera à 50% dans votre note finale. Dans le cadre de ce mini-projet vous allez devoir réaliser toute la spécification d'une API ReST dans un premier temps, puis le développement de cette API dans un second temps Le besoin Vous souhaitez proposer à vos utilisateurs une API qui permettra de gérer le fonctionnement d'une messagerie instantanée type Discord Sur cette messagerie, un Utilisateur doit pouvoir : S'inscrire sur n'importe quel serveur (les serveurs sont ouverts à tous les utilisateurs) Quitter un serveur Créer un serveur (il en devient administrateur) Poster un message sur un channel d'un des serveurs sur lesquels il est inscrit Editer ou supprimer un message qu'il a lui même posté Voir les messages de tous les utilisateurs sur chacun des channels auxquels il a accès Un Administrateur est un Utilisateur un peu spécial, possédant un plus haut niveau de permissions sur un ou plusieurs serveurs. En plus des actions d'un Utilisateur, il peut aussi : Editer et supprimer un serveur sur lequel il est administrateur Créer, éditer et supprimer un channel (sur un serveur sur lequel il est administrateur) Désinscrire un utilisateur d'un serveur (sur lequel il est administrateur) Supprimer tout message de n'importe quel utilisateur (y compris d'un autre administrateur) sur un serveur sur lequel il est administrateur Enfin, un administrateur peut aussi nommer administrateur un autre utilisateur inscrit sur un serveur sur lequel il est administrateur L'objectif de votre API est de permettre à vos partenaires de développer des clients pouvant être des clients légers, des Progressive Web App ou des clients lourds. Votre API sera un CRUD tournant autour des notions d'utilisateurs, administrateurs, serveurs, channels et messages. 1ère étape - Spécifications (8 points) Vous allez commencer par créer la spécification de cette API, et plus précisément : Toute la description des ressources et des end-points nécessaires La documentation complète de l'API Vous ferez ce travail au format OpenAPI et utiliserez l'éditeur OpenAPI de votre choix (Swagger, Stoplight, Apibldr, ...). L'API que vous définirez doit couvrir tous les besoins basiques de la messagerie instantanée. De plus, il est souhaité que votre API soit HATEOAS (niveau 3 du modèle de Maturité de Richardson). Vous êtes libre d'utiliser ou non un format normé de réponse (JSON-LD, HAL, JSON-API etc ...), la note ne tiendra pas compte de ce choix. La pertinence des choix de conception que vous ferez sera cependant prise en compte dans la note. Enfin, vous devrez documenter autant que possible chaque fonctionnalité, chaque end-point, l'objectif étant que cette documentation soit totalement suffisante pour vos utilisateurs pour exploiter l'intégralité des fonctionnalités de votre API. Cette documentation devrait aussi permettre à quelqu'un qui souhaiterait implémenter votre API de pouvoir le faire. 2ème étape - Sécurité (4 points) En plus du travail de spécification à réaliser, vous rédigerez également un document de sécurité détaillant tout ce qu'il faudra/faudrait mettre en place (d'un point de vue technique) pour répondre au mieux aux besoins suivant : L'accès à votre API sera gratuit, chaque utilisateur utilisant votre messagerie instantanée communiquera avec votre API, il faudra obligatoirement authentifier les utilisateurs. Et une fois l'utilisateur authentifié, il faudra s'assurer qu'il a bien les autorisations nécessaires pour effectuer l'action intentée. Une utilisateur n'ayant pas la permission de réaliser une action devra recevoir un code HTTP approprié. Vous ne voulez pas qu'un utilisateur puisse flooder un serveur. Que faire pour garder le contrôle ? L'API doit être robuste aux principales failles du top 10 API OWASP. Les attaques de type injection (SQL, XSS etc) ne doivent notamment pas réussir. Vous expliquerez au mieux ce qui vous semble le plus pertinent à mettre en place pour répondre à tous ces besoins, en vous appuyant sur les solutions vues en cours ainsi que sur vos recherches. Vous expliquerez aussi les limites de ces solutions. 3ème étape - Mise en œuvre (8 points) Dans la mesure du possible, vous tenterez de réaliser une mise en œuvre de l'API que vous venez de spécifier. Il est vous est conseillé de développer votre API avec Node.js, même si vous restez libres de choisir une autre technologie (Java, PHP, Python, ...). Si vous ne choisissez pas Node.js, vous expliquerez les raisons de votre choix. Vous pouvez vous inspirer de ce tuto pour débuter votre API : https://practicalprogramming.fr/node-js-api Vous devrez aussi créer une base de données dans une technologie adaptée au langage que vous avez choisi. Vous pouvez par exemple utiliser le service cloud MongoDB Atlas si vous développez votre API avec Node.js, votre base de données sera ainsi déjà hébergée. L'objectif est dans un premier temps d'avoir une API pleinement fonctionnelle et conforme à vos spécifications. Ensuite vous tenterez d'appliquer les solutions en terme de sécurité que vous avez évoquées à l'étape précédente. Vous êtes libres d'utiliser les frameworks et/ou librairies de votre choix. Vous trouverez de l'aide sur les middlewares à utiliser avec Node.js et Express pour gérer les token sur cette page : https://developer.okta.com/blog/2019/02/14/modern-token-authentication-in-node-with-express Vous déposerez votre code complet sur un repository public de gitHub et vous expliquerez dans le readme de ce repository toutes les étapes à réaliser pour récupérer votre code et le faire fonctionner en local. L'API doit pouvoir être redéployée et fonctionnelle en suivant ces indications. Objectif : en s'appuyant sur votre spécification, et en utilisant Postman, toutes les opérations du CRUD doivent être réalisables sur votre API une fois celle-ci déployée Il ne vous est pas demandé de développer un CLIENT à votre API. Si vous n'arrivez pas à tout coder, et que vous procédez à des simplifications, vous expliquerez les différences entre la spécification et le développement. Rendu du projet Vous déposerez sur Moodle une archive zip au nom du binôme, contenant les éléments suivant : Un export de la spécification de votre API au format OpenAPI (format JSON ou YAML) Un fichier texte readme.txt contenant l'URL vers le repository gitHub contenant le code de votre API Le fichier de sécurité expliquant les choses à mettre en place d'un point de vue de la sécurité (.doc, .pdf, .ppt, ...)
27/100 healthSehrAQureshi /
Flask-based RESTful E-Commerce API with user authentication, product, cart, and order management.
41/100 healthmakrand2222 /
This repository contains a Python proof of concept (POC) using the Django framework. It demonstrates key features like a modular app structure, RESTful APIs with Django REST framework, user authentication, CRUD operations, template rendering, and SQLite integration. Includes unit and integration tests. Contributions are welcome!
27/100 health