# MOLE Matrix Orgmode ListenER. ## Project Summary - Send your thoughts to a matrix channel! Its easy, its everywhere, and its plaintext. - Convert individual messages in your matrix channel into todo items in orgmode - Assumes the same sorts of things as other mobile orgmode solutions, a mobile-refile.org file, that sort of thing. - Eventually, come back on your main computer and refile shit accordingly. ## Project Outline - [ ] Be able to read and write orgmode from within Python (use Karlicoss' library for this) - [ ] Be able to read and write matrix messages from within Python (use matrix nio, apparently its the Approved Shit now https://github.com/poljar/matrix-nio) - [ ] Package using Pypi - Eventually I'd like the option of deploying via ansible with the community playbooks, so also build out a Dockerfile. - [ ] Add an ansible-playbook for deploying via matrix-docker-ansible-deploy, if they'll have me. - [ ] Use all the same packages i'm floating for developer standards at work: ## Misc Project Thoughts - My bot will have to be able to talk over HTTP, I guess. - It'd be good if I could use pantalaimon for encryption, so messages can be sent E2E, then decrypted wherever the bot is to get added to the refile. - Probably worth also writing some elisp that auto saves/closes the mobile-refile file if you haven't looked at it in a minute or two. Prevents weird overwrites. # TODOs - [ ] setup all of this stuff - [X] Precommit (for all your commithook needs) - On initial setup you likely want to run a new config against all files: `pre-commit run --all-files` - [X] Black + commithooks; feel free to tweak line settings - Black is still technically pre-release; install like `pipenv install -d black --pre` - [X] Mypy + commithooks - [X] Pylint / Flake8; feel free to tweak line settings - [X] Pipenv (bluh. I guess this is what work is using, so, fine.) - append installs with `-d` to add them as a dev dependency - [ ] Pytest + unittest. - [ ] Add on pydantic to mypy - [ ] Futz with mypy's config to require declaring types - [X] Python versions with pyenv - This is pretty easy, though its a very stupid curl | bash. Fuckers. - Also some annoying prereqs that you need to be careful about; some Mac specific fuckery. # Editor bullshit - [ ] Get LSPs shit working with my new setup: - auto detect pyvenv - resolve imports - etc - [ ] make magit play nice with pre-commit hooks