{"id":25691071,"url":"https://github.com/soniccodes/flaskott","last_synced_at":"2025-07-09T23:32:32.719Z","repository":{"id":139874633,"uuid":"365640323","full_name":"SonicCodes/flaskott","owner":"SonicCodes","description":"Hotpress for Flask, it's really hot.","archived":false,"fork":false,"pushed_at":"2021-05-12T05:22:30.000Z","size":10,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-24T04:46:44.748Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SonicCodes.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,"zenodo":null}},"created_at":"2021-05-09T00:57:44.000Z","updated_at":"2022-09-28T22:23:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"ce2a9406-2546-425d-a886-64f744309874","html_url":"https://github.com/SonicCodes/flaskott","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SonicCodes/flaskott","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SonicCodes%2Fflaskott","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SonicCodes%2Fflaskott/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SonicCodes%2Fflaskott/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SonicCodes%2Fflaskott/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SonicCodes","download_url":"https://codeload.github.com/SonicCodes/flaskott/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SonicCodes%2Fflaskott/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264505261,"owners_count":23618910,"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":"2025-02-24T22:52:21.727Z","updated_at":"2025-07-09T23:32:32.709Z","avatar_url":"https://github.com/SonicCodes.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Flaskott 🔥\n## [Hotpress](https://github.com/SonicCodes/hotpress) for Flask, it's really hot.\n\nBasically [Hotpress](https://github.com/SonicCodes/hotpress) remade for flask, it's really developmental at this stage, you are free to make contributions and prs, and don't forget to issue if you got something wrong.\n\nAll the features in Hotpress are included, and it does live code swapping, using killable threads.\n\nThe steps are pretty easy compared to Hotpress.\n\n### #1 - your main app.py\n```python\nfrom reloader import init\nfrom flask import Flask\n\napp = Flask(__name__)\n\ninit(app, \"./server.py\")\n\n# Or\n\nif __name__ == '__main__':\n    init(app, \"./server.py\")\n```\n\n\n### #2 - create a reloadable file (server.py)\n```python\nfrom reloader import pre_setup, post_setup\n\napp = pre_setup(locals()) # correctly typed, IDE support is still there\n\n\n@app.route(\"/hie\")\ndef executing():\n    return \"Hie you too! I am your fairy mother, change something here to be surprised!\"\n\n\npost_setup(locals()) # this is used to hold the process from exiting.\n```\n\n\n### Result\n![Screen Shot 2021-05-09 at 4 10 53 AM](https://user-images.githubusercontent.com/48802163/117557576-e9cea780-b07c-11eb-98fa-b2a28747d8f4.png)\n\n\n### Requirements\n- [watchgod](https://pypi.org/project/watchgod/)\n- [flask](https://pypi.org/project/Flask/)\n- [asyncio](https://pypi.org/project/asyncio/)\n\nFlask is hard requirement, the others could be eliminated from the codebase with proper care.\n\n\n### Note!\nI’ll repeat, this is highly experimental, it was a proof of concept that python could do the same thing as Nodejs when it comes to hot-reloading, I highly advise you to not using it for anything other-than experimenting \u0026 research stuff. I hope you understand my message well.\n\n\n### Licesnce\n```\nDo what ever you want with this, but keep in-mind, I am not liable to any damage the software, it's usage/mis-use might cause at any point of time and without any regards.\n```\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoniccodes%2Fflaskott","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsoniccodes%2Fflaskott","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoniccodes%2Fflaskott/lists"}