Skip to content

EaCamih/IdealBus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

exemplo imagem

IdealBus

IdealBus is a modern bus ticket and trip management platform designed to streamline the way users search, book, and manage their journeys.

The application focuses on scalability, security, and performance while delivering a smooth and intuitive user experience.

Overview

IdealBus provides:

  • Bus ticket booking and management
  • Trip organization and scheduling
  • User account management
  • Secure backend architecture
  • Cloud-based data storage

The project follows modern development standards and industry best practices to ensure maintainability and long-term growth.

Tech Stack

Frontend

  • Framework: Next.js
  • Language: React + TypeScript
  • Styling: Tailwind CSS
  • UI Components: Radix UI, Base UI, shadcn/ui
  • Forms: React Hook Form + Zod validation
  • Icons: Lucide React
  • Code Quality: Biome 2.2

Mobile

Currently not implemented

Backend

  • Runtime: Node.js with native TypeScript support
  • Framework: Fastify
  • Language: TypeScript
  • ORM: Drizzle ORM
  • Database: PostgreSQL
  • Cache: Redis
  • Validation: Zod
  • Authentication: JWT (jsonwebtoken) + bcrypt
  • API Documentation: Fastify Swagger + Scalar
  • Code Quality: Biome
  • Build Tool: tsx (TypeScript executor)

Infrastructure & DevOps

  • Containerization: Docker & Docker Compose
  • Package Manager: pnpm (monorepo workspace)

Project Structure (High-Level)

idealbus/
│
├── api/        # Fastify backend (REST API)
├── web/        # Next.js frontend (App Router)
└── docs/       # Documentation & diagrams

Getting Started

Clone the repository

git clone https://github.com/EaCamih/IdealBus.git
cd idealbus

Install dependencies

API

cd api
npm install

Web

cd web
npm install

Environment Variables

Create a .env file inside /api:

PORT=3333
DATABASE_URL=postgres_url
NODE_ENV=development

Setup docker containers

cd api
docker compose up -d

Run the project

Start API

cd api
npm run dev

Start Web

cd web
npm run dev

The web app will typically run at:

http://localhost:3000

Security & Design Principles

The project is being built with:

  • Modular and scalable architecture
  • Clear separation of concerns (API / Web)
  • Strong typing across the stack
  • Environment-based configuration
  • Secure authentication flows
  • Clean and maintainable code patterns

Development Standards

  • All features must be developed in separate branches
  • Pull Requests require review before merging
  • Clear commit messages following Conventional Commits
  • Avoid direct commits to main
  • Breaking changes must be documented

Project Vision

IdealBus aims to become a secure, scalable, and production-ready transportation management system.

The goal is to continuously evolve using modern technologies, clean architecture patterns, and real-world market standards.

License

This project is licensed under the MIT license. Feel free to contribute!

❤️ Contributing

Pull requests are welcome. If you'd like to suggest improvements, feel free to open an issue.

Author

Developed with love by Camilla Viana 💜

About

IdealBus o app que agiliza suas viagens de ônibus.

Resources

License

Stars

Watchers

Forks

Contributors