Este repositório contém uma aplicação full-stack desenvolvida usando a stack MERN (MongoDB, Express, React, Node.js). O projeto é uma estante de livros que permite cadastrar e gerenciar livros com informações como título, subtítulo, autor, gênero e imagem da capa. A aplicação é projetada para ser responsiva e otimizada para atualizações de estado em tempo real.
- Descrição: Banco de dados NoSQL orientado a documentos, ideal para armazenar dados em formato JSON flexível.
- Vantagens: Esquema dinâmico, alta escalabilidade e suporte para consultas complexas.
- Descrição: Framework minimalista para Node.js que simplifica o desenvolvimento de servidores web e APIs.
- Vantagens: Arquitetura de middleware, sistema de roteamento flexível e integração simplificada com outras ferramentas.
- Descrição: Biblioteca JavaScript para construção de interfaces de usuário dinâmicas e interativas.
- Vantagens: Componentização reutilizável, Virtual DOM para atualização eficiente e fluxo de dados unidirecional para uma arquitetura previsível.
- Descrição: Ambiente de execução JavaScript para construção de aplicações escaláveis no lado do servidor.
- Vantagens: Modelo de I/O não bloqueante, uso universal de JavaScript e gerenciador de pacotes npm.
A stack MERN é popular devido à sua coesão em torno do JavaScript, permitindo um desenvolvimento unificado e eficiente. Ela é ideal para aplicações modernas que exigem escalabilidade e performance, com uma comunidade robusta que suporta inovação contínua.
A aplicação é implantada na AWS usando o AWS App Runner, que simplifica o processo de construção e implantação de aplicações na nuvem. Com a AWS App Runner, a aplicação beneficia-se de escalabilidade automática, segurança integrada e integração perfeita com outros serviços AWS.
- Implantação Automatizada: Simplifica a implantação direta do repositório de código.
- Escalabilidade Automática: Gerencia o escalonamento com base no tráfego de usuários.
- Segurança Integrada: Proporciona conexões seguras e conformidade com as normas de segurança da AWS.
- Clone o Repositório:
git clone https://github.com/chgasparoto/mern-curso-intensivo.git
cd mern-curso-intensivo
- Instale as Dependências:
npm install
cd frontend
npm install
cd ..
- Configure as Variáveis de Ambiente::
Crie um arquivo .env (ou renomeie ou copie/cole o arquivo .env-example para .env) com as seguintes variáveis:
MONGODB_URI=seu-mongodb-uri
PORT=3000
NODE_ENV=development
- Execute a Aplicação:
npm run dev
cd frontend
npm run dev
- Execute a Aplicação:
- Abra http://localhost:3000 para ver a aplicação backend em ação.
- Abra http://localhost:5173 para ver a aplicação frontend em ação.
Este projeto é licenciado sob a Licença Creative Commons Attribution-NonCommercial 4.0 International Public License - veja o arquivo LICENSE para mais detalhes.