Skip to content

A Fitbit app for getting data related to the school Stockholm Science and Innovation School.

Notifications You must be signed in to change notification settings

sotpotatis/ssis-fit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The logo of the app

SSIS Fitbit App

This is an application I've written for displaying school-related data for Stockholm Science & Innovation School on a Fitbit watch!

This is my first Fitbit application ever and my first project using the Fitbit SDK, so I learned a lot and also created some relevant functions and libraries to make future development easier.

The app can be downloaded here.

The current version of the app is built for the Fitbit Versa 3 and the Fitbit Sense, the currently available devices on the Fitbit SDK v5.

Features

Lunch menu

The daily lunch menu is just a tap away, right on your wrist! The lunch menu is retrieved from my own API.

Schedule

What's the next lesson? Worry no more ;) Using the school's own API, the schedule with lesson, room and teacher information is now also brought to your wrist.

Info

Also see the Changelog for update information.

Development

Here is how to set up a local development environment:

Folder structure

The Fitbit app is inside the ssis/ folder.

App screenshots are inside the screenshots/ folder. There is also a video available in the website/ folder called app.gif.

A website with information about the app (work in progress) is available inside the website/ folder and currently also at https://20alse.ssis.nu/fit.

Notes before developing

It takes some time to learn the Fitbit SDK. If you have not used it before, here are some great documentation pages that may help you (this is not a complete list, you'll have to do some searching yourself):

Setup

  1. Clone the repository.
  2. Run npm install.
  3. Although testing live is the best, getting the Fitbit OS simulator is great for quickly debugging changes. After downloading, make sure to configure it for the Versa 3 by navigating to "Settings"->"Device type" and choose "Versa 3" (atlas) or "Sense" (vulcan).
  4. Now you can npx fitbit. You might have to log in if it is your first time using the tool.
  5. For building and installing the app, type bi (short for build-and-install). For installing the app without rebuilding, type install.
  6. Before committing, take use of the automatic code formatting on commit (Prettier) by using Pre-commit. Run pre-commit install to install the code formatter.

Dependencies

Other that the Fitbit SDK tools, Luxon is the only dependency.

Icons

This project uses icons from the Material Design Icons. They are in the resource/ folder. Material Design Icons is licenced under Apache 2.0. Many thanks for great icons!

To-do list/wishlist

  • Automatically scroll to active schedule item

  • Implement backswipe functionality (backswiping currently will exit the app)

Troubleshooting

The app displays a "timeout" error

If you have your phone with you, there's a possibility your phone took a while to connect and that everything will work if you close the app and then open it again.

The connection interface from the watch to your phone (used for retrieving the menu and schedule) is a part of Fitbit's API. You should probably try the troubleshooting from Fitbit. In extreme cases, it might also help reinstalling the app. If you believe there is an error in my code, you're welcome to open a pull request!

About

A Fitbit app for getting data related to the school Stockholm Science and Innovation School.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages