Metadata-Version: 2.1
Name: nostalgia_chrome
Version: 0.0.24
Summary: Self tracking your online life!
Home-page: https://github.com/nostalgia-dev/nostalgia_chrome
Author: Pascal van Kooten
Author-email: kootenpv@gmail.com
License: MIT
Description: ## nostalgia_chrome
        
        Cross-platform Chrome History Analysis
        
        [![PyPI](https://img.shields.io/pypi/v/nostalgia_chrome.svg?style=flat-square)](https://pypi.python.org/pypi/nostalgia_chrome/)
        [![PyPI](https://img.shields.io/pypi/pyversions/nostalgia_chrome.svg?style=flat-square)](https://pypi.python.org/pypi/nostalgia_chrome/)
        
        ### Self tracking
        
        There is a movement of self tracking. Monitoring pulse, heartbeat and so on. But the most important is not being tracked: our online behavior.
        
        Making sure we can self document, we need the following things.
        
        1. Chrome only keeps its history for [a max of 90 days](https://support.google.com/chrome/answer/95589), so we need to **start saving history**.
        
        1. We need to **collect** HTML data from the pages we visit.
        
        1. We need to **extract and analyze** data from the HTML, such as code snippets, links, microdata, images, events.. anything really. This is done in [Nostalgia Core](https://github.com/nostalgia-dev/nostalgia).
        
        4. Allow **plugins** (and make them configurable, please [contribute](https://github.com/nostalgia-dev/nostalgia_chrome/issues/3)). The first example is that it will additionally track which videos you watch.
        
        ### What can you expect (Data overview)
        
        In `~/nostalgia_data/meta.jsonl` an index will be saved per visit:
        
            {
              "path":"/home/pascal/nostalgia_data/html/1576317113.7_httpsgithubcomnostalgiadevnostalgia_chrome.html.gz",
              "url": "https://github.com/nostalgia-dev/nostalgia_chrome",
              "time":"1576317113.75019"
            }
        
        
        In `~/nostalgia_data/html` the source HTML will be stored as `.html.gz` (reaching about 8x compression).
        
        In `~/nostalgia_data/videos_watched.jsonl` the data for events on HTML5 video elements will be stored (on stop playing/close tab):
        
            {
              "playingSince": 1576273573.08,
              "seekTime": 0,
              "playingUntil": 1576273599.977,
              "duration": 26.8970000744,
              "totalClipDuration": 3510.301,
              "pageLoadTime": 1576266470.316,
              "loc": "https://www.youtube.com/watch?v=Zz-bhLjVS5o",
              "title": "Lost Frequencies | Tomorrowland Mainstage 2019 (Full Set) - YouTube",
              "likes": 24137,
              "dislikes": 946
            }
        
        ### Installation
        
        1. Clone this repository: `git clone git@github.com:nostalgia-dev/nostalgia_chrome.git`
        
        1. In Chrome click the settings button and click "More tools" and navigate to "Extensions". Click "Load unpacked". Navigate to the `chromePlugin` folder and click "Open".
        
        1. `pip install nostalgia_chrome`
        
        1. To test it out, run `nostalgia_chrome run_server`. This will run the web server in the foreground so you can see that it works.
        
        1. Visit a (non-file / localhost) URL so that you can verify it works. The data will be stored in `~/nostalgia_data/meta.jsonl`, `~/nostalgia_data/html`.
        
        1. To make sure `nostalgia_chrome` gets automatically run on boot:
        
        On Linux (systemctl based):
        
            pip install sysdm
            sysdm create "nostalgia_chrome run_server" --extensions ""
        
        On Windows awaiting contribution for how to do this https://github.com/nostalgia-dev/nostalgia_chrome/issues/2
        
        On OSX awaiting contribution for how to do this https://github.com/nostalgia-dev/nostalgia_chrome/issues/1
        
Platform: any
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: Microsoft
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Unix
Classifier: Operating System :: POSIX
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Utilities
Description-Content-Type: text/markdown
