Giter Site home page Giter Site logo

donatoaguirre24 / sleep-app Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 542 KB

Sleep app made with React Native

JavaScript 2.65% Starlark 0.89% Java 23.15% Makefile 2.22% C++ 10.25% Shell 0.71% Objective-C 3.52% Objective-C++ 6.71% Ruby 1.54% TypeScript 48.38%

sleep-app's Introduction

๐Ÿ› Sleep App

โฏ Demo

iOS

ios-demo.mov

Android

android-demo.mov

Tests & Linters

tests-and-linters demo

๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป Technical Documentation

Setup

Run the App

  • Prerequisite: setup your environment
  • Install dependencies: yarn && pod install --project-directory=ios
  • Start metro server: yarn start (keep it running)
  • Launch iOS simulator: yarn ios
  • Launch Android simulator: yarn android

Core Dependencies

Project Structure

โ”œโ”€โ”€ src              # The main container of all the application's code
โ”‚   โ”œโ”€โ”€ data         # Any kind of constant that you have
โ”‚   โ”œโ”€โ”€ localization # Locale files
โ”‚   โ”œโ”€โ”€ navigation   # Navigation logic and types
โ”‚   โ”œโ”€โ”€ features     # Application screens/features
โ”‚   โ”œโ”€โ”€ services     # Business logic and utilities
โ”‚   โ”œโ”€โ”€ ui           # Shared components and UI elements (such as a button or the app's theme)
โ”‚   โ””โ”€โ”€ app.ts       # Main app component
โ”œโ”€โ”€ tests            # The main container of all the application's tests
โ””โ”€โ”€ index.js         # Entry point of the application as per React-Native standards

๐Ÿ”Ž Research & Product

Inspiration Sources

Biases

  • Being a big consumer of Apple products, I have a predilection for the aesthetics of iOS.
  • I decided to focus on polishing the look and feel of the iOS app because the Eight Sleep app seems to be quite iOS-oriented. Also, based on the subscriptions and products they offer, I bet most of their users are on iOS.

Improvement Ideas

  • Add proper icons for the heart and respiratory rate
  • Include min and max values for health metrics (heart and respiratory rate)
  • Improve charts animations in Android
  • Fetch data from the network instead of using static data
  • Add app icon and splash screen
  • Add skeletons to handle loading states (if network requests were made)
  • Add haptic feedback to the overview card tap
  • Improve x-axis accuracy and the ticks labels on charts

Time Management Decisions

I tried to create a rich yet simple visual experience. Since the goal of health/fitness app users is mostly to track and improve their performance, I focused on the charts and visual elements to make it easier.

Given the time constrains and the fact that I was provided just with a detail/show endpoint but not with an overview/index one, I decided to use static data. To take advantage of it, I created an "overview" file combining information from the three users' data and feeds the landing screen of the app.

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.