Skip to main content

Flask-Fullstack

Flask-Fullstack is an utils package for projects using a fleet of libs:

It is currently in deep development. Package is maintained by one programmer (hey that me!). In this readme you can find:

Install

Add the library to your project

pip install flask-fullstack  # via pip
poetry add flask-fullstack  # via poetry

Working with this repository

pip install poetry==1.5.1
poetry install

Quick Start

TBD

Features

Interfaces & Mixins

  • Database Interfaces: Implement these to later automate searching & authorization (see below)
  • Mixins with Decorators: Classes full of useful decorators to be used in less abstract context (see below)

RESTX improvements

  • New Marshals: form SQLAlchemy to Pydantic and then to the Response Marshaling
  • Upgraded Parsers: just a couple of commonly used parsers to .copy()
  • Resource Controller: RESTX's Namespace, but with access to useful decorators from mixins

New Marshals

New models, created in flask_fullstack.restx.marshals, are a translation layer between Pydantic & RESTX's own Models. These models also support being created from SQLAlchemy tables via Column reflection

For Pydantic, it only supports as fields: the keys of flask_fullstack.restx.marshals.type_to_field, lists and nesting other Pydantic models

For SQLAlchemy, it only supports converting columns of types in the keys of flask_fullstack.restx.marshals.column_to_field

SocketIO eXtensions

  • Understandable Events: Makes possible automatic documentation, data validation (with New Marshals or pure Pydantic) & emits not just by the event's name
  • Event Controller: Used to group events & provide access to useful decorators from mixins
  • Upgraded Structures: Propagating new events & other utils to Flask-SocketIO's Namespaces & the SocketIO class itself

Other Utils

  • SQLAlchemy Simplified: creating objects, parsing query results, deleting objects
  • New Columns: JSON with Schema or a RESTX Model to use in New Marshals
  • Named: If some class attribute needs to know the attribute name
  • Other: Utils for dicts, pydantic, pytest, unpacking RESTX responses, TypeEnum, etc
  • Core: For simplifying the common project setup steps

Future

TBA

Contributing

You are welcome to create issues and PRs in this repository. I'll get to them as soon as I have time!

Release files for flask-fullstack 0.5.10

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for flask-fullstack 0.5.10
File Size Uploaded
flask_fullstack-0.5.10.tar.gz 27.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for flask-fullstack 0.5.10
File Interpreter ABI Platform
flask_fullstack-0.5.10-py3-none-any.whl Python 3 none any Details

Total release size: 64.1 kB

Release files / flask_fullstack-0.5.10.tar.gz

Download URL flask_fullstack-0.5.10.tar.gz
Size 27.3 kB
Tags Source
SHA-256 checksum
How to use checksums
6851eeb712c5436f0e1d285f31ddc6f6792c742b086a3d707063650b4fde9f91
BLAKE2b-256 checksum
How to use checksums
82fb72b7c92cfc6d5c7e422d7c527391c10a8492a4fb9196c0bb8e3b61836dc9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.5.1 CPython/3.11.1 Windows/10

Release files / flask_fullstack-0.5.10-py3-none-any.whl

Download URL flask_fullstack-0.5.10-py3-none-any.whl
Size 36.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bf58f67f51e446c0d48d1a92879b424ccc321a1d2067ed1faef8b0bc8f78838e
BLAKE2b-256 checksum
How to use checksums
11115f6058b2fc636039c234910fe6cdbb73afe4934d63861294c3d45dc3cba7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.5.1 CPython/3.11.1 Windows/10
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page