URide is a modern ridesharing platform designed specifically for university students. It connects drivers and riders within the university community, helps organize community events, and promotes sustainable transportation options.
- Ridesharing: Connect drivers with riders for campus commutes
- Community Events: Discover and join university events
- Progress Tracking: Track savings and achievements
- Real-time Chat: Communicate with drivers or riders
- Interactive Maps: View routes and locations with Google Maps integration
- User Profiles: Manage your profile and preferences
- Frontend: Next.js, React, TypeScript, Tailwind CSS
- UI Components: Shadcn UI
- Maps: Google Maps API
- Authentication: Firebase Auth
- Database: Firebase Firestore
- Analytics: Firebase Analytics
We welcome contributions to improve URide! Here's how you can help:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add some amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
- Follow the existing code style and naming conventions
- Write meaningful commit messages
- Add appropriate comments for complex logic
- Update documentation for significant changes
- Node.js 16.8 or later
- npm or yarn
- Firebase account
- Google Maps API key
-
Clone the repository:
git clone https://github.com/yourusername/uride.git cd uride -
Install dependencies:
npm install # or yarn install -
Set up environment variables:
# Copy the example environment file cp .env.example .env.local # Edit the .env.local file with your actual credentials
-
Run the development server:
npm run dev # or yarn dev -
Open http://localhost:3000 with your browser to see the application.
This project uses environment variables to store sensitive information like API keys. Follow these steps to set up your environment:
- Copy
.env.exampleto.env.local - Replace the placeholder values with your actual API keys and configuration
IMPORTANT: Never commit your .env.local file to version control. It contains sensitive information.
The Firebase configuration requires the following environment variables in your .env.local file:
NEXT_PUBLIC_FIREBASE_API_KEY=
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=
NEXT_PUBLIC_FIREBASE_PROJECT_ID=
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=
NEXT_PUBLIC_FIREBASE_APP_ID=
NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID=
For the map functionality to work, you need to provide a Google Maps API key:
NEXT_PUBLIC_GOOGLE_MAPS_API_KEY=
/components- Reusable UI components/contexts- React context providers/lib- Utility functions and service configurations/public- Static assets/services- API and service integrations/src/app- Next.js app router pages/utils- Helper functions
The easiest way to deploy URide is to use the Vercel Platform from the creators of Next.js.
- Push your code to a GitHub repository
- Import the project into Vercel
- Add your environment variables in the Vercel dashboard
- Deploy!
This project is licensed under the MIT License - see the LICENSE file for details.
- Next.js - The React framework
- Tailwind CSS - Utility-first CSS framework
- Shadcn UI - UI component library
- Firebase - Backend services
- Google Maps Platform - Maps and location services