Skip to main content

🌿 Mossify – A simple, organic framework for FastAPI + SQLModel with automatic CRUD and intelligent caching.

Project description

🌿 mossify

PyPI - Version PyPI - Python Version PyPI - License PyPI - Downloads GitHub Actions Workflow Status

Mossify is a simple, organic framework that wraps FastAPI and SQLModel to give you automatic CRUD routes and intelligent caching – with almost zero boilerplate.

"Mossify your backend. Simple, organic, and fully covered."


🚀 Quick Start

pip install mossify
from mossify import Mossify
from sqlmodel import SQLModel, Field
from typing import Optional

class Product(SQLModel, table=True):
    id: Optional[int] = Field(default=None, primary_key=True)
    name: str
    price: float

app = Mossify(database_url="sqlite:///database.db")
app.register_model(Product)

if __name__ == "__main__":
    app.run(workers=2)

That's it! You now have a fully functional API with:

  • GET /products → list all products
  • POST /products → create a product
  • GET /products/{id} → get a product
  • PATCH /products/{id} → update a product
  • DELETE /products/{id} → delete a product

All routes are automatically cached and invalidated on write operations.


✨ Features

  • 🔌 Zero boilerplate – just define your models and go.
  • FastAPI + SQLModel – fully async, modern, and type-safe.
  • 🧠 Intelligent caching – automatic TTL-based cache for GET endpoints.
  • 🔄 Automatic invalidation – cache is cleared on POST, PUT, PATCH, DELETE.
  • 🔧 Multi‑worker ready – scale with uvicorn workers out of the box.
  • 📦 Built‑in OpenAPI – interactive docs at /docs and /redoc.
  • 🪶 Lightweight – only essential dependencies, no bloat.

📦 Installation

pip install mossify

Or with uv:

uv pip install mossify

🧑‍💻 Development

If you want to contribute or test the latest version:

git clone https://github.com/Luiz-Trindade/mossify.git
cd mossify
uv venv
source .venv/bin/activate  # or .venv\Scripts\activate on Windows
uv sync
pytest tests/

📄 License

MIT © Luiz Gabriel Magalhães Trindade


🤝 Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the issues page or open a pull request.


🙏 Acknowledgements

Built on top of the amazing FastAPI and SQLModel.


Made with 🌿 and ❤️

mossify

Project details


Download files

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

Source Distribution

mossify-0.1.3.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

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

mossify-0.1.3-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file mossify-0.1.3.tar.gz.

File metadata

  • Download URL: mossify-0.1.3.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.27 {"installer":{"name":"uv","version":"0.11.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for mossify-0.1.3.tar.gz
Algorithm Hash digest
SHA256 c5a4a50efcf28dfa5b1d95cd5f6b5d2c8891addde779d74ba8ce1df10e15439c
MD5 713c07c9812607af76ddb06f60b526f4
BLAKE2b-256 b4d78bd53909da50b6259d50a410a2a2a07dc71231a25a68db4547265a6147c4

See more details on using hashes here.

File details

Details for the file mossify-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: mossify-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.27 {"installer":{"name":"uv","version":"0.11.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for mossify-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5f69987c1f447a7cf962292e8033dfc8530b0452e50baefd49bad59e9f7d0933
MD5 a718259d62666d31c2c0ecd4270b045b
BLAKE2b-256 ef9fe1c9219a1df555507bc58bfab336ed08434ad98e252808c4a628e4b69d47

See more details on using hashes here.

Supported by

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