Skip to content

damskyftw/event-aggregator

Repository files navigation

Event Aggregator

A Vite + React web application designed to aggregate cryptocurrency events. This application allows users to browse, filter, and add cryptocurrency events from around the world.

Features

  • View cryptocurrency events with details (name, dates, location, links)
  • Filter events by city
  • Search events by name or location
  • Add new events with an interactive form
  • Upload event banner images
  • Responsive design for all devices

Prerequisites

Before you begin, ensure you have the following installed:

  • Node.js (version 14 or later)
  • npm (Node Package Manager)

You can verify your installations with:

node -v
npm -v

Setup Instructions

Follow these steps to set up the project locally:

  1. Clone the repository:
git clone https://github.com/damskyftw/event-aggregator.git
  1. Navigate to the project directory:
cd event-aggregator
  1. Install dependencies:
npm install
  1. Start the development server:
npm run dev

Running the Application

Once the development server is running:

  1. Open a web browser and visit http://localhost:5173 (or the URL shown in your terminal).
  2. You should see the Crypto Event Aggregator interface with:
    • A header with the application title
    • A filter section to search and filter events
    • An "Add New Event" button
    • A list of cryptocurrency events displayed as cards

Testing Hot Module Replacement (HMR)

Vite provides fast Hot Module Replacement for a smooth development experience:

  1. Open src/App.tsx or any component file in your code editor.
  2. Make a change to the file (e.g., modify text or styling).
  3. Save the file and observe the changes immediately reflected in the browser without a full page refresh.

Project Structure

The project is organized as follows:

  • src/: Source code
    • components/: React components (EventCard, FilterSection, etc.)
    • types/: TypeScript interfaces and types
    • data/: JSON data files
    • App.tsx: Main application component
    • main.tsx: Application entry point
  • public/: Static files
  • package.json: Project metadata, dependencies, and scripts
  • tailwind.config.js: Tailwind CSS configuration
  • postcss.config.js: PostCSS configuration

Contributing

Contributions are welcome! Here's how you can contribute:

  1. Fork the repository
  2. Create a branch for your changes: git checkout -b feature/amazing-feature
  3. Commit your changes: git commit -m 'Add some amazing feature'
  4. Push to the branch: git push origin feature/amazing-feature
  5. Submit a pull request

Please report bugs or feature ideas via GitHub issues.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published