Skip to content

HenriqueStocco/pass-in-nlw

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Projeto pass.in - Next Level Week(NLW): Rockeseat

Sobre o projeto

E uma aplicaçao de gestão de participantes em eventos presenciais. A ferramenta ira permitir que o organizador cadastre um evento e abra uma pagina de inscriçao, e os participantes inscritos no evento podem emitir uma credencial para checkin no dia do evento. O sistema fara um scan da credencial usando QRCode, permitindo a entrada do participante no evento.

Requisitos

Requisitos funcionais

  • O organizador deve poder cadastrar um novo evento;

  • O organizador deve poder visualizar dados de um evento;

  • O organizador deve poser visualizar a lista de participantes;

  • O participante deve poder se inscrever em um evento;

  • O participante deve poder visualizar seu crachá de inscrição;

  • O participante deve poder realizar check-in no evento;

Regras de negócio

  • O participante só pode se inscrever em um evento uma única vez;

  • O participante só pode se inscrever em eventos com vagas disponíveis;

  • O participante só pode realizar check-in em um evento uma única vez;

Requisitos não-funcionais

  • O check-in no evento será realizado através de um QRCode;

Tecnologias

  • Node.js >= v20.10.0
  • NPM >= v10.2.5
  • Fastify >= v4.26.x
  • Zod >= v3.22.4
  • TypeScript >= v5.4.4
  • Prisma >= v5.12.1
  • fastify-type-provider-zod

Documentaçao da API (Swagger)

fastify-swagger >= v8.14.0

Para documentação da API. Acessar: http://localhost:3333/docs

Banco de dados

SQLite >= v3.45.2

Nessa aplicação utilizamos o banco de dados ralacional (SQL). Para o desenvolvimento seguimos com o SQLite pela facilidade do ambiente.

Diagrama ER

Como utilizar a aplicação

E necessario ter o Node.js e o Git instalado

  • Criar uma pasta para o projeto
~ mkdir project
  • Clonar o projeto na pasta
project > git clone <esse_projeto>
  • Instalar as dependencias
project/pass-in-NLW > npm i
project/pass-in-NLW > npx tsc --init
  • Iniciar o prisma e definir o banco de dados
project/pass-in-NLW > npx prisma init --datasource-provider SQLite
  • Migrar as tebelas do banco de dados
project/pass-in-NLW > npm run db:migrate
  • Utilizar a aplicação
project/pass-in-NLW > npm run dev
  • Para ver os dados no banco de dados
project/pass-in-NLW > npm run db:studio

About

Projeto construido na semana do NLW da Rocketseat.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published