Skip to main content

simple_module_hosting

FastAPI + Inertia.js host runtime for the simple_module framework — builds the app, wires the middleware pipeline, and contributes the smpy host plugin to the standalone smpy CLI.

Install

pip install simple_module_hosting

For a new project, most users run the generator instead (shipped by the standalone simple_module_cli distribution):

uvx --from simple_module_cli smpy new my-app

What it provides

  • create_app(settings) — returns a fully-wired FastAPI instance with all discovered modules registered.
  • Middleware pipeline (execution order): CorrelationId → RequestLogging → SecurityHeaders → Session → <module middleware> → Tenant (opt-in) → Locale → InertiaLayoutData → app.
  • Inertia wiring — shared props (auth, menus, i18n), InertiaDep, page-route lookup.
  • smpy host plugin — smpy host gen-pages regenerates the frontend pages manifest; smpy host sync-js-deps installs JS deps declared by installed modules. The smpy binary itself comes from simple_module_cli.

Usage

Minimal main.py:

from simple_module_hosting import create_app
from simple_module_hosting.settings import Settings

settings = Settings()  # reads SM_* env vars
app = create_app(settings)  # discovers + registers every installed module

if __name__ == "__main__":
    import uvicorn

    uvicorn.run(app, host="0.0.0.0", port=8000)

CLI (after also installing simple_module_cli):

smpy host gen-pages             # regenerate client_app/modules.generated.ts
smpy host sync-js-deps          # sync module JS deps into client_app/node_modules

Depends on

  • simple_module_core, simple_module_db
  • fastapi, fastapi-inertia, starlette, uvicorn, click, jinja2, httpx

License

MIT — see LICENSE.

Download files

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

Source Distribution

simple_module_hosting-0.0.27.tar.gz (66.9 kB view details)

Uploaded Source

Built Distribution

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

simple_module_hosting-0.0.27-py3-none-any.whl (51.6 kB view details)

Uploaded Python 3

File details

Details for the file simple_module_hosting-0.0.27.tar.gz.

File metadata

  • Download URL: simple_module_hosting-0.0.27.tar.gz
  • Upload date:
  • Size: 66.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for simple_module_hosting-0.0.27.tar.gz
Algorithm Hash digest
SHA256 b1eae25895d60336306f9c41fca799c7ea6dcedc4f64cd5025463e9b156f523d
MD5 c24e916c5bf5fa844f1a325fb56333d4
BLAKE2b-256 c01786512dd1217d4597df4d17e11dd25935eb16d29ba91e5c6920d4e43bf1bf

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_module_hosting-0.0.27.tar.gz:

Publisher: release.yml on antosubash/simple_module_python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file simple_module_hosting-0.0.27-py3-none-any.whl.

File metadata

File hashes

Hashes for simple_module_hosting-0.0.27-py3-none-any.whl
Algorithm Hash digest
SHA256 bb758a8dd67cc4238e7768d0d24dc2a5740cb3050d0306b85829c8a748cf624c
MD5 77c3519076e33fa4bc7d76dce5610d1a
BLAKE2b-256 c07286e428d91d6f628cfadd52b9dfa637ded699370708f83c7cb2ab5d3db067

See more details on using hashes here.

Provenance

The following attestation bundles were made for simple_module_hosting-0.0.27-py3-none-any.whl:

Publisher: release.yml on antosubash/simple_module_python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.0.33

2 files

0.0.32

2 files

0.0.31

2 files

0.0.30

2 files

0.0.29

2 files

0.0.28

2 files

This release

0.0.27 This release

2 files

0.0.26

2 files

0.0.25

2 files

0.0.24

2 files

0.0.22

2 files

0.0.21

2 files

0.0.20

2 files

0.0.19

2 files

0.0.18

2 files

0.0.17

2 files

0.0.16

2 files

0.0.15

2 files

0.0.14

2 files

0.0.13

2 files

0.0.12

2 files

0.0.11

2 files

0.0.10

2 files

0.0.9

2 files

0.0.8

2 files

0.0.7

2 files

0.0.6

2 files

0.0.5

2 files

0.0.4

2 files

0.0.3

2 files

0.0.2

2 files

0.0.1

2 files

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