Skip to content

real-time bidding platform using Node.js, Express, Socket.io, and PostgreSQL Database

Notifications You must be signed in to change notification settings

tanbir7/real-time-bidding-platform

Repository files navigation

Real-Time Bidding Platform RESTful API for a real-time bidding platform using Node.js, Express, Socket.io, and a SQL database (PostgreSQL or MySQL). The API supports advanced CRUD operations, user authentication, role-based access control, real-time bidding, and notifications. It allows users to bid on items in real-time and receive notifications about new bids.

Features: Real-Time Bidding: Users can bid on items in real-time without needing to refresh the page. WebSocket Notifications: Users receive real-time notifications about new bids via WebSocket connections. User Authentication: Secure user authentication system to ensure bid authenticity. File Uploads: Support for uploading item images. RESTful API: Provides a RESTful API for managing users, items, bids, and notifications.

Setup Clone the repository: bash Copy code git clone https://github.com/tanbir7/real-time-bidding-platform.git

Install dependencies: bash Copy code cd real-time-bidding-platform npm install Set up the database: Create a PostgreSQL database and update the database configuration in config/config.json with your database credentials.

Run Sequelize migrations to create database tables:

bash Copy code npx sequelize-cli db:migrate Start the server:

bash Copy code npm start Access the application:

Open your web browser and navigate to http://localhost:3000 to access the application.

API Routes Authentication Routes:

POST /users/register: Register a new user. POST /users/login: Login with existing credentials. Item Routes:

GET /items: Get all items. GET /items/:itemId: Get details of a specific item. POST /items: Create a new item. PUT /items/:itemId: Update details of an item. DELETE /items/:itemId: Delete an item. Bid Routes:

GET /items/:itemId/bids: Get all bids for a specific item. POST /items/:itemId/bids: Place a bid on a specific item. Notification Routes:

GET /notifications: Get all notifications for the current user.

DELETE /notifications/:notificationId: Delete a notification.

Technologies Used: Node.js Express.js Sequelize (with PostgreSQL) Socket.IO JSON Web Tokens (JWT) for authentication

NAME: Tanbir Muskan Bhangi

About

real-time bidding platform using Node.js, Express, Socket.io, and PostgreSQL Database

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages