Skip to content

shadeemerhi/simplifix

Repository files navigation

SimpliFix

Built by: Shadee Merhi, Calvin Zheng and Tom Adam.

Note: For deployment purposes, the original project repository was split into this current client repo and the backend. The commits in this repo and the mentioned backend were primarily deployment configurations; the majority of commits were made in the original repo.

Simplifix is an intermediary app where users can find and hire freelance contractors for labor-based work by browsing through posted 'gigs' as well as post their own gigs to gain clients if they possess skills in a particular area. Categories of work include, but are not limited to, plumbing, electrical, landscaping, hardwood flooring, and interior design. The platform manages all bookings and payments, and allows for live messaging between clients and contractors.

This repo is the front-end of Simplifix, which was built using React and Material UI. The back-end repo can be found here and was built using Node.js and Express in combination with PostgreSQL.

The front-end has been deployed to Netlify and the live site can be found here. The back-end is being hosted by Heroku. Please note that the app may contain empty data on the first load as the Heroku server is configured to sleep after 30 minutes of inactivity.

Final Product

Home page

"Home page"

Gigs page

"Browsing gigs"

Individual Gig details

"Individual Gig details"

Live messaging between clients and contractors (Socket IO Implementation)

"Live messaging between clients and contractors"

Placing a booking

"Placing a booking"

Booking confirmation (left is Client, right is Contractor, Socket IO Implementation)

"Booking confirmation"

After the Gig completion, the Contractor can specify hours (left is Client, right is Contractor)

"Specifying hours worked"

Payments with Stripe

"Payments with Stripe"

Order history after payment has been received

"Order history after payment has been received"

New Gig form

"Creating a new Gig"

Dependencies

  • React.js
  • Node.js
  • Express
  • Socket.io
  • Stripe
  • Material-UI
  • cookie-session

Stripe cards

Payment succeeds: 4242 4242 4242 4242

Payment requires authentication: 4000 0025 0000 3155

Payment is declined: 4000 0000 0000 9995

Cypress testing

command: ./node_modules/.bin/cypress open

Available Scripts

In the project directory, you can run:

npm start

Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits.
You will also see any lint errors in the console.

npm test

Launches the test runner in the interactive watch mode.
See the section about running tests for more information.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages