Code Monkey home page Code Monkey logo

furiosa-autos's Introduction

furiosa-autos

Welcome to the Saltside Web code challenge! Please read and follow the instructions below in detail and submit your project when you're satisfied with the results.

Project

The project consists of a simple express application with jade templating. It is currently incomplete and your tasks will consist of completing it, bugfixing it, and applying some basic responsive styling to it.

Development

First, run npm i to install dependencies. Start the server by running npm start and start working! The server will restart automatically when you update code that requires it to do so.

The server runs on http://localhost:3000.

Styling

To add your own styling - change public/style.less.

Fake API

A fake, promise-based, API is provided in through lib/api. This file may not be changed in your solution!

The fake api contains the following functions. All of them are promise-based and returns a promise that will resolve with the data listed below.

fetchModels() - an array of strings representing car models.

Example: ['Saab', 'Volvo']

fetchServices() - an array of objects, each representing a service that the company performs.

Example:

{
	job: 'Wheel replacement',
	cost: '120 caps',
	type: 'repair'
}

fetchCustomerReviews() - an array of objects, each representing a customer review.

Example:

{
	content: 'There is no better workshop in the wastelands!',
	source: 'Bullet Farm'
}

fetchCorporateReviews() - an array of objects, each representing a corporate review.

Example:

{
	content: 'There is no better workshop in the wastelands!',
	source: 'Bullet Farm'
}

Tasks

All of the tasks must be solved without any client-side JS and without changing api.js

Bootstrap 3 is available in the project and you may use it to style any components.

Keep in mind - your solution must be accessible from the provided UI. If you add endpoints, also add ui controls for accessing them in the application.

What we're looking for

When we evaluate your solution we are primarily looking for the following qualities:

  • Functionality - A working solution.
  • Code cleanliness and quality - An understandable solution.
  • Simplicity - Keep it simple.

We are not looking for:

  • A visually stunning solution - Try to use the styles available in bootstrap to solve the tasks.
  • Plans for the far future - Solve the tasks at hand rather than preparing the application for 10k+ rpm.

Task 1 - Implement the /models endpoint

  • Implement the models endpoint. Use the provided api object to retrieve mock data from the api with the fetchModels() function. Render a list of models.
  • Make alphabetic sorting possible (ascending, descending, none) by adding a UI component.

Task 2 - Implement the /services endpoint

  • Implement the services endpoint. Use the provided api object to retrieve mock data from the api with the fetchServices() function. Render a list of provided services.
  • Make the services filterable by type. Add some sort of UI component that lets the user filter on the three types repair, maintenance, and cosmetic.

Task 3 - Bugfix the /reviews endpoint

  • Bugfix the reviews endpoint. It should render all Corporate and Customer reviews. Order is not important.
  • Add a UI component that lets the user search for reviews. The search shall look for matches in both content and source.

Task 4 - Make the application responsive

  • Make the application viewable and usable on mobile devices as well as desktop devices.

Feel free to use bootstrap to solve this task, it is included by default. Assume a minimum device width of 320px.

You may decide yourself how to style the content on each page, the criteria for completing this task is that the content is viewable, and usable, on a mobile device.

Submitting

Submit a zip/rar file with your project to our recruitment contact.

furiosa-autos's People

Contributors

alepek avatar

Watchers

Rajasekhar avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.