To demonstrate the use of stateless RESTful web services by creating prototype of Freelancer web application. (www.freelancer.com).
Individual assignment for CMPE 273 - Enterprise Distributed Systems course during Software Engineering.
- I can Sign Up, Sign In and Logout from application.
- As an authenticated user, I can bid on projects posted.
- As an authenticated user, I can Post Project and get bids from other users.
- As an authenticated user, I can Hire freelancer on the basis of bids received.
- As an authenticated user, I can Check open projects and bid on projects posted by other users.
- As an authenticated user, I can Check project completion date when freelancer is hired.
- As an authenticated user, I can Create and edit profile information.
For Detailed Description check Project Report
Applications uses a simple Client-Server architecture
- Client Side : ReactJS (HTML5 and Bootstrap)
Consists of total 20 React components.
Effective modularisation is used in each component so as to increase reusability.
- Server Side : Java, Springboot, Hibernate
Consists of 18 APIs to serve client requests.
- Database : MySQL
Consists of mainly 4 tables.
User : To store user related information
Project : To stores project details posted by user.
Attachments : Stores server path for attachments like project document and user profile pictures
Bid : To store bids
Area | Technology |
---|---|
Front-End | React, Redux, React Router, Bootstrap, HTML5, CSS3, Javascript ( ES6 ) |
Back-End | Java, Springboot, Hibernate |
API Testing | JUnit, Postman |
Database | MySQL |
Performance Testing | JMeter |
NPM Modules | BCrypt, Multiparty, Axios |
- Create database schema
- Go to path : react-client
- npm install
- npm start
This will start ReactJS server on 3000