REPOSITORY OVERVIEWLive repository statistics
★ 1Stars
⑂ 0Forks
◯ 0Open issues
◉ 1Watchers
30/100
OPENREPOHUB HEALTH SIGNALLimited signals
A transparent discovery signal based on current public GitHub metadata.
Recent activity35% weight
10 Community adoption25% weight
0 Maintenance state20% weight
100 License clarity10% weight
0 Project information10% weight
60 This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
README preview
Wanderlust
Welcome to Wanderlust! This is a project designed to simulate an Airbnb-like platform, showcasing listings for travelers and hosts. This project allows users to explore properties, leave reviews, and manage their accounts with secure authentication and authorization.
Features
Core Features
-
User Authentication:
- Secure registration and login.
- Password hashing for security.
- Session-based authentication.
-
Authorization:
- Role-based access control (Admin, User).
- Restricted actions based on user roles.
-
Property Listings:
- View a wide range of properties with details like location, price, and amenities.
- Add, edit, or delete properties (admin access only).
-
Review System:
- Users can write, edit, and delete reviews for properties.
- View aggregated ratings and user feedback.
-
Responsive UI:
- Fully responsive design for mobile, tablet, and desktop users.
Getting Started
Follow these steps to set up and run the project locally.
Prerequisites
Ensure you have the following installed:
Installation
-
Clone the repository
Open your terminal and run:
git clone https://github.com/Umesh-Verma07/Wanderlust.git
cd Wanderlust
-
Install dependencies
Run the following command to install all required packages:
npm install
-
Set up the environment
Create a .env file in the root directory and add the following environment variables:
PORT=3000
DATABASE_URL=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_key
CLOUD_NAME=your_cloud_name
CLOUD_API_KEY=cloud_api_key
CLOUD_API_SECRET=cloud_api_secret
-
Start the server
Run the following command to start the application:
npm start
Technologies Used
Frontend
- EJS (Embedded JavaScript): For rendering dynamic HTML templates
- CSS: For styling
Backend
- Node.js: Server-side JavaScript runtime
- Express.js: Backend framework
- MongoDB: NoSQL database for storing user and property data
Other Tools
- npm password: For secure password hashing and authentication
- Express-Session: For session management
- Mongoose: MongoDB object modeling for Node.js
- Git/GitHub: For version control
API Endpoints
Authentication
POST /api/auth/register: Register a new user
POST /api/auth/login: User login
GET /api/auth/logout: User logout
Properties
GET /api/properties: Fetch all properties
POST /api/properties: Add a new property (admin only)
PUT /api/properties/:id: Update a property (admin only)
DELETE /api/properties/:id: Delete a property (admin only)
Reviews
POST /api/reviews: Add a review
PUT /api/reviews/:id: Edit a review
DELETE /api/reviews/:id: Delete a review
ALGORITHMICALLY RELATEDSimilar Open-Source Projects
Selected from shared topics, language and repository description—not editorial ratings.
30 days of JavaScript programming challenge is a step-by-step guide to learn JavaScript programming language in 30 days. This challenge may take more than 100 days, please just follow your own pace. These videos may help too: https://www.youtube.com/channel/UC7PNRuno1rzYPb1xLa4yktw
86/100 healthRecently updatedPopularActive repository
JavaScriptNo license#30daysofjavascript#angular#challenge#css
⑂ 10.5K forks◯ 368 issuesUpdated today
This is a list of projects which have curated tasks specifically for new contributors. These issues are a great way to get started with a project, or to help share the load of working on open source projects. Jump in!
81/100 healthRecently updatedActive repositoryHas homepage
JavaScriptNOASSERTION#good-first-issue#help-wanted#javascript#ruby
⑂ 2.3K forks◯ 89 issuesUpdated 1 day ago
Project homepage ↗