Imagem da listagem de produtos dentro do painel CMS do projeto.
Esse é o back-end da aplicação acme-ecommerce-web.
Temos aqui uma API RESTful + painel CMS (Content Management System) construídos com Strapi. Foram feitas algumas personalizações com Node.js para adequar o projeto às regras de negócio. Como banco de dados, foi usado PostgreSLQ. Para o armazenamento das imagens dos produtos, foi utilizado o serviço de armazenamento de objetos Firebase Storage. E para o envio de emails de 'esqueci minha senha', foi feita a integração do Strapi com o serviço de envio de emails SendGrid.
Através do painel CMS, é possível fazer o gerenciamento das categorias, produtos, pedidos e usuários. O armazenamento das imagens dos produtos é feito automaticamente no Firebase Storage após cadastrar um novo produto. Através da API REST, podemos fazer as mesmas ações disponíveis no painel CMS, porém de forma programática. Assim, podemos fornecer dados para o nosso frontend e também utilizar a autenticação e fazer o envio de emails de 'esqueci minha senha'.
Strapi é uma ferramenta que permite, através da sua interface gráfica, criar o backend completo da sua aplicação. Ele oferece uma API REST e um painel CMS para gerenciar as entidades do seu banco de dados. O Strapi fornece um sistema de autenticação local e uma fácil integração com diversos bancos de dados, além de suportar serviços de terceiros para autenticação e armazenamento de objetos, incluindo a opção de armazenar localmente.
URL base: http://localhost:1337. Serve apenas para verificar se o sistema está rodando.
URL base do painel CMS: http://localhost:1337/admin. Acesso ao painel administrativo CMS.
URL base da API: http://localhost:1337/api. Rota base para utilização da API REST.
Rota base de autenticação: http://localhost:1337/api/auth.
Rota base de categorias: http://localhost:1337/api/categorias.
Rota base de produtos: http://localhost:1337/api/produtos.
Rota base de pedidos: http://localhost:1337/api/pedidos.
Rota base de usuarios: http://localhost:1337/api/users.
Acesse a documentação da API REST para aprender a utilizar as rotas da API.
- Ter Git para clonar o projeto.
- Ter Node.js instalado.
- Ter um gerenciador de pacotes como NPM ou Yarn para instalar as dependências do projeto.
- Ter o PostgreSLQ instalado.
git clone https://github.com/rodrigosuelli/acme-ecommerce-server.git
cd acme-ecommerce-server
$ npm install
# ou
$ yarn
Faça uma copia do arquivo .env.example e a renomeie para .env
# Faz uma copia do arquivo .env.example e renomeia para .env
$ cp .env.example .env
No arquivo .env
insira os dados do banco de dados que será usado e os secrets
necessários para rodar a aplicação.
Start your Strapi application with autoReload enabled. Learn more
npm run develop
# or
yarn develop
Start your Strapi application with autoReload disabled. Learn more
npm run start
# or
yarn start
Build your admin panel. Learn more
npm run build
# or
yarn build
Mais informações sobre como rodar o projeto no arquivo GettingStarted.md
- Faça um fork desse repositório
- Faça um clone do seu fork (
git clone url-do-seu-fork && cd acme-ecommerce-server
) - Crie uma branch com sua feature ou correção de bugs (
git checkout -b minha-branch
) - Faça commit das suas alterações (
git commit -m 'feature/bugfix: minhas alterações'
) - Faça push para a sua branch (
git push origin minha-branch
) - Abra sua Pull Request no repositório que você fez o fork
Este projeto está licenciado sob a licença MIT.