Skip to content

Zaidshaikh2811/PublicTransportComplain

Repository files navigation

Public Transport Application

Try the live version of the application: https://public-transport-complain.vercel.app/

A modern web application built with Next.js that provides public transport information and services. This application offers a user-friendly interface for managing transportation-related services with integrated contact functionality.

Features

  • 🚌 Public transport information and management
  • 📱 Responsive design for all devices
  • 📧 Contact form with email integration
  • 🔐 User authentication
  • 🎨 Modern UI with custom components
  • ⚡ Server-side rendering for optimal performance

Technologies Used

  • Framework: Next.js 14
  • Language: TypeScript
  • Styling: Tailwind CSS
  • UI Components: Shadcn/ui
  • Email Service: Custom email integration
  • Authentication: Built-in Next.js authentication
  • Deployment: Vercel

Getting Started

Prerequisites

  • Node.js 18.x or later
  • npm or yarn package manager

Installation

  1. Clone the repository
git clone https://github.com/yourusername/public_transport.git
cd public_transport
  1. Install dependencies
npm install
# or
yarn install
  1. Set up environment variables Create a .env file in the root directory with the following variables:
EMAIL_USER=your_email@example.com
# Add other required environment variables
  1. Run the development server
npm run dev
# or
yarn dev

Open http://localhost:3000 to view the application.

API Endpoints

Contact API

POST /api/contact

  • Handles contact form submissions
  • Request body:
{
    "name": "string",
    "email": "string",
    "subject": "string",
    "message": "string"
}
  • Returns:
    • 200: Success
    • 400: Missing fields
    • 500: Server error

Project Structure

├── app/                 # Next.js app directory
├── components/         # Reusable UI components
├── actions/           # Server actions
├── lib/              # Utility functions
├── public/           # Static assets
└── ...

Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  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

Support

For support, please:

Releases

No releases published

Packages

No packages published