Skip to content

SolidKing-1/ruston-rides

Repository files navigation

🚗 ruston-rides

ruston-rides is a modern, multi-role ride-hailing web app frontend built with Next.js and TypeScript. It delivers a seamless experience for both customers and drivers, featuring real-time location tracking, robust authentication, and a frictionless booking and payment flow. Designed for performance, accessibility, and developer productivity.


🌟 Project Goal

Deliver a fast, accessible, and maintainable frontend supporting:

  • Role-based flows for customers and drivers
  • Real-time location updates and ride status
  • Frictionless booking and payment experience
  • Optimized performance and accessibility

🛠️ Tech Stack

  • Next.js (App Router)
  • React + TypeScript
  • Tailwind CSS
  • Google Maps JavaScript API (map + driver tracking)
  • WebSocket / long-polling for real-time updates
  • Vercel for deployment

🚀 Getting Started

1. Clone the repository

git clone https://github.com/SolidKing-1/ruston-rides.git
cd ruston-rides

2. Install dependencies

npm install

3. Configure environment variables

Create a .env.local file in the root directory:

NEXT_PUBLIC_GOOGLE_MAPS_API_KEY=your-google-maps-api-key
NEXT_PUBLIC_WEBSOCKET_URL=your-websocket-url
# Add other required variables here

4. Run the development server

npm run dev

Open http://localhost:3000 in your browser.


🏗️ Production Build & Deployment

Build for production:

npm run build
npm start

Recommended: Deploy to Vercel for optimal performance.


✨ Key Features

  • Role-based UI: Distinct flows and pages for customers and drivers.
  • Real-time updates: Sub-second driver location and ride status refresh.
  • Component-driven architecture: Reusable TSX components and typed contracts.
  • Performance-focused: SSR/SSG, code-splitting, and Tailwind optimization.
  • Accessibility: Keyboard navigation, semantic HTML, and client-side validation.
  • Payments-ready: Scaffold for integrating payment providers.

🧑‍💻 Contributing

  1. Fork the repo and create your branch: git checkout -b feature/your-feature
  2. Commit your changes: git commit -m 'Add some feature'
  3. Push to the branch: git push origin feature/your-feature
  4. Open a pull request

📬 Contact & Support


Built with ❤️ by [Kingsley Oppong Appiah]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors