Code Monkey home page Code Monkey logo

to-do_async_backend_python's Introduction

FastAPI TODO ASYNC API

FastAPI Python SQLAlchemy

API em Produção

A API está disponível para testes em produção no seguinte endereço: https://todo-fastapi-one.vercel.app

Descrição

Esta é uma API de gerenciamento de tarefas (TODO) construída com FastAPI e SQLAlchemy. A API é assíncrona e foi projetada para ser rápida, eficiente e fácil de usar.

Funcionalidades

  • Criar Tarefa: Cria uma nova tarefa.
  • Obter Todas as Tarefas: Recupera todas as tarefas com paginação.
  • Obter Tarefa por ID: Recupera uma tarefa específica pelo seu ID.
  • Atualizar Tarefa: Atualiza uma tarefa existente pelo seu ID.
  • Deletar Tarefa: Deleta uma tarefa pelo seu ID.

Endpoints

Criar Tarefa

  • URL: /api/v1/todos/
  • Método: POST

Obter Todas as Tarefas

  • URL: /api/v1/todos/
  • Método: GET
  • Parâmetros de Query:
    • skip (opcional): Número de registros a serem ignorados (padrão é 0).
    • limit (opcional): Número máximo de registros a serem retornados (padrão é 100).

Obter Tarefa por ID

  • URL: /api/v1/todos/{id}
  • Método: GET

Atualizar Tarefa

  • URL: /api/v1/todos/{id}

  • Método: PUT

    Deletar Tarefa

    • URL: /api/v1/todos/{id}
    • Método: DELETE

    Como Executar o Projeto

    Pré-requisitos

    • Python 3.8+
    • Algum ambiente virtual para gerenciamento de dependências

    Instalação

    1. Clone o repositório: git clone https://github.com/thiagoregueira/to-do_async_backend_python.git cd to-do_async_backend_python

    2. Instale as dependências: pip install -r requirements.txt

    3. Configure as variáveis de ambiente no arquivo .env:

      DB_USER=seu_usuario
      DB_PASSWORD=sua_senha
      DB_HOST=seu_host
      DB_PORT=5432
      DB_NAME=seu_banco_de_dados ```
      
      
    4. Execute as migrações do banco de dados: alembic upgrade head

    5. Inicie o servidor: uvicorn app.main:app --reload

Melhor Práticas

  • Documentação: API utiliza a documentação automática do FastAPI disponível em /docs e /redoc.
  • Validação: API utiliza Pydantic para validação de dados.
  • Segurança: API configura CORS adequadamente e utilize variáveis de ambiente para informações sensíveis.
  • Desempenho: API utiliza conexões assíncronas com o banco de dados para melhorar o desempenho.

Contato

to-do_async_backend_python's People

Contributors

thiagoregueira avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.