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.
- 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
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
Follow these steps to set up the project locally:
- Clone the repository:
git clone https://github.com/damskyftw/event-aggregator.git
- Navigate to the project directory:
cd event-aggregator
- Install dependencies:
npm install
- Start the development server:
npm run dev
Once the development server is running:
- Open a web browser and visit http://localhost:5173 (or the URL shown in your terminal).
- 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
Vite provides fast Hot Module Replacement for a smooth development experience:
- Open
src/App.tsx
or any component file in your code editor. - Make a change to the file (e.g., modify text or styling).
- Save the file and observe the changes immediately reflected in the browser without a full page refresh.
The project is organized as follows:
src/
: Source codecomponents/
: React components (EventCard, FilterSection, etc.)types/
: TypeScript interfaces and typesdata/
: JSON data filesApp.tsx
: Main application componentmain.tsx
: Application entry point
public/
: Static filespackage.json
: Project metadata, dependencies, and scriptstailwind.config.js
: Tailwind CSS configurationpostcss.config.js
: PostCSS configuration
Contributions are welcome! Here's how you can contribute:
- Fork the repository
- Create a branch for your changes:
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
- Submit a pull request
Please report bugs or feature ideas via GitHub issues.
This project is licensed under the MIT License - see the LICENSE file for details.