{ "info": { "author": "Kale Kundert", "author_email": "kale@thekunderts.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5" ], "description": "Two Cents\n=========\nTwo Cents is a continuously (rather than monthly) updating budget program. So \ninstead of saying \"You have $500 to spend on groceries in April\", Two Cents \neither says \"You are over your grocery budget right now, try not to spend more \nthan you have to\" or \"You are within your grocery budget, go ahead and make a \nnice dinner\". In this way Two Cents directly tells you whether or not it's OK \nto splurge at the moment, which is often all you need to know.\n\nEach budget can have an allowance, which would be something like ``$500/mo``. \nEvery time you run ``two_cents``, it will calculate how many seconds have \nelapsed since you called it and apply allowances for each budget accordingly. \nIt will also download recent activity from your bank, ask you to assign \ntransactions to budgets, and credit or debit your budgets accordingly. \nFinally, it will display the balance for each budget. For budgets with \nnegative balances, it will also display an estimate for how long it will take \nfor the budget to return to the black.\n\nInstallation\n------------\nTwo Cents is available on PyPI, so you can install it with ``pip``::\n\n pip install two_cents\n\nBasic Usage\n-----------\nThe first step is to tell Two Cents about your bank. Currently only Wells \nFargo is supported::\n\n $ two_cents add-bank wells_fargo\n\nTwo Cents will ask for commands it can run to generate your username and \npassword. It needs this information so it can log into your account and scrape \nyour most recent activity. Your login information is stored locally and is \nnever sent to any site other than your bank. If you don't mind storing your \npassword in plaintext, use the echo command::\n\n Username: echo \"jane doe\"\n Password: echo \"pa55w0rd\"\n\nOtherwise, provide a command like ``gpg`` or ``gnome-keyring`` that can store \nyour password encrypted and can unencrypt it for Two Cents.\n\nOnce you've added your bank, the next step is to add one or more budgets::\n\n $ two_cents add-budget groceries -a 500/mo\n $ two_cents add-budget restaurants -a 200/mo\n $ two_cents add-budget miscellaneous -a 100/mo\n\nThe ``-a`` option sets the allowance for the new budget. You can also leave \noff this argument and set (or change) the allowance later. There is also an \noption to set the initial balance for the new budget, but the default ($0) is \nusually what you want.\n\nOnce you've configured your bank and your budgets, you can run ``two_cents`` \nwith no arguments to see the status of your budgets::\n\n $ two_cents\n \nIf any new transactions are found from your bank, you will be asked to assign \nthem to a budget. If a budget has a positive balance, you should feel \ncomfortable spending from it. If a budget has a negative balance, you should \ntry not to spend from it for a while. Two Cents will tell you how long it will \ntake the budget to return to a positive balance assuming no further spending.\n\nDownloading Transactions via Cron\n---------------------------------\nIt can take a while for Two Cents to connect to your bank and download new \ntransactions. If you want to save yourself some time, you can use ``cron`` to \ndownload new transactions in the background every hour or so::\n\n $ crontab -e\n 0 * * * * two_cents download-payments -I\n\nThe ``-I`` command prevents Two Cents from expecting any input on stdin. You \nalso need to ensure that the username and password commands you provided will \nwork without your input. For example, if you used ``gpg``, you will need to be \nrunning an agent with your unlocked private key.\n\nOnce your account activity is being downloaded in the background, write a \nsimple shell function that will call Two Cents with the ``-D`` option unless \nany other options are specified. The ``-D`` option tells Two Cents to not \ndownload new activity::\n\n $ vim ~/.bashrc\n function two_cents () {\n if [ $# = 0 ]; then\n command two_cents -D\n else\n command two_cents $@\n fi\n }\n\n(I know it'd probably be better to have a configuration file, but for the time \nbeing this is the best way to do this.)", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/kalekundert/two_cents", "keywords": "two_cents", "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "two_cents", "package_url": "https://pypi.org/project/two_cents/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/two_cents/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/kalekundert/two_cents" }, "release_url": "https://pypi.org/project/two_cents/1.0.1/", "requires_dist": null, "requires_python": null, "summary": "UNKNOWN", "version": "1.0.1" }, "last_serial": 1881644, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "383fce2fac8922f70473e0c0e7f8f8f2", "sha256": "29905e6d35b8e34d5b039937675ad11c75529c7c505df03853200907a3835041" }, "downloads": -1, "filename": "two_cents-1.0.0.tar.gz", "has_sig": false, "md5_digest": "383fce2fac8922f70473e0c0e7f8f8f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104963, "upload_time": "2015-12-29T20:40:43", "url": "https://files.pythonhosted.org/packages/c9/e2/733dffbfd5b5c940e068b90590cfde7f6fcdd0a52f35ae678cf3eafca4e9/two_cents-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "e7736d6ebeb364eaa75a3e0fab0da348", "sha256": "cbd737516353c0ee8dc92334ee671cbd2509e234aaa8154a37fe55ba1f4c3351" }, "downloads": -1, "filename": "two_cents-1.0.1.tar.gz", "has_sig": false, "md5_digest": "e7736d6ebeb364eaa75a3e0fab0da348", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 107137, "upload_time": "2015-12-29T21:27:45", "url": "https://files.pythonhosted.org/packages/d2/4d/c1a27c5945a0cdc8f5a3aa6538ec95d8e792e03c9c5af8733873cc2b5c34/two_cents-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e7736d6ebeb364eaa75a3e0fab0da348", "sha256": "cbd737516353c0ee8dc92334ee671cbd2509e234aaa8154a37fe55ba1f4c3351" }, "downloads": -1, "filename": "two_cents-1.0.1.tar.gz", "has_sig": false, "md5_digest": "e7736d6ebeb364eaa75a3e0fab0da348", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 107137, "upload_time": "2015-12-29T21:27:45", "url": "https://files.pythonhosted.org/packages/d2/4d/c1a27c5945a0cdc8f5a3aa6538ec95d8e792e03c9c5af8733873cc2b5c34/two_cents-1.0.1.tar.gz" } ] }