Giter Site home page Giter Site logo

marceee / elsa-code-challenge Goto Github PK

View Code? Open in Web Editor NEW

This project forked from elsaapp/elsa-code-challenge

0.0 0.0 0.0 755 KB

The Elsa code challenge. My Take

Home Page: https://elsa.science

JavaScript 5.30% Ruby 1.31% Objective-C 7.45% Java 10.85% TypeScript 74.09% Starlark 1.00%

elsa-code-challenge's Introduction

Elsa code challenge

You have a partially complete react-native app that you now need to improve by adding more features.

We will use your additional implementation of our existing app skeleton as a common ground to go deep into tech discussions so feel free to browse around a bit in the existing code and familiarize yourself with how we write react-native at Elsa using TypeScript, react-navigation, hooks, redux etc.

Feel free to bring in your favorite libs that will enable you to write better and more production ready code.

Please take up to 8h (at most!) to work on this.

Good luck! And have fun!

Features to be added (the backlog)

These are just examples of features, feel free to come up with your own. And there is no need to finish all of them.

  • A way to add one (or more) medication(s)
  • View your current medications (in a list maybe)
  • Remove one (or more) medication(s)
  • A history of all medications that you've been taking
  • A reminder of when to take a particular medication
  • At what date did you start taking a particular medication
  • Provide both the brand name (i.e Ipren) and the substance (Ibuprofen). What about grouping on substances rather than brand name?
  • A way to specify how strong the medication is (i.e. 1mg, 5g etc.) and what about grouping different strenghts together?
  • A way to specify how the medication is administered (orally, injection, infusion etc.)
  • Pause a medication, some medications shouldn't be used while pregnant or in combination with other medications
  • Your feature ™️

Environment setup

Instructions on how to setup a React Native development environment can be found here: https://reactnative.dev/docs/environment-setup

Make sure to follow the instructions for React Native CLI.

Support tools

At Elsa we use quite a lot of extra tools to help us write consistent, safe and readable code. I.e. prettier for code formatting, eslint for linting, and TypeScript to enable a type system and lean on the compiler.

If any of these tools are making you confused or slowing you down, then feel free to opt out of using them. For instance, even though we write almost all our code in TypeScript (.ts or .tsx files) these days you can write your code in plain old JavaScript and make it run side by side with our code, just create a .js file and start writing your code.

Installation

yarn install

iOS installation

cd ios
gem install cocoapods
pod install

Start React Native

NOTE! The React Native Bundler needs to be started on localhost:8081 before running the simulator / emulator. So start the bundler in a separate terminals by running the following command:

yarn start

And then either start the app in Android and/or iOS using:

Android emulator

react-native run-android

iOS simulator

react-native run-ios

elsa-code-challenge's People

Contributors

peralmq avatar johgusta 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.