Skip to content

EmilyCDOGuimaraes/dio-fastapi-transactions-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Learning project based on a Digital Innovation One (DIO) challenge.

FastAPI Transactions API

English

This project is a learning-focused REST API built with FastAPI, simulating basic banking operations such as account creation and financial transactions (deposits and withdrawals).

The implementation was developed on top of the official Digital Innovation One (DIO) challenge starter repository. The base structure was provided by DIO, and the project was extended, tested, and adapted for learning purposes.

Features

  • Account creation and listing
  • Financial transactions (deposit and withdrawal)
  • Balance validation (prevents negative balances)
  • JWT-based authentication
  • Asynchronous database operations
  • Automatic API documentation with OpenAPI (Swagger)

Tech Stack

  • Python
  • FastAPI
  • SQLAlchemy
  • Databases
  • SQLite
  • Alembic
  • JWT Authentication

Running the project

Start the API with:

uvicorn src.main:app --reload

Access:

Note

This project uses the DIO challenge repository as a starting base.
https://github.com/digitalinnovationone/trilha-python-dio/tree/main/13%20-%20APIs%20Assíncronas%20com%20FastAPI/desafio

The goal is learning and understanding backend architecture, not claiming original system design.


Português

Este projeto é uma API REST com foco educacional, desenvolvida com FastAPI, que simula operações bancárias básicas como criação de contas e transações financeiras (depósitos e saques).

A implementação foi construída a partir do repositório base do desafio da Digital Innovation One (DIO). A estrutura inicial foi fornecida pela DIO, e o projeto foi adaptado, testado e estendido com fins de aprendizado.

Funcionalidades

  • Criação e listagem de contas
  • Transações financeiras (depósito e saque)
  • Validação de saldo (impede saldo negativo)
  • Autenticação com JWT
  • Operações assíncronas com banco de dados
  • Documentação automática com OpenAPI (Swagger)

Tecnologias

  • Python
  • FastAPI
  • SQLAlchemy
  • Databases
  • SQLite
  • Alembic
  • Autenticação JWT

Executando o projeto

Inicie a API com:

uvicorn src.main:app --reload

Acesso:

Observação

Este projeto utiliza o repositório do desafio da DIO como base inicial.
https://github.com/digitalinnovationone/trilha-python-dio/tree/main/13%20-%20APIs%20Assíncronas%20com%20FastAPI/desafio

O objetivo é aprendizado e prática de desenvolvimento backend.

Projeto desenvolvido exclusivamente para fins de estudo.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors