Skip to main content

Flask-Viewsets

Flask-Viewsets is a Python package that provides a ViewSet class, inheriting from Flask's View, inspired by Django REST Framework's ViewSet. This package aims to streamline the development of RESTful APIs in Flask by offering a simple and flexible class-based view structure for mapping HTTP methods to defined actions on a per route basis.

Features

  • Provides an easy-to-use class-based view to manage HTTP methods.
  • Supports all HTTP methods (GET, POST, PUT, PATCH, DELETE, ...).
  • Extensible and customizable for various use cases.

Installation

You can install Flask-Viewsets using pip:

pip install Flask-Viewsets

Usage

To use the ViewSet class, import it in your Flask application, define a viewset class by inheriting ViewSet, and implement the desired HTTP methods. Here’s a simple example:

# views.py
from flask_viewsets import ViewSet

class ExampleViewSet(ViewSet):
    def hello(self):
        return "Hello, world!"

    def echo(self, message: str):
        return message
# app.py
from flask import Flask

from . import views

app = Flask(__name__)
app.add_url_rule('/hello', view_func=views.ExampleViewSet.as_view({
    "get": "hello"
}))
app.add_url_rule('/echo/<string:message>', view_func=views.ExampleViewSet.as_view({
    "get": "echo"
}))

if __name__ == "__main__":
    app.run(debug=True)

Requirements

  • Python ^3.12
  • Flask ^3.0.3

Contributing

Contributions are welcome! Please feel free to submit a pull request, file an issue, or suggest improvements.

License

This project is licensed under the GNU Affero General Public License. See the LICENSE.md file for details.

Enjoy using Flask-Viewsets? Give it a star and help make Flask development easier!

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flask_viewsets-0.2.6.tar.gz (19.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flask_viewsets-0.2.6-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file flask_viewsets-0.2.6.tar.gz.

File metadata

  • Download URL: flask_viewsets-0.2.6.tar.gz
  • Upload date:
  • Size: 19.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.2 Linux/5.15.153.1-microsoft-standard-WSL2

File hashes

Hashes for flask_viewsets-0.2.6.tar.gz
Algorithm Hash digest
SHA256 4cbdfa0351387d8e903ed40c2c03f9f63e33e31192f2bd049f010401129e0873
MD5 c577aa91183a0f406daff68dd38c5d59
BLAKE2b-256 5433cdaf631688bf32aefb17db2a3cc4bbdcf70f03fc425f14b8391a0eccfdaa

See more details on using hashes here.

File details

Details for the file flask_viewsets-0.2.6-py3-none-any.whl.

File metadata

  • Download URL: flask_viewsets-0.2.6-py3-none-any.whl
  • Upload date:
  • Size: 21.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.2 Linux/5.15.153.1-microsoft-standard-WSL2

File hashes

Hashes for flask_viewsets-0.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 db9a18805b6f8bb630b389013d569b14b7f69e43703d08ee6b80b792b4f577ab
MD5 49c729809016512fac89eb78645495f1
BLAKE2b-256 dfeb8d0d5fc9d60fa1070db7d3059bda0462b1a543a5bf81d15707e6c654603a

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.6 This release

2 files

0.2.5

2 files

0.2.4

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page