Human Programming Interface 🧑👽🤖
Find a file
2019-10-11 23:51:18 +01:00
.circleci Add demo on CI 2019-10-11 21:47:22 +01:00
my Add kython utils (kerror/konsume) 2019-10-11 23:07:45 +01:00
my_configuration_template/my_configuration add org readme 2019-10-11 23:51:18 +01:00
.gitignore Merge remote-tracking branch 'goodreads/master' 2019-09-23 20:33:29 +01:00
demo.py Add demo on CI 2019-10-11 21:47:22 +01:00
LICENSE Create LICENSE 2019-09-17 23:07:53 +04:00
misc.org Use symlink for hypexport 2019-10-08 21:06:50 +01:00
README.org add org readme 2019-10-11 23:51:18 +01:00
with_my.example add my. package to mypypath 2019-10-11 23:07:45 +01:00

https://circleci.com/gh/karlicoss/my.svg?style=svg

Python interface into my life.

This package deals with abstracting away various data sources and providing nice Python interface for them, also lets you define covenience functions.

This might not necessarily be convenient for you to use, perhaps it's more of a concept of how you can organize and access your personal data. But it works for me so hopefully that would help you if you're struggling!

Setting up

First you need to tell the package where to look for your data and external repositories, which is done though a separate (private) package named my_configuration.

In the simplest case it can be just a single file named my_configuration.py, e.g.:

class paths:
    class stexport:
        repo       = /path/repos/stackexchange_export_repo
        export_dir = /path/to/backups/stackexchange

    class ghexport:
        repo       = /path/repos/github_export_repo
        export_dir = /path/to/backups/github
find my_configuration/ | grep -v -E 'mypy_cache|.git|__pycache__'

my_configuration/ my_configuration/my_configuration my_configuration/my_configuration/__init__.py my_configuration/my_configuration/repos my_configuration/my_configuration/repos/kobuddy my_configuration/my_configuration/repos/rexport my_configuration/my_configuration/repos/hypexport my_configuration/my_configuration/pdf_configuration.py

and pass the filename to the package:

cp with_my.example with_my

# specify path to your my_configuration:
vim with_my

Dependencies

They depend on specific modules you're planning to use, so it's hard to specify. Generally you can just try and then install missing packages via pip install --user, should be fairly straighforward.

Usage example

If you run your script with with_my wrapper, you'd have my in PYTHONPATH which gives you access to your data from within the script.

  with_my python3 -c 'import my.books.kobo as kobo; print(kobo.get_todos())'

Also read/run demo.py for a full demonstration of setting up Hypothesis.

Linting

# see https://github.com/python/mypy/issues/1645 for --namespace-packages explanation
with_my --namespace-packages my

or, set up as mypy.ini file:

[mypy]
mypy_path=/path/to/my_configuration_dir