Git Product home page Git Product logo

birdie-test-1's Introduction

Birdie Developer Test

We would like to thank you for taking our developer test. We understand that candidates will often have many of these tests to complete, therefore we think it's important to cut straight to the important stuff.

About this repository

We've gone ahead and created a boilerplate that mostly represents the kind of technical stack we work with. The backend/ is a barebone Express server and the frontend/ has been generated with npx create-react-app frontend --template typescript. this saves you from having to create boilerplate code, but you are free to decide to use only parts of it, for example:

  • If you prefer to use Javascript rather than Typescript, you can use npx create-react-app frontend.
  • If you want to use Redux, you can use npx create-react-app frontend --template redux or npx create-react-app frontend --template redux-typescript.

Context

At Birdie, our app allows care givers to record observations of older adults receiving care, we name them care recipients.

These could be anything from the recording of their mood (happy, sad, bored, confused) to what they drank today (1 pint of water).

Each of these observations are recorded as events in our database. Here's an example of a mood observation recorded in this event format:

{  
   "id":"decaa026-2ce5-49cb-aff9-92326b85a98c",
   "event_type":"mood_observation",
   "visit_id":"39b94aab-cc35-4874-807f-c23472aec663",
   "timestamp":"2019-04-23T10:53:13+01:00",
   "caregiver_id":"4786d616-259e-4d52-80f7-8cf7dc6d881a",
   "care_recipient_id":"03f3306d-a4a3-4179-ab88-81af66df8b7c",
   "mood":"okay",
},

Here's a quick explanation of the base properties:

  • id: Uniquely identifies the observation.
  • event_type: Title we use to categorise our events.
  • visit_id: Observations are traditionally observed during a visit between the caregiver (carer) and care recipient. This ID identifies that visit.
  • caregiver_id: Identifies who the caregiver (carer) was that made this observation.
  • care_recipient_id: Identifies the care recipient this observation is for.

On top of that, there can be additional properties based on the event_type:

  • mood describes the mood of the care recipient as reported by the caregiver

The database (we should have sent you credentials) contains some of these observation events, within the events table.

Challenge

Display the information to a family member

Your challenge is to clone this repository and create a small web application to visualize these observations, so that looking at it is valuable to a family member of this care recipient

This could mean presenting it in the following forms:

  • A table
  • A graph
  • A timeline

Or any other way/combination of those. We are test driven here at Birdie so please make sure you write tests to validate your work.

Deliverables

  • Put your code on Github and send us the link to the repository
  • Deploying the code to a platform like Heroku is a great plus.
  • If you are unable to deploy your code please send a recording of the application working

Set up

Here's the technical stack this boilerplate was made with:

Front end

Back end

Usage

  1. Start the API. (Run the following commands within the backend folder)

    a. Install the dependencies

    npm install

    b. Run the HTTP server (will start on port 8000)

    npm run dev
  2. Start the React app (Run the following commands within the front-end folder)

    a. Install the dependencies

    npm install

    b. Run the application (will start on port 3000)

    npm start

birdie-test-1's People

Contributors

fenderface66 avatar glecalvez avatar sroze avatar timrobinson1 avatar tketa avatar williamdclt avatar

Watchers

 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.