Skip to content

bw3sley-dev/probable-pancake

Repository files navigation

Logo T21 Arena Park

Aplicação desenvolvida para o controle de uma escola de futebol para alunos com síndrome de Down.

Ideia   |    Configuração do ambiente   |    Tecnologias

💡 Ideia

O projeto consiste em uma plataforma para gerenciamento de uma escola de futebol para alunos com síndrome de Down. Com ele, é possível configurar organizações, gerenciar voluntários e atletas, além de realizar avaliações de desempenho dos alunos.

🔧 Configuração do ambiente

  1. Clone o repositório:
git clone https://github.com/bw3sley-dev/probable-pancake.git
  1. Instale as dependências:
npm install
  1. Configuração do banco de dados com Docker:

Se você ainda não tiver um container PostgreSQL rodando, utilize o Docker Compose para criar um:

docker-compose up -d

ou

docker run -d --name t21-arena-park-pg -e POSTGRESQL_USERNAME=docker -e POSTGRESQL_PASSWORD=docker -e POSTGRESQL_DATABASE=db-arena-park -p 5432:5432 bitnami/postgresql

Isso irá iniciar um container PostgreSQL configurado com as credenciais e o banco de dados necessários para o projeto.

  1. Crie um arquivo .env na raiz do projeto com as seguintes variáveis:

Para rodar o projeto localmente, é necessário criar um arquivo .env.local na raiz do projeto com as seguintes variáveis:

# Auth
JWT_SECRET="nosso-hash"

# Database
DATABASE_URL="postgresql://docker:docker@localhost:5432/db-arena-park?schema=public"

# Environment
NODE_ENV="dev"
PORT=3333

# OpenIA
OPENAI_API_KEY=""

# SMTP
SMTP_USER=""
SMTP_PASSWORD=""

# Power User
POWER_USER="t21-arena-park@email.com"

Você também pode copiar e colar o que está dentro do arquivo .env.example, porém deve mudar o db_name.

  1. Rode as migrations já criadas:

Para aplicar as migrations ao banco de dados, execute:

npx prisma migrate deploy
  1. Rode o seed para popular o banco de dados:

Após configurar o ambiente e aplicar as migrations, você pode rodar o arquivo seed.ts para popular o banco de dados com dados iniciais. Isso é útil para testes e desenvolvimento.

npm run seed
  1. Inicie o servidor de desenvolvimento:
npm run dev

🚀 Tecnologias

Esse projeto foi desenvolvido com as seguintes tecnologias:

  • Node.js
  • Fastify
  • Prisma ORM
  • PostgreSQL
  • TypeScript
  • Zod
  • dotenv
  • FastifySwagger
  • FastifySwaggerUI
  • TSUP