{"id":18413136,"url":"https://github.com/pybites/pytip","last_synced_at":"2025-04-07T11:32:19.766Z","repository":{"id":27561024,"uuid":"108643872","full_name":"pybites/pytip","owner":"pybites","description":"Building a Simple Web App With Bottle, SQLAlchemy, and the Twitter API","archived":false,"fork":false,"pushed_at":"2023-07-26T08:23:12.000Z","size":220,"stargazers_count":46,"open_issues_count":0,"forks_count":37,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-22T17:11:38.312Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://realpython.com/building-a-simple-web-app-with-bottle-sqlalchemy-twitter-api/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pybites.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-28T11:32:10.000Z","updated_at":"2024-09-05T21:19:35.000Z","dependencies_parsed_at":"2024-11-06T03:45:11.120Z","dependency_job_id":"1c316281-d1b7-47fa-a4c8-47cf12f1b009","html_url":"https://github.com/pybites/pytip","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pybites%2Fpytip","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pybites%2Fpytip/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pybites%2Fpytip/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pybites%2Fpytip/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pybites","download_url":"https://codeload.github.com/pybites/pytip/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247644657,"owners_count":20972334,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-06T03:44:55.765Z","updated_at":"2025-04-07T11:32:19.421Z","avatar_url":"https://github.com/pybites.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Daily Python Tips\n\n[![BCH compliance](https://bettercodehub.com/edge/badge/pybites/pytip?branch=master)](https://bettercodehub.com/)\n\nApp built for [Code Challenge 40 - Daily Python Tip Part 1 - Make a Web App](https://pybit.es/codechallenge40.html)\n\nI deployed it to [https://pytip.herokuapp.com](https://pytip.herokuapp.com)\n\n![python pybites code challenge 40 pytip bottle app](static/img/pytip-app.png)\n\n## Setup\n\nTo run this app locally:\n\n* Create a virtual env\n* Create a DB called *pytip* (I use Postgres)\n* Add env variables to venv/bin/activate:\n\n\t* Twitter API: CONSUMER_KEY / CONSUMER_SECRET / ACCESS_TOKEN / ACCESS_SECRET\n\t* DATABASE_URL = 'postgres://user:pw@localhost:5432/pytip' (tests use pytip_tests)\n\t* If your run it on Heroku set APP_LOCATION to *heroku* (similar deployment instructions as [prchecker](https://github.com/pybites/prchecker))\n\n* Install the dependencies:\n\n\t\tpip install -r requirements.txt\n\n* Get the [python_tip](https://twitter.com/python_tip) tweets:\n\n\t\t(venv) $ python tasks/import_tweets.py\n\n* To run the tests create a postgres DB called *pytip_test*, then:\n\n\t\t(venv) $ pytest\n\t\t===  test session starts ===\n\t\tplatform darwin -- Python 3.6.1, pytest-3.2.3, py-1.4.34, pluggy-0.4.0\n\t\trootdir: /Users/bbelderb/Documents/code/pytip, inifile:\n\t\tcollected 5 items\n\n\t\ttests/test_tasks.py .\n\t\ttests/test_tips.py ....\n\n\t\t=== 5 passed in 1.04 seconds ===\n\n* Run the Bottle app:\n\n\t\t(venv) $ python app.py\n\t\tBottle v0.12.13 server starting up (using WSGIRefServer())...\n\t\tListening on http://localhost:8080/\n\t\tHit Ctrl-C to quit.\n\n* Enjoy!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpybites%2Fpytip","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpybites%2Fpytip","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpybites%2Fpytip/lists"}