nostalgia enables to self-track and gain insights into your life
Project description
Ecosystem for combining personal data
Nostalgia will help with gathering data from a variety of sources and enable you to combine them easily.
It's much like Home Assistant, providing a platform, but then for connecting data instead of IoT devices.
Afterwards, it will help you filter and visualize the data.
The architecture is as follows. You're looking at the core which contains the code for ingesting sources, installing the backend system and allows you to write scripts using Nostalgia Query Language.
If you want to add your own data that is not supported, please for now contact us directly in either discord or slack and we'll help you get started. You can also look at the open issues to see suggestions for new sources.
Available Data Bindings
Full list of current sources.
- Heartrate (Fitbit, Samsung Watch)
- Sleep (Fitbit, Samsung Watch, SleepCycle)
- Places (Google Timeline)
- Bank Payments (ING)
- Pictures (Google)
- Emails (Gmail)
- App Usage (Google/Android)
- Chat Conversations (WhatsApp, Facebook Messenger)
- Music listening (Google)
- Music identification (Shazam)
- Posts (Reddit, Facebook)
- File Visits (Emacs)
- Annotated Screenshots (Tesseract)
- Web (Nostalgia Chrome Plugin)
- Products
- Events
- Videos
- Google Search
- People
- Indoor Positioning (whereami)
- Public Transport (MijnOV)
Getting started
-
pip install nostalgia
-
Follow the instructions for a source of interest to ensure it is loaded
-
Use the data in an interactive session (run Python) OR run the timeline
Nostalgia Query Language - extending pandas
Given that you have payments set up, you could start Python and run:
In [15]: from nostalgia.sources.ing_banking.mijn_ing import Payments
payments = Payments.load()
payments.by_card.last_year.in_office_days.at_night(7, 12).by_me().heartrate_above(100).when_at("amsterdam").sum().round(2)
Out[15]: 7.65
payments.by_card\
.last_year\
.in_office_days\
.during_hours(7, 12)\
.by_me()\
.heartrate_above(100)\
.when_at("amsterdam")\
.sum()
Out[15]: 7.65
This will give the total expenses by card in the last week, but only on work days, at night, when my heart rate is above 80 and I'm in Amsterdam. It combined the generic class functionality, together with data from:
- A Payments provider
- A Location provider
- A Heartrate provider
Contributing
Please contribute the data sources that others could use as well!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file nostalgia-0.1.27.tar.gz
.
File metadata
- Download URL: nostalgia-0.1.27.tar.gz
- Upload date:
- Size: 283.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0a0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 841c7202f4eacfae0d7bd018fe2ed6ede91ef002dab176bcf9296fdd148cf02b |
|
MD5 | 4c5037d2fc1ddf1ac0f044e7a5233d77 |
|
BLAKE2b-256 | ebc3f3e0420415ed1da7398defb6d416673728385973eba68488988d49ea3de0 |
File details
Details for the file nostalgia-0.1.27-py2.py3-none-any.whl
.
File metadata
- Download URL: nostalgia-0.1.27-py2.py3-none-any.whl
- Upload date:
- Size: 60.6 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0a0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a7c67e2993d2f1b6bf4e128dcad3846290ecd2f9b00fc9859437ead90ae7d48a |
|
MD5 | 065ef19aa03034a2ef5bb3d6314e2505 |
|
BLAKE2b-256 | f91f605b8f6ad30a9b0900ea997d69818bb09243329523dedf0f18c4879f605d |