Skip to content
This repository has been archived by the owner on Jan 12, 2023. It is now read-only.

remirobichet/hapsco

Folders and files

NameName
Last commit message
Last commit date

Latest commit

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

Repository files navigation

hapsco

πŸ“ˆ Data Visualization over PWA

Requirement πŸ› οΈ

Node version 10.15.1

Angular CLI: 8.3.5

Angular 8.2.7

Dev ⌨️

Run local : npm start

Netlify ☁️ πŸ—οΈ

Tool used to builds deploys and hosts this app

Deploy πŸš€

npm build:netlify command is used in netlify.toml file that override netlify parameter.

It runs ng build --prod command to build the app for production and netlify-lambda build src/functions to build and serve lambda functions.

Functions ➿

As mentioned above, netlify-lambda helps to build and serve lambda functions.

Run npm run serve:netlify will start a dev server for the source folder and route requests with a .netlify/functions/ prefix, with a default port of 9000.

Environment variable are stored in Netlify project and reuse in lambda function with process.env.VAR_NAME format.

Firestore πŸ—ƒοΈ

Realtime database πŸ—ƒοΈ βŒ›

A firestore realtime database is used to store devices IDs.

Cloud Firestore πŸ—ƒοΈ ☁️

A Cloud firestore database is used to store data from the app.

PWA πŸ“±

This app is generated as a PWA. Thus, end-users can add the app to home screen on theirs phone/tablets.

Reminder ⏰

End-users can accepts push notifications to receive a push notification every day as a reminder.

A cron job is launched every day to the netilfy function endpoint in order to send the push notification.

Styles & components πŸ’„

I have chosen Angular Material to style and create components.

A dark theme is set-up in styles.scss.

Many Angular Material components have been used across the app.

Todo πŸ“

  • Implement test βœ…
  • User login w/ Firestore auth ❓ πŸ™β€β™‚οΈ
  • Firestore production mode ❓ πŸ”§