Our project is a weather monitoring table offering energy-saving suggestions based on current temperatures.
Team Members:
- Ruijie Fan: Responsible for fetching weather data from the 'onWeather' API, designing the weather forecast display layout, and architecting the program's basic structure.
- Haocheng Lu: Handled user authentication and registration, integrated Google Maps, managed data retrieval from Firebase to annotate cities on the map, implemented conditional pop-up rendering based on temperature, and developed routing functionality within the application.
Implemented Functionalities:
- API Usage: Utilized Google Maps API and onWeatherAPI for mapping and weather data respectively.
- Database Integration: Incorporated Firebase Authentication for user login, Firestore for storing city geographical data, and Firebase Storage for the login interface background image.
- External JSON Handling: Employed JSON data from OnWeatherAPI.
- Conditional Rendering: Based on temperature data, we dynamically display different pages.
- Data Manipulation: Added a search feature to filter city weather information by user-entered city names.
- User Interface: Developed login and registration interfaces with buttons and input fields.
- Component Interaction: Implemented parent-child component communication, passing user-input city names as props.
- Multi-Component Architecture: Our application comprises several interconnected components.
- Navigation with React Router: Employed React Router for seamless page navigation.
- Programming Approach: Combined functional and class-based components.
This comprehensive approach ensures robust functionality and user-friendly interaction in our weather monitoring and energy-saving project.