An open API service indexing awesome lists of open source software.

https://github.com/rodrigo-kelven/api_library

A Api Library é uma API Library projetada para facilitar a integração de diferentes serviços e plataformas, permitindo que desenvolvedores criem soluções robustas e escaláveis. Com uma arquitetura modular e flexível, a Api Library oferece uma ampla gama de funcionalidades para gerenciar dados.
https://github.com/rodrigo-kelven/api_library

fastapi graphql postgresql python3 redis sqlalchemy

Last synced: 3 months ago
JSON representation

A Api Library é uma API Library projetada para facilitar a integração de diferentes serviços e plataformas, permitindo que desenvolvedores criem soluções robustas e escaláveis. Com uma arquitetura modular e flexível, a Api Library oferece uma ampla gama de funcionalidades para gerenciar dados.

Awesome Lists containing this project

README

          

# API Library
![Python](https://img.shields.io/badge/python-3670A0?style=for-the-badge&logo=python&logoColor=ffdd54)
![FastAPI](https://img.shields.io/badge/FastAPI-%23FF4F00.svg?style=for-the-badge&logo=fastapi&logoColor=white)
![GraphQL](https://img.shields.io/badge/GraphQL-%23E10098.svg?style=for-the-badge&logo=graphql&logoColor=white)
![SQLAlchemy](https://img.shields.io/badge/SQLAlchemy-%23C72C41.svg?style=for-the-badge&logo=sqlalchemy&logoColor=white)
![Redis](https://img.shields.io/badge/redis-%23DD0031.svg?style=for-the-badge&logo=redis&logoColor=white)
![Postgres](https://img.shields.io/badge/postgres-%23316192.svg?style=for-the-badge&logo=postgresql&logoColor=white)
![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge&logo=docker&logoColor=white)

# Versao 1.1.15

![Minha Imagem](images/Library.png)

## Descrição

### A Api Library é uma API Library projetada para facilitar a integração de diferentes serviços e plataformas, permitindo que desenvolvedores criem soluções robustas e escaláveis. Com uma arquitetura modular e flexível, a Api Library oferece uma ampla gama de funcionalidades para gerenciar dados, realizar autenticação, processar pagamentos e muito mais.
## Recursos Principais

- Autenticação e Autorização: Implemente autenticação OAuth e JWT para proteger suas aplicações.
- Gerenciamento de Dados: Acesse e manipule dados de forma eficiente com nossas APIs de CRUD.
- Processamento de Pagamentos: Integre facilmente gateways de pagamento para transações seguras.
- Notificações e Mensagens: Envie notificações push e e-mails personalizados aos usuários.
- Análise e Monitoramento: Acompanhe o desempenho da sua aplicação com métricas detalhadas.

## Stacks Utilizadas
### Este projeto foi desenvolvido utilizando as seguintes tecnologias:

### 🐍 Python - FastAPI
- **Descrição**: FastAPI é um framework moderno e rápido para construir APIs com Python 3.6+ baseado em padrões como Python type hints.
- **Vantagens**: Alto desempenho, fácil de usar e suporte a validação automática de dados.

### ⚛️ React - Frontend
- **Descrição**: React é uma biblioteca JavaScript para construir interfaces de usuário. Permite a criação de componentes reutilizáveis e uma experiência de usuário interativa.
- **Vantagens**: Grande comunidade, ecossistema rico e fácil integração com outras bibliotecas.

### 🗄️ SQLAlchemy - ORM
- **Descrição**: SQLAlchemy é uma biblioteca SQL e ORM (Object Relational Mapper) para Python, que facilita a interação com bancos de dados relacionais.
- **Vantagens**: Flexibilidade, suporte a múltiplos bancos de dados e abstração de SQL.

### 🐘 PostgreSQL - Banco de Dados
- **Descrição**: PostgreSQL é um sistema de gerenciamento de banco de dados relacional e objeto-relacional, conhecido por sua robustez e suporte a extensões.
- **Vantagens**: Alta performance, suporte a transações complexas e conformidade com padrões SQL.

### 🗄️ Redis - Banco de Dados Caching
- **Descrição**: Redis é um armazenamento de estrutura de dados em memória, usado como banco de dados, cache e broker de mensagens.
- **Vantagens**: Alta performance, persistência de dados e suporte a várias estruturas de dados.

### 📊 GraphQL
- **Descrição**: GraphQL é uma linguagem de consulta para APIs e um runtime para executar essas consultas com seus dados existentes.
- **Vantagens**: Flexibilidade na consulta de dados, redução de sobrecarga de rede e forte tipagem.

## Instalação

Instale o projeto

```bash
git clone https://github.com/Rodrigo-Kelven/Api_Books/
cd Api_Books/src
```
Para rodar o projeto, rode o seguinte comando

```bash
docker-compose up
```

Instale as dependências para rodar o Frontend

```bash
npm install
```

Instale e ative uma venv (Opcional).

```bash
python3 -m venv venv
Linux: source venv/bin/activate
Windows: .\venv\Scripts\activate
```

## Contribuições
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues ou pull requests para adicionar novos algoritmos, corrigir erros ou melhorar a documentação. :)

## Autor

- [@Rodrigo-Kelven](https://github.com/Rodrigo-Kelven)
- [@Wesley Thiago](https://github.com/Wesley0071)
- [@Nicolas Marcuse](https://github.com/N1kkoo)