Skip to content

Minimilast 20-minute/20-second eye care timer built with React Native Expo πŸ‘

License

Notifications You must be signed in to change notification settings

bdbaraban/twenty-timer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

NOTE 2-13-2021

Unfortunately, it appears the Expo SDK version used in this project is no longer supported by Expo.io, so please note that my published app is not currently working.

-- Brennan


Twenty Timer

A minimilast 20-minute/20-second eye care timer for mobile.

CircleCI build status MIT License

Gif demonstrating app

Twenty Timer is published on Expo - download it now!

Description πŸ’¬

Twenty Timer is a mobile app for timing 20-minute/20-second intervals. During prolonged screen use, optometrists recommend what is termed the 20-20-20 rule - for every 20 minutes spent looking at a screen, look at something 20 feet away for 20 seconds. Run this app to run automatic 20-minute/20-second intervals and protect your eyes!

Features

  • Minimalist design.
  • 5 color themes.
  • Option to disable phone alerts and run timers automatically.

Code β˜•

Twenty Timer is built in React Native and Expo, using TypeScript. Code highlights include:

Dependencies πŸ‘«

Primary:

Library Version
Expo ^34.0.4
React ^16.9.0
React Native github.com/expo/react-native/archive/sdk-34.0.0.tar.gz
MobX ^5.13.0
React Navigation ^3.12.1
React Native Testing Library ^4.0.8

View the complete list of dependencies in package.json.

Development πŸ’»

To run Twenty Timer locally, you must have the following installed:

  • Node.js
    • I develop Twenty Timer on Node v10.16.3.
  • npm or yarn
    • I develop Twenty Timer using yarn.

Then, install dependencies:

yarn install
# or
npm install

Finally, start the Expo development server

yarn start
# or
npm run start

Tests πŸ“

Twenty Timer includes an entire test suite! Run it with the following:

yarn test
# or
npm test

Limitations πŸ˜•

In practice, Twenty Timer would be most practical as a background app, a timer that can run even while foregrounded. Unfortunately... React Native does not currently offer great support for background processes, even less so for React Native Expo.

Maybe possibly one day, I'll eject this application to introduce native background code, it will be wonderful, and I'll get the app officially published. But, at the moment, this is a bit beyond my scope πŸ˜….

Author βœ’οΈ

License πŸ”’

This project is licensed under the MIT License - see the LICENSE file for details.

About

Minimilast 20-minute/20-second eye care timer built with React Native Expo πŸ‘

Resources

License

Stars

Watchers

Forks

Packages

No packages published