This is a full-stack web application built with Next.js, React, MongoDB and Tailwind. The application allows users to create, view, and update events. This project was developed for "Projektmunka 2." subject in the university.
- User authentication
- User profiles
- Event CRUD (Create, Read, Update, Delete)
Before you begin, ensure you have met the following requirements:
- Node.js (v14 or later recommended)
- A MongoDB account and cluster set up
- Google Cloud account for OAuth 2.0 credentials
- An Uploadthing account for image upload functionality
app/
: Contains the application's pages and API routes.components/
: Reusable React components.models/
: Data models for MongoDB.public/
: Static files like images.styles/
: Global CSS styles.utils/
: Utility functions and configurations.
Set up your environment variables by creating a .env
file based on the .example.env
template. Here is a list of required variables and their purposes:
GOOGLE_CLIENT_ID
: Your Google Cloud Console client ID for OAuth 2.0.GOOGLE_CLIENT_SECRET
: The client secret associated with your Google Client ID.MONGODB_URI
: Your MongoDB cluster connection URI.UPLOADTHING_APP_ID
: Your Uploadthing ID.UPLOADTHING_SECRET
: Your Uploadthing API key for image upload functionality.
- Next.js version: 14.0.3
- Next-auth version: 4.24.5
- React version: 18.2.0
- Tailwind version: 3.3.3
- UploadThing version: 5.7.4
To get a local copy up and running follow these simple steps:
- Clone the Repository
git clone https://github.com/dokesz/next-szevents.git
- Install dependencies
cd szevents npm install
- Run the app
The application should now be running on
npm run dev
http://localhost:3000
.
We welcome contributions to the Szevents project. If you're interested in contributing, please fork the repository and submit a pull request with your proposed changes. See our contributing guidelines for more information on how to get started.
This project is licensed under the MIT License
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.