{"id":25119165,"url":"https://github.com/hedriss10/banking-platform-project","last_synced_at":"2025-04-22T19:07:39.082Z","repository":{"id":241977277,"uuid":"806199119","full_name":"Hedriss10/Banking-platform-project","owner":"Hedriss10","description":"Plataforma de negociação financeira CRM","archived":false,"fork":false,"pushed_at":"2025-04-21T21:42:05.000Z","size":14750,"stargazers_count":2,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-22T19:07:31.769Z","etag":null,"topics":["flask-api","flask-restful","flask-sqlalchemy","pandas","postgres","psycopg","psycopg2","psycopg2-binary","python3","swagger"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Hedriss10.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-05-26T16:44:31.000Z","updated_at":"2025-04-16T15:38:39.000Z","dependencies_parsed_at":"2024-06-04T02:38:42.843Z","dependency_job_id":"2d132c4d-4134-4fe1-be0a-7de6fd8ec4e4","html_url":"https://github.com/Hedriss10/Banking-platform-project","commit_stats":null,"previous_names":["hedriss10/banking-platform-project"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hedriss10%2FBanking-platform-project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hedriss10%2FBanking-platform-project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hedriss10%2FBanking-platform-project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hedriss10%2FBanking-platform-project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Hedriss10","download_url":"https://codeload.github.com/Hedriss10/Banking-platform-project/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250306639,"owners_count":21408926,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flask-api","flask-restful","flask-sqlalchemy","pandas","postgres","psycopg","psycopg2","psycopg2-binary","python3","swagger"],"created_at":"2025-02-08T04:35:38.566Z","updated_at":"2025-04-22T19:07:39.072Z","avatar_url":"https://github.com/Hedriss10.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Backend Athenas ™️ 🚀\n\nBem-vindo ao **Backend Athenas**, a espinha dorsal da nossa plataforma de CRM! Este projeto foi desenvolvido com foco em eficiência, segurança e escalabilidade, utilizando tecnologias modernas e boas práticas de desenvolvimento.\n\n---\n\n## 📚 Introdução ao Swagger\n\n**Descrição**:  \nDesenvolvemos endpoints robustos e seguros, utilizando `Flask-JWT-Extended` para garantir a autenticação e proteção dos dados. A documentação completa da API está disponível via **Swagger**, facilitando a integração e o entendimento dos recursos disponíveis.\n\n---\n\n## 🛠️ Tecnologias Utilizadas\n\nAqui estão as principais tecnologias que alimentam o **Backend Athenas**:\n\n- **Flask** 🐍: Leve e poderoso, ideal para APIs rápidas e escaláveis.\n- **Flask-RESTx** 🔧: Facilita a criação de APIs RESTful com suporte a Swagger.\n- **Pandas** 🐼: Para manipulação eficiente de dados.\n- **Gunicorn** 🦄: Servidor WSGI para produção.\n- **Docker** 🐳: Containerização para fácil deploy e escalabilidade.\n\n**Descrição**:  \nEssas ferramentas foram escolhidas a dedo para garantir um desenvolvimento ágil e uma infraestrutura robusta. Ao instalar as dependências, outras bibliotecas podem ser incluídas automaticamente no arquivo `.env`.\n\n---\n\n## 📌 Índice\n\n- [Instalação](#-instalação)\n- [Configuração](#-configuração)\n- [Uso](#-uso)\n- [Tomada de Decisão](#-tomada-de-decisão)\n- [Objetivo](#-objetivo)\n\n---\n\n## 🛠️ Instalação\n\nSiga os passos abaixo para configurar o projeto localmente:\n\n1. **Clone o repositório**:\n    ```bash\n    git clone https://github.com/Hedriss10/Banking-platform-project.git\n    ```\n\n2. **Navegue até o diretório do projeto**:\n    ```bash\n    cd banking-platform-project\n    ```\n\n3. **Crie um ambiente virtual**:\n    ```bash\n    python3 -m venv venv\n    ```\n\n4. **Ative o ambiente virtual**:\n    - **macOS/Linux**:\n        ```bash\n        source venv/bin/activate\n        ```\n    - **Windows**:\n        ```bash\n        .\\venv\\Scripts\\activate\n        ```\n\n5. **Instale as dependências**:\n    ```bash\n    pip install -r requirements.txt\n    ```\n\n---\n\n## 🐳 Docker\n\n### Desenvolvimento\n\n**Gerar a imagem**:\n```bash\ndocker buildx build --platform linux/arm64,linux/amd64 -f Dockerfile -t platform-athenas --load .\n```\n\n**Salvar imagem de desenvolvimento**:\n```bash\ndocker save -o platform-athenas-app.tar platform-athenas \n```\n\n**Executar o container**:\n```bash\ndocker run --rm -it -p 5001:5001 platform-athenas\n```\n\n### Produção\n\n**Gerar a imagem de produção**:\n```bash\ndocker buildx build --platform linux/amd64 -f Dockerfile.prd -t platform-athenas:prd --load .\n```\n\n**Salvar imagem de produção**:\n```bash\ndocker save -o platform-athenas-prd.tar platform-athenas:prd\n```\n\n### Comandos Úteis\n\n**Compactar o projeto**:\n```bash\ntar --exclude=\".DS_Store\" --exclude=\"__MACOSX\" -czvf platform-athenas.tar src .gitignore Dockerfile.dev docker-compose.yml manage.py\n```\n\n**Executar o build com Docker Compose**:\n```bash\ndocker-compose up --build\n```\n\n---\n\n## ⚙️ Configuração\n\n1. **Crie um arquivo `.env`** na raiz do projeto e adicione as seguintes variáveis de ambiente:\n    ```env\n    FLASK_APP=app.py\n    FLASK_ENV=development\n    JWT_SECRET_KEY=your_secret_key\n    ```\n\n---\n\n## 🚀 Uso\n\n**Como rodar o projeto**:\n\n1. **Inicie o servidor Flask**:\n    ```bash\n    flask run\n    ```\n\n2. **Acesse a documentação Swagger**:\n    ```\n    http://127.0.0.1:5000/docs\n    ```\n\n**Executando com Gunicorn**:\n```bash\ngunicorn -w 4 -b 0.0.0.0:5001 'src.app:create_app()'\n```\n\n---\n\n## 🤔 Tomada de Decisão\n\nApós uma análise detalhada das necessidades da empresa, optamos por desenvolver um **CRM básico** totalmente personalizado. Inicialmente, consideramos o uso de `Django`, mas devido à sua natureza \"pesada\" com muitas libs desnecessárias, escolhemos o **Flask** por sua flexibilidade e leveza.\n\n**Estrutura de Conexão**:\n\nA decisão de utilizar `Flask` permitiu um controle maior sobre o processo e a adoção de boas práticas de servidor, mesmo em um ambiente local.\n\n---\n\n## 🎯 Objetivo\n\n**Descrição**:  \nO **Backend Athenas** foi criado para garantir a **persistência de dados** na empresa, conectando setores de forma ágil e sem perda de informações. Nosso objetivo é proporcionar uma comunicação eficiente entre os setores, garantindo que todos os dados estejam sempre disponíveis e seguros.\n\n---\n\nAutor -\u003e Hedris Pereira | **Backend Athenas ™️**  \n🚀 **Inovação e Eficiência em cada linha de código.**\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhedriss10%2Fbanking-platform-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhedriss10%2Fbanking-platform-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhedriss10%2Fbanking-platform-project/lists"}