An online marketplace where travelers can discover and book tours, activities, and attractions offered by local operators and providers.
The project is divided into three main parts:
- Frontend: Built with Nuxt 3, located in the
nuxt-frontend
directory. - Backend: Built with Express.js, located in the
express-backend
directory. - Shared: TypeScript types shared across the frontend and backend.
- Node.js (v16 or higher)
- MongoDB
- Docker (optional, for containerized deployment)
git clone https://github.com/DulanHewage/tour-connect.git
cd tour-connect
To connect to the MongoDB database, follow these steps:
-
Create a
.env
file in theexpress-backend
directory. -
Add the MongoDB URI to the
.env
file:MONGO_URI="your-mongodb-uri"
Replace "your-mongodb-uri"
with your actual MongoDB connection string.
To seed the database with dummy data, follow these steps:
-
Navigate to the
express-backend
directory:cd express-backend
-
Run the seed command:
npm run seed
This will connect to the database, delete existing documents, and insert the dummy data for suppliers and activities.
- Install dependencies and run the backend development server:
cd express-backend
npm install
npm run dev
- Install dependencies and run the frontend development server:
cd nuxt-frontend
npm install
npm run dev
To build and start the production servers, follow these steps:
- Start the frontend server:
# In the root folder, run:
npm run start:client
- Start the backend server:
# In the root folder, run:
npm run start:server