README
MIT License
2 min read · 4 months ago

Pass.in

GitHub

    APINode.jsTypescriptFastifyPrisma ORMPostgreSQLDayjsZod

Pass.in is a participant management application for in-person events.

This tool allows organizers to register an event and open a public registration page. Registered participants can issue a credential for check-in on the day of the event. The system will scan the participant’s credential to allow entry to the event.

Table of Contents

Requirements

Functional Requirements

  • The organizer must be able to register an event.
  • The organizer must be able to view event details.
  • The organizer must be able to view the list of participants.
  • The participant must be able to register for an event.
  • The participant must be able to view their registration badge.
  • The participant must be able to check-in at the event.

Business Rules

  • A participant can only register for an event once.
  • A participant can only register for events with available slots.
  • A participant can only check-in at an event once.

Non-Functional Requirements

  • Event check-in will be conducted via a QR code.

Installation

To install and run the application locally, follow these steps:

  1. Clone the repository:
    git clone https://github.com/wolney-fo/pass.in.git
    
  2. Navigate to the project directory:
    cd pass.in
    
  3. Install the dependencies:
    npm install
    
  4. Run migrations:
    npx prisma migrate dev
    
  5. Run the application:
    npm run start:dev
    

Stack

  • Node.js
  • Typescript
  • Fastify
  • Prisma ORM
  • PostgreSQL
  • Dayjs
  • Zod

Contributing

Contributions are welcome! Please follow these steps to contribute:

  1. Fork the project.
  2. Create your feature branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Add some AmazingFeature').
  4. Push to the branch (git push origin feature/AmazingFeature).
  5. Open a pull request.

License

MIT by Wolney Oliveira