GitXplorerGitXplorer
p

docket

public
3 stars
0 forks
0 issues

Commits

List of commits on branch master.
Unverified
2d85cdcffeb43c4f02b2187003cd57d1e502e8eb

Upgrade todoist python

ppalfrey committed 5 years ago
Unverified
9138e191446b3e6f8145fab2d778183841b01bdf

If can't get id, print info

ppalfrey committed 5 years ago
Unverified
baef0ab1e2a521f6163ae2b21b84ddee933157cc

Upgrade sqlalchemy

ppalfrey committed 5 years ago
Unverified
a087063e8133b045848925b63a8ff255dc45f938

Use psycopg2 binary and pip-tools

ppalfrey committed 5 years ago
Unverified
7205b80ce2457ec35a3b5dbd88ddae5cb93a4c14

Remove old refreeze script

ppalfrey committed 5 years ago
Verified
44092f729f6c54eaf5ff16c3ddadd839946ac294

Merge pull request #21 from palfrey/dependabot/pip/werkzeug-0.15.3

ppalfrey committed 5 years ago

README

The README file for this repository.

Docket

Build Status

Docket allows users of both Beeminder and Todoist to get a merged view of both by adding synchronised tasks in Todoist for your Beeminder "last day to do this thing" days.

Local Setup

  1. Copy config.yaml.example to config.yaml and fill in the values there as we go through the later steps
  2. Register app at https://developer.todoist.com/appconsole.html and get the OAuth Client/Secret for config.yaml
  3. Register app at https://www.beeminder.com/apps/new and again get the OAuth values for config.yaml
  4. If you've already got Bower installed, just run bower install. Otherwise, install Node.js and run npm install, which will install and run Bower.
  5. pip install -r requirements.txt (preferably within a Virtualenv because that's just sensible)
  6. ./debug-run.sh

You've now got a running version of the app at http://localhost:5000. Running python docket.py will synchronise all registered users.

Heroku Setup

There's a running instance of this at https://docket-heroku.herokuapp.com/ but here's how I did that.

  1. Get a Heroku account. Free ones work fine.
  2. Install the Heroku toolbelt
  3. Goto your dashboard and make a new app. Mine was called "docket-heroku" but you'll need to use another name for yours, and replace anywhere I use that.
  4. heroku git:remote --app docket-heroku to make it possible to push to deploy to your new app.
  5. We're using multiple buildpacks, both the Python (backend) and Node.js (assets). Just doing heroku buildpacks:add --index 1 heroku/nodejs should get you configured correctly, but for reference the result of heroku buildpacks should say (and if it doesn't, read the docs)
    1. heroku/nodejs
    2. heroku/python
  6. Add the PostgreSQL addon
  7. Go into the settings for your app and set the following config variables:
    • BEEMINDER_CLIENT_ID/BEEMINDER_CLIENT_SECRET - Beeminder app configured as per above, but with your Heroku URL, not localhost
    • TODOIST_CLIENT_ID/TODOIST_CLIENT_SECRET - Ditto, but for Todoist
    • FLASK_ENCRYPTION_KEY - Something secret for Flask to use for cookie encryption
  8. git push heroku master
  9. At this point, goto your Heroku URL and check everything works. You might have an error page the first time you load it due to clashes between multiple workers all trying to configure the DB. Just refresh and it should fix itself.
  10. Add the Scheduler addon and configure the update command (python docket.py) to run every so often.