Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vishal7095/wanderlust
Developed a full-stack web application built with Node.js, Express, MongoDB, Passport for authentication, offering listings, reviews, and user management functionality.
https://github.com/vishal7095/wanderlust
crud-operation ejs error-handling express-js middleware mongodb node-js
Last synced: 16 days ago
JSON representation
Developed a full-stack web application built with Node.js, Express, MongoDB, Passport for authentication, offering listings, reviews, and user management functionality.
- Host: GitHub
- URL: https://github.com/vishal7095/wanderlust
- Owner: vishal7095
- Created: 2024-03-18T11:12:17.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-03-20T17:15:14.000Z (10 months ago)
- Last Synced: 2024-03-20T18:43:45.289Z (10 months ago)
- Topics: crud-operation, ejs, error-handling, express-js, middleware, mongodb, node-js
- Language: JavaScript
- Homepage: https://wanderlust-80q4.onrender.com/listings
- Size: 43 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# WanderLust - Web Application
## Overview
This web application is built using Node.js, Express, MongoDB, and Passport for authentication. It provides functionality for managing listings, reviews, and user accounts.## Setup
1. Clone this repository.
2. Install dependencies using `npm install`.
3. Create a `.env` file in the root directory and define the following variables:
4. Start the server using `npm start`.
5. Navigate to `http://localhost:8000` in your web browser.## Features
- **Listings Management**: Users can create, update, and delete listings.
- **Review System**: Users can leave reviews for listings.
- **User Authentication**: Passport is used for user authentication with local strategy.
- **Flash Messages**: Flash messages for success and error alerts.
- **Session Management**: User sessions are managed using Express session and stored in MongoDB.
- **Static Files**: Static files like CSS and client-side scripts are served from the `public` directory.
- **Error Handling**: Custom error handling for 404 and other server errors.## Routes
- `/`: Home page.
- `/listings`: Listings management routes.
- `/listings/:id/reviews`: Routes for managing reviews for a specific listing.
- `/users`: User management routes.## Dependencies
- `express`: Web application framework.
- `mongoose`: MongoDB object modeling tool.
- `ejs-mate`: EJS template engine with layout support.
- `method-override`: Middleware for HTTP method override.
- `express-session`: Middleware for managing sessions.
- `connect-mongo`: MongoDB session store for Express session.
- `connect-flash`: Middleware for displaying flash messages.
- `passport`: Authentication middleware for Node.js.
- `passport-local`: Local authentication strategy for Passport.
- `dotenv`: Loads environment variables from a `.env` file.## Website Link
Access the website [here](https://wanderlust-80q4.onrender.com/listings).## Developer
This project was developed by Vishal Kumar Yadav.## License
This project is licensed under the [MIT License](LICENSE).