Job catalog

About

This is an app for quick contract job, similar to the likes of Meetup. It has some form of social networking feature, eg. the ability to view user's profile and chat.

This app has been developed for desktop web platform with JavaScript and React.

Features

  • CRUD operation with backend server (Node)
  • List Jobs (Sorting, Filtering)
  • Google Maps and Autocomplete
  • View & Edit Job Detail (with authentication)
  • Chat system in the job page
  • Login / Register
  • View other user's profile
  • Edit self user profile
  • Join / Leave Job
  • Custom Notifications

Description

This is an educational app developed in requirement for the Web Enterprise Development Course which I undertook during my MSc in Computing.

Adhering to best practices recommended for React, components are designed with a single responsibility principle. Redux aids in centralizing the state which would then be passed down the component tree as props. Proper usages of state in components, together with lifecycle and async functions ensure the user interfaces are fluid and responsive.



Learn More

Job catalog

About

This is a RESTful api that is responsible for providing data to the React client app. The Api accepts json content query parameters in requests and all responses are encoded in JSON, including errors.

This app has been developed for desktop web platform with JavaScript and Node.

Features

  • CRUD operation
  • Authentication
  • Validations
  • Filtering and Sorting
  • Pagination

Description

This is an educational app developed in requirement for the Web Enterprise Development Course which I undertook during my MSc in Computing.

Adhering to best practices recommended for creating RESTful API, this app has adopted the Clean Architecture pattern and supports the idea of separation of concern, making the model, endpoints and business logic independent of each other. Common functionalities like querying, filtering, sorting, pagination are also implemented to allow MongoDB to serve the required content to the user. Third party services like Pusher enable the client app to listen for changes in the server. Also present in this app is graceful error handling and logging which enable developers to diagnose uncaught exceptions.

Experience in unit testing using Mocha, Chai and Supertest. Follows best practices and keeping test cases as isolated as possible.



Learn More