Capsule Event Hub is a full-stack web application for managing events, built with MongoDB, Express, React, and Node.js (MERN stack). Users can create, view, update, and delete events, and RSVP to events.
- User Authentication (Login and Registration)
- Create, Edit, and Delete Events
- View Event Details
- Weather Forecast Integration
- Responsive Design
- Client: React, Redux, TailwindCSS
- Server: Node, Express
- API: Axios for API requests
- Styling: CSS, React Toastify for notifications
- Clone the Repository:
git clone https://github.com/Fchery87/capstone-frontend.git
cd capstone-frontend
- Install Dependencies:
npm install
- Set Up Environment Variables: Create a .env file in the root directory and add the following:
REACT_APP_WEATHER_API_KEY=your_weather_api_key
- Start the Application:
npm run dev
- Home Page:
- Displays a welcome message and navigation links to other parts of the application.
- Events Page:
- Lists all the events with options to edit or delete each event.
- Create Event Page:
- Form to create a new event with fields for title, description, date, time, location, category, and image upload.
- Event Details Page:
- Displays detailed information about a selected event.
- Weather Forecast Page:
- Allows users to search for the weather forecast by location for the day, week, or month.
- EventForm.jsx
- Handles the creation of new events with form validation and submission logic.
- EventItem.jsx
- Renders individual event items with options to edit or delete.
- EventList.jsx
- Fetches and displays a list of events.
- EventDetails.jsx
- Shows detailed information for a specific event.
- Home.jsx
- Renders the home page with navigation links.
- LoginForm.jsx
- Handles user login functionality.
- RegisterForm.jsx
- Handles user registration functionality.
- WeatherForecast.jsx
- Fetches and displays weather information for a given location.
- Axios: Used for making API requests to the backend and weather services.
- WeatherAPI: Integrated to fetch weather forecasts based on user input.
- Fork the repository.
- Create your feature branch (git checkout -b feature/your-feature).
- Commit your changes (git commit -m 'Add some feature').
- Push to the branch (git push origin feature/your-feature).
- Open a pull request.
This project is licensed under the MIT License - see the LICENSE.md file for details.
- Special thanks to the instructors and peers who provided guidance and feedback throughout the development of this project.