Who Brings is a fullstack application for creating and managing event lists. The app allows users to create events, add needed items, and assign people to bring those items.
- Express with TypeScript for server-side logic
- MongoDB as the database
- Mongoose for MongoDB object modeling
- CORS for Cross-Origin Resource Sharing
- dotenv for managing environment variables
- envalid for validating environment variables
- http-errors for enhanced error handling
- Morgan for logging HTTP requests
- Nodemon for automatically restarting the server during development
- TypeScript for static typing
- Vue 3 with TypeScript
- Vite for fast development server
- Pinia for global state management
- Vue Router for navigation
- Tailwind CSS for styling
- Vee-Validate and Zod for form validation
- TypeScript for static typing
-
Clone the repository and navigate to the
backend
folder:git clone https://github.com/username/whobrings.git cd backend
-
Install dependencies:
npm install
-
Create a .env file in the root directory with the following values:
MONGO_CONNECTION_STRING= PORT=5000
-
Start the backend:
npm start
-
Navigate to the frontend folder:
cd frontend
-
Install dependencies:
npm install
-
Create a .env file in the root directory with the following values:
VITE_API_URL=http://localhost:5000/api
-
Start the frontend development server:
npm run dev
- Create a new event list with a date, location, and description.
- Add items needed for the event.
- Assign who will bring each item.
- View all created lists and events on the Dashboard page.