Welcome to the Event Finder repository! This full-stack application built with Next.js 14, TypeScript, Stripe, and TailwindCSS helps users discover and manage events effortlessly. Dive into the details below to learn how to set it up and contribute!
- User Authentication: Secure login and registration using Clerk.
- Event Management: Create, edit, and delete events with ease.
- Payment Integration: Seamless payment processing through Stripe.
- Responsive Design: Built with TailwindCSS for a clean and modern UI.
- Date Picker: Easy date selection with
react-datepicker. - Form Handling: Efficient form management using
react-hook-form. - Validation: Robust data validation with Zod.
- Custom UI Components: Leverage
shadcn-uifor consistent styling.
This project utilizes the following technologies:
- Next.js: A React framework for server-side rendering and static site generation.
- TypeScript: A superset of JavaScript that adds static types.
- Stripe: Payment processing service for handling transactions.
- TailwindCSS: A utility-first CSS framework for rapid UI development.
- Clerk: Authentication and user management.
- MongoDB: NoSQL database for data storage.
- React: JavaScript library for building user interfaces.
- React Datepicker: A simple and reusable datepicker component.
- React Hook Form: A library for managing form state and validation.
- Shadcn UI: A collection of UI components for React.
- Zod: A TypeScript-first schema declaration and validation library.
To set up the Event Finder application on your local machine, follow these steps:
-
Clone the repository:
git clone https://github.com/anas-ouchkouk/Event-Finder.git
-
Navigate to the project directory:
cd Event-Finder -
Install dependencies:
npm install
-
Set up environment variables: Create a
.env.localfile in the root directory and add the required variables. You can refer to the.env.examplefile for guidance. -
Run the application:
npm run dev
Now, your application should be running on http://localhost:3000.
Once you have the application running, you can explore its features:
- User Registration: Sign up to create an account.
- Login: Access your account with your credentials.
- Create Events: Use the form to add new events.
- Edit/Delete Events: Manage your events from your dashboard.
- Payment Processing: Test payments using Stripe's test keys.
For the latest releases and updates, visit our Releases section. Make sure to download and execute the latest version to enjoy all the new features!
We welcome contributions to enhance the Event Finder application. If you would like to contribute, please follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature/YourFeatureName
- Make your changes and commit them:
git commit -m "Add your message" - Push to the branch:
git push origin feature/YourFeatureName
- Create a pull request to merge your changes.
Please ensure your code follows our coding standards and passes all tests.
This project is licensed under the MIT License. See the LICENSE file for details.
For more information and updates, check out our Releases page. You can find the latest downloads and instructions for running the application.
Here are some screenshots of the application:
We plan to implement several features in future updates, including:
- Improved Search Functionality: Allow users to filter events based on categories and dates.
- Notifications: Send reminders for upcoming events.
- Social Sharing: Enable users to share events on social media platforms.
- Analytics Dashboard: Provide insights on user engagement and event attendance.
Join our community for discussions, support, and feedback. You can find us on:
- Discord: Join our server
- Twitter: Follow us
We appreciate your interest in Event Finder! Happy coding!