{"id":25615314,"url":"https://github.com/eneas-almeida/bestore","last_synced_at":"2026-05-09T07:01:32.471Z","repository":{"id":47531116,"uuid":"388941630","full_name":"eneas-almeida/bestore","owner":"eneas-almeida","description":"📜 Bestore é uma aplicação para venda de produtos em geral.  Api Rest em Java com Spring Boot, com base em uma arquitetura Feature by Package.","archived":false,"fork":false,"pushed_at":"2023-02-10T01:54:48.000Z","size":2621,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-22T03:19:15.249Z","etag":null,"topics":["docker","java","mysql","spring-boot"],"latest_commit_sha":null,"homepage":"https://github.com/venzel/bestore","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eneas-almeida.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}},"created_at":"2021-07-23T22:29:42.000Z","updated_at":"2025-02-15T00:37:45.000Z","dependencies_parsed_at":"2025-01-18T03:38:14.735Z","dependency_job_id":null,"html_url":"https://github.com/eneas-almeida/bestore","commit_stats":null,"previous_names":["eneas-almeida/bestore"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/eneas-almeida/bestore","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eneas-almeida%2Fbestore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eneas-almeida%2Fbestore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eneas-almeida%2Fbestore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eneas-almeida%2Fbestore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eneas-almeida","download_url":"https://codeload.github.com/eneas-almeida/bestore/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eneas-almeida%2Fbestore/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32810381,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T08:22:46.396Z","status":"online","status_checked_at":"2026-05-09T02:00:06.633Z","response_time":123,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["docker","java","mysql","spring-boot"],"created_at":"2025-02-22T03:19:11.413Z","updated_at":"2026-05-09T07:01:32.456Z","avatar_url":"https://github.com/eneas-almeida.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BeStore\n\n[![NPM](https://img.shields.io/npm/l/react)](https://github.com/venzel/bestore/blob/master/LICENSE)\n\n\u003e **BeStore** é uma aplicação para venda de produtos em geral.\u003cbr /\u003e \u003ca href=\"http://bestore.me\"\u003e👉 bestore.me\u003c/a\u003e\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"./media/logos/bestore-v3.png\" width=\"280\" /\u003e\u003c/p\u003e\n\n## 👤 Autores\n\n| Foto                                      | Nome                                        | Ativo | Dt. inativo | Atribuições                             |\n| ----------------------------------------- | ------------------------------------------- | ----- | ----------- | --------------------------------------- |\n| ![Enéas](./media/images/venzel-thumb.png) | [Enéas Almeida](https://github.com/venzel/) | 🔥    | -           | Manager, Arquiteto, FullStack Developer |\n\n## Tecnologias\n\nAPI Rest em **Java** e **Spring Boot** com uma arquitetura **Feature by Package** (módulos e casos de usos).\n\n\u003cp align=\"left\"\u003e\n  \u003cimg src=\"https://cdn.worldvectorlogo.com/logos/java-14.svg\" alt=\"Java\" title=\"Java\" width=\"30\" height=\"30\" /\u003e \n  \u003cimg src=\"https://cdn.worldvectorlogo.com/logos/spring-3.svg\" alt=\"Spring\" title=\"Spring\" width=\"30\" height=\"30\" /\u003e \n\u003c/p\u003e\n\n### Back end\n\n-   Java\n-   Spring Boot\n-   JPA / Hibernate\n\n### Persistência de dados\n\n-   MySQL\n\n### Outras informações\n\nO projeto tem como gerencimento de pacotes o **Maven** e o **Makefile** como automação de comandos, além disso, o mysql é gerenciado através de um container do **Docker**.\n\n#### Bibliotecas externas utilizadas\n\n-   \u003ca href=\"http://modelmapper.org\"\u003eModel Mapper\u003c/a\u003e\n-   \u003ca href=\"https://projectlombok.org\"\u003eLombok\u003c/a\u003e\n\n## Quadro Kanban de atividades\n\n👉 \u003ca href=\"https://github.com/venzel/bestore/projects/1\"\u003eQuadro Kanban\u003c/a\u003e\n\n## Gitflow\n\n\u003cbr/\u003e\u003cp align=\"center\"\u003e\u003cimg src=\"./media/images/gitflow-v1.png\" width=\"650\" /\u003e\u003c/p\u003e\n\n👉 [Documentação passo a passo](./documentations/gitflow.md)\n\n## Arquitetura\n\n### Porque Feature by Package?\n\nFeature by Package (FBP) é uma arquitetura que utiliza conceitos do **DDD (Domain Driven Design)**, sugerida por empresas como a **Rocketseat**, com o objetivo de tornar o código mais **flexível**, **escalável** e de **manutenção simples**.\n\n### Vantagens da arquitetura\n\n-   **MANUTENÇÃO**: Facilita o engajamento de muitas equipe e colaboradores em um projeto;\n-   **ESCALÁVEL**: Facilita refatoramento do código monolítico para uma uma estrura de microserviços;\n-   **SOLID**: Facilita a aplicação de todos os princípios do SOLID;\n-   **GIT**: Melhora o gerenciamento dos commits, evitando conflitos e etc;\n-   **TESTES**: Facilita o desenvolvimento de testes de unidade e integração.\n\n### Organização das pastas\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"./media/store-tree-v2.png\" width=\"300\" /\u003e\u003c/p\u003e\n\n## Diagrama\n\n### Versão 5\n\n\u003cimg src=\"./media/diagrams/diagrama-v5.png\" /\u003e\n\n### Influências\n\nEste projeto tem como principais influências, os fundamentos da \u003ca href=\"https://rocketseat.com.br\"\u003eRocketseat\u003c/a\u003e, \u003ca href=\"https://devsuperior.com.br\"\u003eDevSuperior\u003ca\u003e e \u003ca href=\"https://www.algaworks.com\"\u003eAlgaWorks\u003ca\u003e.\n\n## Como executar o projeto\n\n### Pré-requisitos\n\n-   Java 11\n-   Docker\n-   Docker compose\n\n```bash\n# Para clonar repositório\ngit clone https://github.com/venzel/bestore\n\n# Para entrar na pasta do projeto\ncd bestore\n\n# Para subir o container do mysql na porta 3306\nmake up\n\n# Para executar o projeto na porta 8080\nmake run\n```\n\n## Autor\n\nEdivam Enéas de Almeida Júnior\n\n👉 \u003ca href=\"https://www.linkedin.com/in/venzel\"\u003eLinkedin\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feneas-almeida%2Fbestore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feneas-almeida%2Fbestore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feneas-almeida%2Fbestore/lists"}