Giter Club home page Giter Club logo

nlw-unite-nodejs's Introduction

Pass.in Back-end

O Pass.in é uma aplicação para gestão de participantes em eventos presenciais, permitindo que organizadores cadastrem eventos e gerenciem inscrições e check-ins de participantes de maneira eficiente.

Esta aplicação back-end lida com todas as operações de dados, desde o cadastro de eventos até a gestão de participantes e o processamento de check-ins.

Links de Acesso a API

🔗 Link da api para uso: https://api.pass-in.pro 🔗 Link da documentação: https://api.pass-in.pro/docs

Funcionalidades

O back-end do Pass.in suporta as seguintes funcionalidades:

  • O organizador pode cadastrar um novo evento;
  • O organizador pode visualizar dados de um evento;
  • O organizador pode visualizar a lista de participantes;
  • O organizador pode realizar o check-in de um participante;
  • O organizador pode cancelar o check-in de um participante;
  • O organizador pode editar os dados de um participante;
  • O participante pode se inscrever em um evento;
  • O participante pode visualizar seu crachá de inscrição;
  • O participante pode realizar check-in no evento;

Tecnologias Utilizadas

  • Node.js e Fastify para a construção do servidor
  • Prisma como ORM para o gerenciamento do banco de dados
  • SQLite para desenvolvimento e PostgreSQL para produção
  • Swagger para documentação da API

Executando Localmente

Para executar o back-end localmente, siga os passos abaixo:

  1. Clone o repositório:
git clone https://github.com/Lag0/nlw-unite-nodejs.git
cd nlw-unite-nodejs
  1. Instale as dependências:
npm install
  1. Crie um arquivo .env na raiz do projeto com a seguinte linha, que configura o banco de dados para usar SQLite no ambiente de desenvolvimento:
DATABASE_URL="file:./dev.db"
  1. Atualize o schema.prisma para usar SQLite:

De:

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

Para:

datasource db {
  provider = "sqlite"
  url      = env("DATABASE_URL")
}
  1. Execute as migrações para criar o banco de dados:
npx prisma migrate dev
  1. Inicie o servidor:
npm run dev

A API agora estará rodando localmente e acessível via http://localhost:3333.

Documentação da API

Acesse http://localhost:3333/docs para visualizar a documentação da API Swagger e testar os endpoints.

Estrutura do Banco de Dados

O diagrama ERD e a estrutura SQL fornecidos detalham o design do banco de dados usado pela aplicação. Para ambientes de produção, recomenda-se o uso de PostgreSQL.

Contribuindo

Contribuições são bem-vindas! Para contribuir, por favor, crie um fork do repositório, faça suas alterações e submeta um pull request.

Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.


nlw-unite-nodejs's People

Contributors

lag0 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.