Metadata-Version: 2.4
Name: workspaceflow
Version: 0.1.0
Summary: Pluggable workspace management for Python web applications
Author-email: WorkspaceFlow Team <dev@workspaceflow.io>
License: MIT
Project-URL: Homepage, https://github.com/workspaceflow/workspaceflow
Project-URL: Documentation, https://github.com/workspaceflow/workspaceflow/tree/main/docs
Project-URL: Repository, https://github.com/workspaceflow/workspaceflow
Project-URL: Bug Tracker, https://github.com/workspaceflow/workspaceflow/issues
Keywords: workspace,multi-tenancy,saas,fastapi,sqlalchemy
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Framework :: FastAPI
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: authflow==0.1.0
Requires-Dist: sqlalchemy>=2.0.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: pydantic-settings>=2.0.0
Requires-Dist: python-slugify>=8.0.0
Requires-Dist: redis>=5.0.0
Provides-Extra: fastapi
Requires-Dist: fastapi>=0.110.0; extra == "fastapi"
Requires-Dist: python-multipart>=0.0.9; extra == "fastapi"
Provides-Extra: postgres
Requires-Dist: psycopg2-binary>=2.9.0; extra == "postgres"
Provides-Extra: dev
Requires-Dist: pytest>=8.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23.0; extra == "dev"
Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
Requires-Dist: black>=24.0.0; extra == "dev"
Requires-Dist: ruff>=0.3.0; extra == "dev"
Requires-Dist: mypy>=1.9.0; extra == "dev"
Provides-Extra: all
Requires-Dist: workspaceflow[dev,fastapi,postgres]; extra == "all"

# WorkspaceFlow - Python Backend

Pluggable workspace/project management for Python web applications with team-based access control and data isolation.

## Features

- ✅ **Workspace/Project Management** - Create and manage projects within organizations
- ✅ **Team-Based Access Control** - Assign teams to workspaces for granular access
- ✅ **Data Isolation** - Automatic workspace-scoped data filtering with `WorkspaceScopedMixin`
- ✅ **AuthFlow Integration** - Seamless integration with authflow for authentication
- ✅ **FastAPI Ready** - One-line setup with FastAPI applications
- ✅ **Type Safe** - Full type hints with SQLAlchemy 2.0 and Pydantic v2

## Installation

```bash
pip install workspaceflow
```

## Quick Start

```python
from fastapi import FastAPI
from authflow import setup_auth
from workspaceflow import setup_workspaces

app = FastAPI()

# 1. Setup authentication
authflow = setup_auth(app, preset="multi_tenant")

# 2. Setup workspace management
setup_workspaces(app, authflow=authflow)
```

## Documentation

See [examples/fastapi_basic](examples/fastapi_basic/) for a complete working example.

## License

MIT
