# Flasked
![Flasked Badge](https://badge.fury.io/py/flasked.svg)
Flasked is an advanced Flask extension that brings unparalleled flexibility and ease to REST API development with Flask, particularly shining in dynamic environments like Jupyter notebooks. It empowers developers to dynamically manage routes without the need for server restarts, supports background server execution for seamless interactive development, and maintains compatibility with WSGI servers like Gunicorn for production deployments.
## Key Features
- **Dynamic Route Management**: Flasked allows for the dynamic addition, modification, and deletion of routes in real-time, eliminating the need for server restarts and enhancing the development workflow.
- **Background Server Execution**: Designed with interactive environments in mind, Flasked can run the server in the background, making it a perfect match for Jupyter notebooks and similar setups.
- **WSGI Compatibility**: While Flasked excels in development and testing environments, it is also fully compatible with WSGI servers, ensuring a smooth transition from development to production.
## Quick Start
### Installation
To install Flasked, simply run:
```bash
pip install flasked
```
### Creating Your First Route
1. **Instantiate Flasked**:
```python
from flasked import Flasked
flasked = Flasked()
```
2. **Run the Server in Background**:
```python
flasked.run_background()
```
3. **Define a Route**:
```python
class HelloWorld:
def get(self):
return {"message": "Hello, World!"}
flasked['/'] = HelloWorld
```
4. **Access Your Route**:
Open `http://127.0.0.1:1024/` in your browser to see the greeting message.
5. **Stop the Server** (optional):
```python
flasked.stop()
```
## Documentation
For detailed documentation on Flasked's features, advanced routing options, and comprehensive examples, please refer to our [documentation](https://flasked.readthedocs.io/en/v0.1.0/).
Also, a [jupyter notebook](notebooks/demo_usage.ipynb) is available for learning more.
## Contributing
Contributions are warmly welcomed! Whether it's through submitting bug reports, feature requests, or pull requests, your input helps make Flasked better for everyone.
## License
Flasked is open-source software licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.
Raw data
{
"_id": null,
"home_page": "https://github.com/ipazc/flasked",
"name": "Flasked",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "",
"author": "Iv\u00e1n de Paz Centeno",
"author_email": "ipazc@unileon.es",
"download_url": "",
"platform": null,
"description": "# Flasked\n\n![Flasked Badge](https://badge.fury.io/py/flasked.svg)\n\nFlasked is an advanced Flask extension that brings unparalleled flexibility and ease to REST API development with Flask, particularly shining in dynamic environments like Jupyter notebooks. It empowers developers to dynamically manage routes without the need for server restarts, supports background server execution for seamless interactive development, and maintains compatibility with WSGI servers like Gunicorn for production deployments.\n\n## Key Features\n\n- **Dynamic Route Management**: Flasked allows for the dynamic addition, modification, and deletion of routes in real-time, eliminating the need for server restarts and enhancing the development workflow.\n \n- **Background Server Execution**: Designed with interactive environments in mind, Flasked can run the server in the background, making it a perfect match for Jupyter notebooks and similar setups.\n \n- **WSGI Compatibility**: While Flasked excels in development and testing environments, it is also fully compatible with WSGI servers, ensuring a smooth transition from development to production.\n\n## Quick Start\n\n### Installation\n\nTo install Flasked, simply run:\n\n```bash\npip install flasked\n```\n\n### Creating Your First Route\n\n1. **Instantiate Flasked**:\n\n ```python\n from flasked import Flasked\n\n flasked = Flasked()\n ```\n\n2. **Run the Server in Background**:\n\n ```python\n flasked.run_background()\n ```\n\n3. **Define a Route**:\n\n ```python\n class HelloWorld:\n def get(self):\n return {\"message\": \"Hello, World!\"}\n\n flasked['/'] = HelloWorld\n ```\n\n4. **Access Your Route**:\n\n Open `http://127.0.0.1:1024/` in your browser to see the greeting message.\n\n5. **Stop the Server** (optional):\n\n ```python\n flasked.stop()\n ```\n\n## Documentation\n\nFor detailed documentation on Flasked's features, advanced routing options, and comprehensive examples, please refer to our [documentation](https://flasked.readthedocs.io/en/v0.1.0/).\nAlso, a [jupyter notebook](notebooks/demo_usage.ipynb) is available for learning more.\n\n## Contributing\n\nContributions are warmly welcomed! Whether it's through submitting bug reports, feature requests, or pull requests, your input helps make Flasked better for everyone.\n\n## License\n\nFlasked is open-source software licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.\n",
"bugtrack_url": null,
"license": "",
"summary": "A package designed to ease building HTTP REST APIs out-of-the-box, suitable for interactive environments like Jupyter Lab",
"version": "0.1.0",
"project_urls": {
"Homepage": "https://github.com/ipazc/flasked"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "534693670d74336898c91d4bf1c7937ec8b49dad8beac6d5312d7909665438d1",
"md5": "bf66c7bc325054176f14316bdcf04156",
"sha256": "0d5842444a0ac536d06b165260c89c0d7a67a960e2fb98fa7ddff0e5d93dc8c1"
},
"downloads": -1,
"filename": "Flasked-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "bf66c7bc325054176f14316bdcf04156",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 18331,
"upload_time": "2024-03-03T23:57:13",
"upload_time_iso_8601": "2024-03-03T23:57:13.138451Z",
"url": "https://files.pythonhosted.org/packages/53/46/93670d74336898c91d4bf1c7937ec8b49dad8beac6d5312d7909665438d1/Flasked-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-03 23:57:13",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ipazc",
"github_project": "flasked",
"travis_ci": true,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "Flask",
"specs": [
[
"==",
"3.0.2"
]
]
}
],
"lcname": "flasked"
}