Best Bike Day is a biker-friendly mobile application that delivers accurate 5-day weather forecasts to help riders plan safer and smarter journeys. Integrated with the OpenWeatherMap API and backed by Firebase Authentication and Realtime Database, the app provides personalized settings, real-time notifications, and a smooth, intuitive user experience. Built with a focus on usability, reliability, and modern UI/UX design, it showcases expertise in Android development and API integration.
- Access detailed weather data including temperature, wind speed, and precipitation.
- Real-time weather updates using OpenWeatherMap API.
- Switch between light and dark modes based on your preference.
- Enhances visibility and reduces eye strain.
- Choose preferred temperature units (°C/°F) and wind speed formats (km/h, mph, m/s).
- Save favorite riding locations for quick forecast checks.
- Sign up or log in via Firebase Authentication.
- Supports both Email/Password and Google Sign-In methods.
- Clean dashboard highlighting today’s and upcoming weather conditions.
- Lightweight and responsive design for a seamless experience.
- Frontend: Java, XML
- API: OpenWeatherMap
- Backend: Firebase (Authentication, Realtime Database)
- Development Tools: Android Studio
- UI: Material UI Components
- Target SDK: 24+
BestBikeDay/
└── app/
└── src/
└── main/
├── java/
│ └── com/example/bestbikeday/
│ ├── MainActivity.java # Entry point and main weather screen
│ ├── services/ # WeatherService for API calls and parsing
│ ├── preferences/ # User settings, Firebase sync, theme handling
│ ├── adapters/ # WeatherAdapter, ForecastAdapter, etc.
│ ├── models/ # Weather.java, UserPreferences.java
│ ├── utils/ # DateUtils, LocationHelper, ApiEndpoints
└── res/
├── drawable/ # Icons, background images
├── layout/ # activity_main.xml, item_weather.xml, etc.
├── menu/ # menu_main.xml for toolbar menus
├── values/ # strings.xml, styles.xml, colors.xml
└── values-night/ # Dark mode specific resources
- Android Studio installed
- Firebase project set up
- OpenWeatherMap API key
- Clone the repository
git clone https://github.com/your-username/best-bike-day-app.git
- Open in Android Studio and sync dependencies.
- Configure Firebase:
- Add
google-services.jsontoapp/directory. - Enable Firebase Authentication & Realtime Database.
- Add
- Set up API keys:
- Get a free API key from OpenWeatherMap.
- Add it to
gradle.propertiesor use a secure method to store it.
- Run the app on an emulator or a physical device.
Pull requests are welcome! Feel free to fork the repository and submit improvements.
- Fork the project.
- Create a feature branch:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add feature description" - Push to the branch:
git push origin feature-name
- Open a pull request.
For any inquiries or suggestions, reach out at:
- 💌 Email: [email protected]
- 🌐 LinkedIn: https://linkedin.com/in/preveen-s
If you like this project, please consider giving it a ⭐ on GitHub!
🚴 Ride Safe & Plan Ahead with Best Bike Day!