Skip to content

alissonpef/Curso.dev

Repository files navigation

Bem-vindo(a) à minha Jornada com o curso.dev! 👋

Olá! Meu nome é Alisson e este repositório documenta minha jornada de aprendizado com o curso.dev, do Filipe Deschamps.

O projeto central do curso é a construção de um clone completo e funcional do TabNews, e é exatamente isso que você verá aqui. Diferente de um curso tradicional, o objetivo não é apenas seguir uma lista de aulas, mas sim absorver uma filosofia de desenvolvimento de software. Este espaço registrará o processo, os erros, as descobertas e a construção deste projeto, do zero, com foco nos fundamentos.

Sinta-se à vontade para acompanhar a evolução e o raciocínio por trás de cada commit. 🚀


📚 A Jornada: Construindo um Clone do TabNews

Este repositório seguirá a metodologia do curso, focada em construir um software robusto e bem arquitetado, entendendo o "porquê" de cada decisão. A estrutura do meu aprendizado será:

  • 🧠 Filosofia e Fundamentos: Entendendo os princípios essenciais para criar software de qualidade. Mais do que aprender uma linguagem, o foco é em como pensar como um engenheiro de software: a importância dos testes, da clareza do código e das decisões de arquitetura.
  • 🏗️ Estruturando o Projeto do Zero: Configuração do ambiente de desenvolvimento, inicialização do controle de versão com Git e a criação da estrutura base da aplicação com Next.js, preparando o terreno para um desenvolvimento sustentável.
  • 🧪 Desenvolvimento Guiado por Testes (TDD): Adotando a prática de escrever testes antes do código de produção. O objetivo é garantir que a aplicação seja testável, confiável e que cada nova funcionalidade (como a criação de um endpoint da API) seja adicionada com segurança.
  • 💻 Construindo a API e o Backend: Desenvolvimento do núcleo da aplicação em Node.js, implementando as regras de negócio, criando os endpoints da API e conectando com o banco de dados PostgreSQL.
  • 🎨 Desenvolvendo a Interface (Frontend): Construção da interface de usuário com React e Next.js, consumindo a API que criamos e tornando a aplicação interativa e funcional para o usuário final.
  • 🐳 Containerização com Docker: Empacotando a aplicação e o banco de dados em containers Docker para garantir que o ambiente de desenvolvimento seja consistente, portátil e fácil de reproduzir.
  • ⚙️ Integração e Entrega Contínua (CI/CD): Automatizando o processo de testes e deploy. Configuração de uma esteira com GitHub Actions para que cada alteração no código principal seja testada e, se aprovada, enviada para produção automaticamente.
  • 🚀 Deploy na Nuvem: Colocando o projeto no ar em um provedor de nuvem (como a Vercel), aprendendo os conceitos práticos para que o mundo possa acessar a aplicação.

🛠️ Tecnologias e Ferramentas

Estas são as tecnologias que estou aprendendo e utilizando ao longo desta jornada:

Stack Principal:

Next JS React NodeJS JavaScript

Banco de Dados:

PostgreSQL

Testes:

Jest

DevOps & Cloud:

Docker GitHub Actions Vercel

Ferramentas de Desenvolvimento:

Git VSCode Prettier ESLint


📫 Vamos Conectar!

Adoraria trocar ideias sobre desenvolvimento, fundamentos e a jornada de aprendizado. Me encontre em:

LinkedIn Gmail

Releases

No releases published

Packages

 
 
 

Contributors