arkitekt-gateway 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,36 @@
1
+ name: Run Coverage
2
+
3
+ on:
4
+ pull_request:
5
+ branches: [main] # or any branches you want to target
6
+ push:
7
+ branches: [main]
8
+
9
+ jobs:
10
+ run_tests:
11
+ name: Python (Pull Request Tests)
12
+ runs-on: ubuntu-latest
13
+
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+
17
+ - name: Install uv and set Python
18
+ uses: astral-sh/setup-uv@v6
19
+ with:
20
+ version: "latest"
21
+ python-version: "3.12"
22
+
23
+ - uses: pyvista/setup-headless-display-action@v3
24
+ with:
25
+ qt: true
26
+
27
+ - name: Install the project
28
+ run: uv sync --all-extras --dev
29
+
30
+ - name: Run tests
31
+ run: uv run pytest --cov --cov-branch --cov-report=xml
32
+
33
+ - name: Upload coverage reports to Codecov
34
+ uses: codecov/codecov-action@v5
35
+ with:
36
+ token: ${{ secrets.CODECOV_TOKEN }}
@@ -0,0 +1,48 @@
1
+ name: Release with uv and semantic-release
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+
8
+ permissions:
9
+ contents: write
10
+ id-token: write
11
+
12
+ jobs:
13
+ release:
14
+ runs-on: ubuntu-latest
15
+
16
+ steps:
17
+ - uses: actions/checkout@v4
18
+ with:
19
+ fetch-depth: 0
20
+
21
+ - name: Install uv and set Python
22
+ uses: astral-sh/setup-uv@v6
23
+ with:
24
+ version: "latest"
25
+ python-version: "3.12"
26
+
27
+ - uses: pyvista/setup-headless-display-action@v3
28
+ with:
29
+ qt: true
30
+
31
+ - name: Install dependencies
32
+ run: uv sync --all-extras --dev
33
+
34
+ - name: Run tests
35
+ run: uv run pytest tests
36
+
37
+ - name: Run semantic-release
38
+ env:
39
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
40
+ run: uv run semantic-release version
41
+
42
+ - name: Publish to Releases
43
+ env:
44
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
45
+ run: uv run semantic-release publish
46
+
47
+ - name: Publish to Pypi
48
+ run: uv publish
@@ -0,0 +1,32 @@
1
+ name: CI
2
+ on:
3
+ push:
4
+ branches: [main]
5
+ pull_request:
6
+ branches: [main]
7
+ jobs:
8
+ test_suit:
9
+ strategy:
10
+ fail-fast: false
11
+ matrix:
12
+ python-version: ["3.11", "3.12"]
13
+ os: [windows-latest, ubuntu-latest]
14
+ runs-on: ${{ matrix.os }}
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+
18
+ - name: Install uv and set the python version
19
+ uses: astral-sh/setup-uv@v6
20
+ with:
21
+ version: "latest"
22
+ python-version: ${{ matrix.python-version }}
23
+
24
+ - uses: pyvista/setup-headless-display-action@v3
25
+ with:
26
+ qt: true
27
+
28
+ - name: Install the project
29
+ run: uv sync --all-extras --dev
30
+
31
+ - name: Run tests
32
+ run: uv run pytest
@@ -0,0 +1,152 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ **/__pycache__
4
+ *.py[cod]
5
+ *$py.class
6
+ *.pyc
7
+ *.DS_Store
8
+
9
+ # C extensions
10
+ *.so
11
+
12
+ # Distribution / packaging
13
+ .Python
14
+ build/
15
+ develop-eggs/
16
+ dist/
17
+ downloads/
18
+ eggs/
19
+ .eggs/
20
+ lib/
21
+ lib64/
22
+ parts/
23
+ sdist/
24
+ var/
25
+ wheels/
26
+ pip-wheel-metadata/
27
+ share/python-wheels/
28
+ *.egg-info/
29
+ .installed.cfg
30
+ *.egg
31
+
32
+ # PyInstaller
33
+ # Usually these files are written by a python script from a template
34
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
35
+
36
+ *.spec
37
+
38
+ # Installer logs
39
+ pip-log.txt
40
+ pip-delete-this-directory.txt
41
+
42
+ # Unit test / coverage reports
43
+ htmlcov/
44
+ .tox/
45
+ .nox/
46
+ .coverage
47
+ .coverage.*
48
+ .cache
49
+ nosetests.xml
50
+ coverage.xml
51
+ *.cover
52
+ *.py,cover
53
+ .hypothesis/
54
+ .pytest_cache/
55
+ cover/
56
+
57
+ # Translations
58
+ *.mo
59
+ *.pot
60
+
61
+ # Django stuff:
62
+ *.log
63
+ local_settings.py
64
+ db.sqlite3
65
+ db.sqlite3-journal
66
+
67
+ # Flask stuff:
68
+ instance/
69
+ .webassets-cache
70
+
71
+ # Scrapy stuff:
72
+ .scrapy
73
+
74
+ # Sphinx documentation
75
+ docs/_build/
76
+
77
+ # PyBuilder
78
+ .pybuilder/
79
+ target/
80
+
81
+ # Jupyter Notebook
82
+ .ipynb_checkpoints
83
+
84
+ # IPython
85
+ profile_default/
86
+ ipython_config.py
87
+
88
+ # pyenv
89
+ # For a library or package, you might want to ignore these files since the code is
90
+ # intended to run in multiple environments; otherwise, check them in:
91
+ # .python-version
92
+
93
+ # pipenv
94
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
95
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
96
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
97
+ # install all needed dependencies.
98
+ #Pipfile.lock
99
+
100
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
101
+ __pypackages__/
102
+
103
+ # Celery stuff
104
+ celerybeat-schedule
105
+ celerybeat.pid
106
+
107
+ # SageMath parsed files
108
+ *.sage.py
109
+
110
+ # Environments
111
+ .env
112
+ .venv
113
+ env/
114
+ venv/
115
+ ENV/
116
+ env.bak/
117
+ venv.bak/
118
+
119
+ # Spyder project settings
120
+ .spyderproject
121
+ .spyproject
122
+
123
+ # Rope project settings
124
+ .ropeproject
125
+
126
+ # mkdocs documentation
127
+ /site
128
+
129
+ # mypy
130
+ .mypy_cache/
131
+ .dmypy.json
132
+ dmypy.json
133
+
134
+ # Pyre type checker
135
+ .pyre/
136
+
137
+ # pytype static type analyzer
138
+ .pytype/
139
+
140
+ # Cython debug symbols
141
+ cython_debug/
142
+
143
+ # static files generated from Django application using `collectstatic`
144
+ media
145
+ export
146
+ static_collected
147
+ data
148
+ token.temp
149
+ arkitekt_server_config.yaml
150
+ # Arkitekt server config file
151
+ # This file is automatically generated and should not be modified manually.
152
+ # It contains sensitive information and should not be committed to version control.
@@ -0,0 +1,3 @@
1
+ {
2
+ "python-envs.pythonProjects": []
3
+ }
@@ -0,0 +1,20 @@
1
+ # CHANGELOG
2
+
3
+
4
+ ## v0.1.0 (2026-01-19)
5
+
6
+ ### Bug Fixes
7
+
8
+ - Do
9
+ ([`209be5d`](https://github.com/arkitektio/arkitekt-gateway/commit/209be5dc60d9c074b324199b29db16fc91819b4c))
10
+
11
+ - Fix tests
12
+ ([`d9d157f`](https://github.com/arkitektio/arkitekt-gateway/commit/d9d157fddc2f92aba2043e15983011056a9c5a83))
13
+
14
+ - Fix tests
15
+ ([`53e3430`](https://github.com/arkitektio/arkitekt-gateway/commit/53e3430abff6b59c65a0f5b28ff25156cec7df94))
16
+
17
+ ### Features
18
+
19
+ - Test
20
+ ([`9a5336b`](https://github.com/arkitektio/arkitekt-gateway/commit/9a5336bcc1ea64863ee53744fa938e0d2f42cb80))
@@ -0,0 +1,210 @@
1
+ Metadata-Version: 2.4
2
+ Name: arkitekt-gateway
3
+ Version: 0.1.0
4
+ Summary: Add your description here
5
+ Author-email: Your Name <your.email@example.com>
6
+ Keywords: arkitekt,gateway
7
+ Classifier: Development Status :: 4 - Beta
8
+ Classifier: License :: OSI Approved :: MIT License
9
+ Classifier: Operating System :: OS Independent
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.12
12
+ Requires-Python: >=3.11
13
+ Requires-Dist: typer>=0.16.0
14
+ Description-Content-Type: text/markdown
15
+
16
+ # Arkitekt Server
17
+
18
+ A command-line tool for deploying and managing an Arkitekt server deployments. Arkitekt Server provides a comprehensive platform for scientific computing and data management, with built-in support for authentication, task orchestration, data storage, and containerized application deployment.
19
+
20
+ ## Overview
21
+
22
+ Arkitekt Server is a deployment configuration management tool that simplifies the setup and management of the Arkitekt ecosystem. It generates Docker Compose configurations and handles the complex orchestration of multiple services including databases, message queues, object storage, and various scientific computing services.
23
+
24
+ ## Quick Start: How to Start the Server
25
+
26
+ ### Prerequisites
27
+ - Python 3.12+
28
+ - Docker and Docker Compose
29
+ - UVX (recommended) or pip
30
+
31
+ ### 1. Initialize Your Deployment
32
+ ```bash
33
+ # Initialize in the current directory (interactive wizard)
34
+ uvx arkitekt-server init --wizard
35
+
36
+ # Initialize with a specific template (default, dev, minimal)
37
+ uvx arkitekt-server init --template default
38
+
39
+ # Initialize in a specific directory
40
+ uvx arkitekt-server init --template dev ./my-server
41
+ ```
42
+
43
+
44
+
45
+ ### 2. Set Up Users and Organizations
46
+ ```bash
47
+ # Add a user
48
+ uvx arkitekt-server user add
49
+
50
+ # Add an organization
51
+ uvx arkitekt-server organization add
52
+ ```
53
+
54
+ ### 3. Build and Start
55
+ ```bash
56
+ # Generate deployment files (auto-detects backend)
57
+ uvx arkitekt-server build
58
+
59
+ # Start the services (using docker compose directly for now)
60
+ docker compose up -d
61
+ ```
62
+
63
+ ### 4. Access Your Server
64
+ Wait for services to initialize, then access via the Arkitekt Orkestrator interface at the configured URL (usually http://localhost:8000).
65
+
66
+ ## Temporary Server (Ephemeral Mode)
67
+
68
+ For quick testing, demos, or development without leaving any trace, you can use the ephemeral mode. This creates a temporary server instance in a temporary directory, starts it, and cleans everything up when you stop it.
69
+
70
+ ```bash
71
+ # Start a temporary server on port 23489 (default)
72
+ uvx arkitekt-server ephemeral
73
+
74
+ # Start on a specific port
75
+ uvx arkitekt-server ephemeral --port 8080
76
+ ```
77
+
78
+ This is perfect for trying out Arkitekt or running integration tests.
79
+
80
+ ## Command Reference
81
+
82
+ ### Core Commands
83
+
84
+ - **`init`**: Initializes a new Arkitekt server configuration.
85
+ - `--wizard`: Runs an interactive wizard to guide you through setup.
86
+ - `--template [default|dev|minimal]`: Uses a predefined template.
87
+ - `[path]`: Specifies the directory to initialize (default: current directory).
88
+
89
+ - **`build`**: Generates the deployment files (e.g., `docker-compose.yaml`) based on your configuration.
90
+ - `--dry-run`: Shows what would be generated without writing files.
91
+
92
+ - **`start`**: Starts the server services using the generated deployment files.
93
+ - Equivalent to running `docker compose up -d`.
94
+
95
+ - **`update`**: Updates the server images and restarts services.
96
+ - Pulls the latest Docker images and runs `up -d`.
97
+
98
+ - **`ephemeral`**: Starts a temporary, disposable server instance.
99
+ - `--port`: Sets the HTTP port.
100
+ - `--defaults`: Skips prompts and uses default settings.
101
+
102
+ ### Management Commands
103
+
104
+ - **`service`**: Manage individual Arkitekt services (Rekuest, Mikro, etc.).
105
+ - `[service_name] --enable/--disable`: Enable or disable a service.
106
+ - `list`: List all available services and their status.
107
+
108
+ - **`user`**: Manage users for the Arkitekt deployment.
109
+ - `add`: Create a new user (interactive).
110
+ - `list`: List all configured users.
111
+ - `delete`: Remove a user.
112
+
113
+ - **`organization`**: Manage organizations.
114
+ - `add`: Create a new organization.
115
+ - `list`: List all configured organizations.
116
+
117
+ - **`inspect`**: Inspect the current state and configuration.
118
+ - `config`: Displays the current configuration and enabled services.
119
+
120
+ ## Detailed Documentation
121
+
122
+ For comprehensive documentation, see the `docs/` folder:
123
+
124
+ - **[📚 Getting Started Guide](docs/starting.md)** - Step-by-step setup instructions
125
+ - **[⚙️ Configuration Guide](docs/configuration.md)** - Detailed configuration options
126
+ - **[🔧 Services Overview](docs/services.md)** - Complete service descriptions
127
+ - **[🏗️ Architecture Guide](docs/architecture.md)** - Deployment patterns and architecture
128
+
129
+ ## Oh my god, I forgot all of my passwords!
130
+
131
+ If you forget your preconfiugred user passwords, you can reset them by running:
132
+
133
+ ```bash
134
+ uvx arkitekt-server user list
135
+ ```
136
+
137
+ This command will list all users and their roles, that you have configured previously.
138
+ Of course you would never use this in production, but it is a useful command for development and testing purposes.
139
+
140
+
141
+ ### Non-UVX Usage
142
+
143
+ If you prefer not to use UVX, you can run the tool directly with:
144
+
145
+ ```bash
146
+ pip install arkitekt-server
147
+ arkitekt-server init --template default
148
+ ```
149
+
150
+ ## Key Features
151
+
152
+ - **One-Command Deployment**: Generate complete Docker Compose configurations with sensible defaults
153
+ - **Service Deployment**: Deploy and manage multiple interconnected services
154
+ - **Authentication & Authorization**: Built-in user management with JWT-based authentication
155
+ - **Development Mode**: Hot-reload support for development with GitHub repository mounting (when available)
156
+
157
+ ## Core Services
158
+
159
+ The Arkitekt ecosystem includes several specialized services:
160
+
161
+ - **Lok**: Authentication and authorization service with JWT token management
162
+ - **Rekuest**: Task orchestration and workflow management
163
+ - **Mikro**: Image and microscopy data management
164
+ - **Kabinet**: Container and application registry
165
+ - **Fluss**: Workflow execution engine
166
+ - **Kraph**: Knowledge graph and metadata management
167
+ - **Elektro**: Electrophysiology data handling
168
+ - **Alpaka**: AI/ML model management with Ollama integration
169
+
170
+ ## Configuration
171
+
172
+ The tool generates and manages a `arkitekt_server_config.yaml` file that contains all deployment settings. This file includes:
173
+
174
+ - Service configurations and Docker images
175
+ - Database and Redis settings
176
+ - Object storage (MinIO) configuration
177
+ - Authentication keys and secrets
178
+ - User and group management
179
+ - Network and routing configuration
180
+
181
+ This file can be customized to suit your deployment needs, allowing you to specify local or remote databases, shared or dedicated storage buckets, and development or production deployment modes. This config-file is the central point for managing your Arkitekt Server deployment. And it is automatically generated based on the services you enable and the options you choose during initialization.
182
+
183
+ ## Architecture
184
+
185
+ Arkitekt Server uses a self-contained service architecture with:
186
+
187
+ - **PostgreSQL**: Primary database for all services
188
+ - **Redis**: Message queuing and caching
189
+ - **MinIO**: S3-compatible object storage
190
+ - **Caddy**: Reverse proxy and gateway
191
+ - **Docker**: Container orchestration
192
+
193
+ Each service can be configured independently with options for:
194
+ - Local or remote databases
195
+ - Shared or dedicated storage buckets
196
+ - Development or production deployment modes
197
+ - Custom authentication configurations
198
+
199
+ ## Development
200
+
201
+ For development workflows, the tool supports:
202
+
203
+ - GitHub repository mounting for live code reloading
204
+ - Debug mode with detailed logging
205
+ - Separate development configurations
206
+
207
+
208
+ ## License
209
+
210
+ MIT License
@@ -0,0 +1,195 @@
1
+ # Arkitekt Server
2
+
3
+ A command-line tool for deploying and managing an Arkitekt server deployments. Arkitekt Server provides a comprehensive platform for scientific computing and data management, with built-in support for authentication, task orchestration, data storage, and containerized application deployment.
4
+
5
+ ## Overview
6
+
7
+ Arkitekt Server is a deployment configuration management tool that simplifies the setup and management of the Arkitekt ecosystem. It generates Docker Compose configurations and handles the complex orchestration of multiple services including databases, message queues, object storage, and various scientific computing services.
8
+
9
+ ## Quick Start: How to Start the Server
10
+
11
+ ### Prerequisites
12
+ - Python 3.12+
13
+ - Docker and Docker Compose
14
+ - UVX (recommended) or pip
15
+
16
+ ### 1. Initialize Your Deployment
17
+ ```bash
18
+ # Initialize in the current directory (interactive wizard)
19
+ uvx arkitekt-server init --wizard
20
+
21
+ # Initialize with a specific template (default, dev, minimal)
22
+ uvx arkitekt-server init --template default
23
+
24
+ # Initialize in a specific directory
25
+ uvx arkitekt-server init --template dev ./my-server
26
+ ```
27
+
28
+
29
+
30
+ ### 2. Set Up Users and Organizations
31
+ ```bash
32
+ # Add a user
33
+ uvx arkitekt-server user add
34
+
35
+ # Add an organization
36
+ uvx arkitekt-server organization add
37
+ ```
38
+
39
+ ### 3. Build and Start
40
+ ```bash
41
+ # Generate deployment files (auto-detects backend)
42
+ uvx arkitekt-server build
43
+
44
+ # Start the services (using docker compose directly for now)
45
+ docker compose up -d
46
+ ```
47
+
48
+ ### 4. Access Your Server
49
+ Wait for services to initialize, then access via the Arkitekt Orkestrator interface at the configured URL (usually http://localhost:8000).
50
+
51
+ ## Temporary Server (Ephemeral Mode)
52
+
53
+ For quick testing, demos, or development without leaving any trace, you can use the ephemeral mode. This creates a temporary server instance in a temporary directory, starts it, and cleans everything up when you stop it.
54
+
55
+ ```bash
56
+ # Start a temporary server on port 23489 (default)
57
+ uvx arkitekt-server ephemeral
58
+
59
+ # Start on a specific port
60
+ uvx arkitekt-server ephemeral --port 8080
61
+ ```
62
+
63
+ This is perfect for trying out Arkitekt or running integration tests.
64
+
65
+ ## Command Reference
66
+
67
+ ### Core Commands
68
+
69
+ - **`init`**: Initializes a new Arkitekt server configuration.
70
+ - `--wizard`: Runs an interactive wizard to guide you through setup.
71
+ - `--template [default|dev|minimal]`: Uses a predefined template.
72
+ - `[path]`: Specifies the directory to initialize (default: current directory).
73
+
74
+ - **`build`**: Generates the deployment files (e.g., `docker-compose.yaml`) based on your configuration.
75
+ - `--dry-run`: Shows what would be generated without writing files.
76
+
77
+ - **`start`**: Starts the server services using the generated deployment files.
78
+ - Equivalent to running `docker compose up -d`.
79
+
80
+ - **`update`**: Updates the server images and restarts services.
81
+ - Pulls the latest Docker images and runs `up -d`.
82
+
83
+ - **`ephemeral`**: Starts a temporary, disposable server instance.
84
+ - `--port`: Sets the HTTP port.
85
+ - `--defaults`: Skips prompts and uses default settings.
86
+
87
+ ### Management Commands
88
+
89
+ - **`service`**: Manage individual Arkitekt services (Rekuest, Mikro, etc.).
90
+ - `[service_name] --enable/--disable`: Enable or disable a service.
91
+ - `list`: List all available services and their status.
92
+
93
+ - **`user`**: Manage users for the Arkitekt deployment.
94
+ - `add`: Create a new user (interactive).
95
+ - `list`: List all configured users.
96
+ - `delete`: Remove a user.
97
+
98
+ - **`organization`**: Manage organizations.
99
+ - `add`: Create a new organization.
100
+ - `list`: List all configured organizations.
101
+
102
+ - **`inspect`**: Inspect the current state and configuration.
103
+ - `config`: Displays the current configuration and enabled services.
104
+
105
+ ## Detailed Documentation
106
+
107
+ For comprehensive documentation, see the `docs/` folder:
108
+
109
+ - **[📚 Getting Started Guide](docs/starting.md)** - Step-by-step setup instructions
110
+ - **[⚙️ Configuration Guide](docs/configuration.md)** - Detailed configuration options
111
+ - **[🔧 Services Overview](docs/services.md)** - Complete service descriptions
112
+ - **[🏗️ Architecture Guide](docs/architecture.md)** - Deployment patterns and architecture
113
+
114
+ ## Oh my god, I forgot all of my passwords!
115
+
116
+ If you forget your preconfiugred user passwords, you can reset them by running:
117
+
118
+ ```bash
119
+ uvx arkitekt-server user list
120
+ ```
121
+
122
+ This command will list all users and their roles, that you have configured previously.
123
+ Of course you would never use this in production, but it is a useful command for development and testing purposes.
124
+
125
+
126
+ ### Non-UVX Usage
127
+
128
+ If you prefer not to use UVX, you can run the tool directly with:
129
+
130
+ ```bash
131
+ pip install arkitekt-server
132
+ arkitekt-server init --template default
133
+ ```
134
+
135
+ ## Key Features
136
+
137
+ - **One-Command Deployment**: Generate complete Docker Compose configurations with sensible defaults
138
+ - **Service Deployment**: Deploy and manage multiple interconnected services
139
+ - **Authentication & Authorization**: Built-in user management with JWT-based authentication
140
+ - **Development Mode**: Hot-reload support for development with GitHub repository mounting (when available)
141
+
142
+ ## Core Services
143
+
144
+ The Arkitekt ecosystem includes several specialized services:
145
+
146
+ - **Lok**: Authentication and authorization service with JWT token management
147
+ - **Rekuest**: Task orchestration and workflow management
148
+ - **Mikro**: Image and microscopy data management
149
+ - **Kabinet**: Container and application registry
150
+ - **Fluss**: Workflow execution engine
151
+ - **Kraph**: Knowledge graph and metadata management
152
+ - **Elektro**: Electrophysiology data handling
153
+ - **Alpaka**: AI/ML model management with Ollama integration
154
+
155
+ ## Configuration
156
+
157
+ The tool generates and manages a `arkitekt_server_config.yaml` file that contains all deployment settings. This file includes:
158
+
159
+ - Service configurations and Docker images
160
+ - Database and Redis settings
161
+ - Object storage (MinIO) configuration
162
+ - Authentication keys and secrets
163
+ - User and group management
164
+ - Network and routing configuration
165
+
166
+ This file can be customized to suit your deployment needs, allowing you to specify local or remote databases, shared or dedicated storage buckets, and development or production deployment modes. This config-file is the central point for managing your Arkitekt Server deployment. And it is automatically generated based on the services you enable and the options you choose during initialization.
167
+
168
+ ## Architecture
169
+
170
+ Arkitekt Server uses a self-contained service architecture with:
171
+
172
+ - **PostgreSQL**: Primary database for all services
173
+ - **Redis**: Message queuing and caching
174
+ - **MinIO**: S3-compatible object storage
175
+ - **Caddy**: Reverse proxy and gateway
176
+ - **Docker**: Container orchestration
177
+
178
+ Each service can be configured independently with options for:
179
+ - Local or remote databases
180
+ - Shared or dedicated storage buckets
181
+ - Development or production deployment modes
182
+ - Custom authentication configurations
183
+
184
+ ## Development
185
+
186
+ For development workflows, the tool supports:
187
+
188
+ - GitHub repository mounting for live code reloading
189
+ - Debug mode with detailed logging
190
+ - Separate development configurations
191
+
192
+
193
+ ## License
194
+
195
+ MIT License
@@ -0,0 +1,4 @@
1
+ from .main import main
2
+
3
+
4
+ __all__ = ["main", "create_server"]