Coder Social home page Coder Social logo

anotherkamila / stalky Goto Github PK

View Code? Open in Web Editor NEW
6.0 3.0 2.0 445 KB

Self-hosted app to keep track of anything you want. Don't let others stalk you, stalk yourself!

Home Page: http://www.notstalking.me/

License: MIT License

Python 4.49% Makefile 9.94% HTML 3.80% Elm 76.24% CSS 5.53%
geeks tracking data-storage data-analysis csv privacy-by-design self-hosted timeseries

stalky's Introduction

Stalky: The tracking app that does not track you!

Stalky is a self-hosted app that helps you keep track of anything you want. Don't let others stalk you, stalk yourself!

You can track sleep, mood, caffeine, antisocial tendencies or anything you can think of. Stalky will then help you make sense of the data by analyzing it and finding interesting stuff in it. And it all runs on your computer, never sending your data to anyone else.

Your data is truly in your hands -- everything is stored as CSVs, so you can open it with your favorite text editor (or your favorite data analysis tool, or a crazy visualization program, or anything). Built for geeks, by a geek!

My secret plan is to integrate this with a few hardware trackers, details TBA. I want to nail down the basics first though, so it will take a while.

Check out the demo at stalkydemo.herokuapp.com#hello!

I want this!

Requires python3 and node*. Install these using your package manager, e.g. sudo apt-get install python3 nodejs.

Type make run, open http://localhost:8500 and enjoy!

Put it on a server behind a reverse proxy such as nginx with HTTP auth if you want to use this from multiple devices.

For more details, check the wiki.

* Actually, doesn't really require node because I have sinned and the compiled file is in the repo. Look here to go without.

Fun integrations

You can use IFTTT's Webhooks endpoint to get data from just about anywhere. Example: Shout "Hey Google, write down, yoga 3" at your fancy expensive speaker. More details in the wiki.

Also, it's just HTTP -- it's easy to roll your own!

I like this!

Me too :-D If you want to increase my motivation and therefore the chances that I'll write some code today, you can say thanks or support me on Liberapay. Or you can write code!

stalky's People

Contributors

anotherkamila avatar jolandanava avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

stalky's Issues

Add data source: Beeminder goal progress

Can use raw data from a goal, BUT need to be able to configure whether it's a total (i.e. need to do differentiation) or a daily thing. Or does actually beeminder support a daily thing?

Add functionality: no value => auto-add value 1

  • Server should, upon receiving any label and no value, default to the value 1 instead of throwing an error
  • Client should not complain about no value

This would make stalky more suitable for Boolean values such as "had medication". Currently this is a tiny bit awkward.

Better website

  • improve content
  • link / embed demo
  • serve from the pretty domain
  • link it from places

Simplify deployment

  • Make single-command deployments possible
  • server: serve static files; get PORT and DATAFILE from env vars
  • Define precise dependencies that should be installed by the package manager and make sure everything else is handled by the Makefile
  • Make it trivial to set up push-to-deploy

Host a demo

  • create a VM / jail / something somewhere
  • set up resource limits on the jail / VM / whatever: disk, cpu, network
  • set up something to restore state every 5 minutes
  • deploy & link from README

send by pressing Enter

Add an "on Enter key" event to the data input field, so that pressing Enter sends data. Right now one has to press Tab then Enter (to focus and use the Send button), which is annoying.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.