{"id":13937183,"url":"https://github.com/fangpenlin/bugbuzz-python","last_synced_at":"2025-04-15T20:31:55.398Z","repository":{"id":26605816,"uuid":"30060873","full_name":"fangpenlin/bugbuzz-python","owner":"fangpenlin","description":"Fall in love with debugging","archived":false,"fork":false,"pushed_at":"2021-11-08T11:13:52.000Z","size":10548,"stargazers_count":104,"open_issues_count":3,"forks_count":6,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-03-29T02:04:39.297Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fangpenlin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-01-30T07:13:10.000Z","updated_at":"2024-07-25T13:34:10.000Z","dependencies_parsed_at":"2022-07-12T10:49:33.855Z","dependency_job_id":null,"html_url":"https://github.com/fangpenlin/bugbuzz-python","commit_stats":null,"previous_names":["victorlin/bugbuzz-python"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fangpenlin%2Fbugbuzz-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fangpenlin%2Fbugbuzz-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fangpenlin%2Fbugbuzz-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fangpenlin%2Fbugbuzz-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fangpenlin","download_url":"https://codeload.github.com/fangpenlin/bugbuzz-python/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249148001,"owners_count":21220458,"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-08-07T23:03:21.940Z","updated_at":"2025-04-15T20:31:53.976Z","avatar_url":"https://github.com/fangpenlin.png","language":"Python","readme":"# Bugbuzz - easy to use online debugger\n\n[![Build Status](https://travis-ci.org/fangpenlin/bugbuzz-python.svg?branch=master)](https://travis-ci.org/fangpenlin/bugbuzz-python)\n\n![Bugbuzz demo](/screencast.gif?raw=true )\n\n# Relative projects\n\n - [Ember.js Dashboard project](https://github.com/fangpenlin/bugbuzz-dashboard)\n - [Backend API server project](https://github.com/fangpenlin/bugbuzz-api)\n\n# Dashboard shortcuts\n\nVim style shortcuts\n\n - C Continue\n - H Return\n - J Next\n - L Step\n\n# Usage\n\n```\npip install bugbuzz\n```\n\nthen insert following lines in your code to debug\n\n```python\nimport bugbuzz; bugbuzz.set_trace()\n```\n\n# Security concerns\n\nAs bugbuzz providing debugging in a software-as-service manner, all source code and local variables needed will be uploaded to the server. When a debugging session created, a random secret access key will be generated, and used for encryping all source code and local variables. The access key will be passed to dashboard as a part of hash tag like this\n\n```\nhttp://dashboard.bugbuzz.io/#/sessions/SECsLArhHBVHF5mrtvXHVp3T?access_key=\u003cACCESS KEY\u003e\n```\n\nWith the access key, the Ember.js dashboard app can then decrypt the source code and local variables downloaded from the server. As the access key is passed as part of hash in the URL, the server cannot see it, without the access key, your source code and local variables are not visible by the server.\n\nFor more details about security topic, you can also read my article [Anonymous computing: Peer-to-peer encryption with Ember.js](http://fangpenlin.com/posts/2015/05/26/anonymous-computing-peer-to-peer-encryption-with-ember-js).\n\n# Run demo\n\nTo run our demo\n\n```bash\ngit clone --recursive git@github.com:fangpenlin/bugbuzz-python.git\n```\n\ninstall the project\n\n```bash\nvirtualenv --no-site-packages .env\nsource .env/bin/activate\npip install -e .\n```\n\nand dependency used in the `demo.py`\n\n```bash\npip install requests\n```\n\nthen\n\n```bash\npython demo.py\n```\n\nIt will open a new tab in your browser for debugging.\n\n# Run with local API server and dashboard instead\n\nBy default, bugbuzz uses `bugbuzz-api.herokuapp.com` as the API server and `dashboard.bugbuzz.io` as the dashboard. To change this behavior, you can specify environment variables\n\n - **BUGBUZZ_API**: URL for the API server\n - **BUGBUZZ_DASHBOARD**: URL for the dashboard \n\nFor example, you are running API server and the dashboard locally at `http://localhost:9090` and `http://localhost:4200`, then you can run bugbuzz like this\n\n```bash\nBUGBUZZ_API='http://localhost:9090' BUGBUZZ_DASHBOARD='http://localhost:4200' python demo.py\n```\n\n\n# Notice\n\n This is just a prototype, use it at your own risk\n","funding_links":[],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffangpenlin%2Fbugbuzz-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffangpenlin%2Fbugbuzz-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffangpenlin%2Fbugbuzz-python/lists"}