Create a new Pixeltable project in one command
Project description
pixeltable-new
Create a new Pixeltable project in one command.
How to use
Install uv following their guide for your system.
Run:
uvx pixeltable-new myapp
This will create a new project myapp with a Pixeltable schema and declarative serving config.
Enter the directory:
cd myapp
Install dependencies and run:
uv add pixeltable
uv run pxt serve my-service
Open your browser and go to http://localhost:8000/docs to see your API docs.
Application Templates
Vertical apps that each build on a structural pattern — so you already know how to run and deploy them:
uvx pixeltable-new --template multimodal-rag my-kb # serving + backend (web UI)
uvx pixeltable-new --template video-intel my-video-app # serving (pure declarative)
uvx pixeltable-new --template agent my-agent # serving + backend (web UI)
uvx pixeltable-new --template audio-intel my-podcast-app # serving + backend (web UI)
uvx pixeltable-new --template content-pipeline my-pipe # batch (pipeline.py)
uvx pixeltable-new --template data-lab my-dataset # batch (export.py)
| Template | Pattern | What you get |
|---|---|---|
multimodal-rag |
serving + backend | Unified search across docs, images, video, audio. schema.py + app.py + web UI |
video-intel |
serving | Declarative video pipeline: frames, transcription, detection, search. Pure schema.py |
agent |
serving + backend | Persistent agent with durable memory, tools, MCP. schema.py + app.py + web UI |
audio-intel |
serving + backend | Transcription, diarization, summarization, semantic search. schema.py + app.py + web UI |
content-pipeline |
batch | Ingest from S3, process all modalities, export to your DB. schema.py + pipeline.py |
data-lab |
batch | Auto-annotate, curate, version, export to PyTorch. schema.py + export.py |
Structural Patterns
API/pipeline scaffolds for when you want to wire Pixeltable into your own architecture:
uvx pixeltable-new myapp --serving # Declarative API from TOML config (default)
uvx pixeltable-new myapp --backend # FastAPI API scaffold (headless)
uvx pixeltable-new myapp --batch # Batch processing script
| Pattern | What you get | Run with |
|---|---|---|
--serving (default) |
schema.py + pyproject.toml routes |
pxt serve <service-name> |
--backend |
FastAPI API scaffold + Pixeltable schema + routers | uvicorn main:app --reload |
--batch |
Ingest script + export_sql |
python pipeline.py |
Discovery
uvx pixeltable-new --list # show all patterns + templates
All content is fetched from the Pixeltable Starter Kit. For the full reference with Docker, Helm, Terraform, and cloud deploy configs, clone the starter kit directly.
Existing directory
If you want to create a new Pixeltable project in an existing directory, run the command without a project name:
uvx pixeltable-new
Learn more
Releasing
Releases are published to PyPI automatically when a version tag is pushed.
One-time setup (trusted publishing)
- Go to pypi.org/manage/project/pixeltable-new/settings/publishing/
- Add a new trusted publisher:
- Owner:
pixeltable - Repository:
pixeltable-new - Workflow:
publish.yml - Environment:
pypi
- Owner:
- Create a GitHub environment called
pypiat github.com/pixeltable/pixeltable-new/settings/environments
Publishing a release
# 1. Bump version in src/pixeltable_new/__init__.py
# 2. Update release-notes.md
# 3. Commit, tag, push
git add -A && git commit -m "v0.3.0: description of changes"
git tag v0.3.0
git push && git push --tags
The CI workflow runs the full test matrix, then publishes to PyPI via OIDC (no API token needed).
Manual publish (fallback)
If trusted publishing isn't configured yet, publish manually with a PyPI API token scoped to the pixeltable-new project:
uv build
uv publish --token pypi-YOUR_TOKEN_HERE
License
This project is licensed under the terms of the Apache 2.0 license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pixeltable_new-0.2.2.tar.gz.
File metadata
- Download URL: pixeltable_new-0.2.2.tar.gz
- Upload date:
- Size: 14.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee87768879ebac2d13e3eef2c48ec956d957385d542c27511e15a75d4d4b23c8
|
|
| MD5 |
fbc2e26fe0f742e4e41d02bc7914409f
|
|
| BLAKE2b-256 |
cdd79ee49444976e5b0260d7ffcc6c20ea7550fcac8da0b9367c31ccd512ef61
|
File details
Details for the file pixeltable_new-0.2.2-py3-none-any.whl.
File metadata
- Download URL: pixeltable_new-0.2.2-py3-none-any.whl
- Upload date:
- Size: 12.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5fb37f144ddac2ca2cb3d32f5ea414dc3c1fbcb74dd752bb6da5819b8932b878
|
|
| MD5 |
38fb6d4107a73357642550f2bd2f9b43
|
|
| BLAKE2b-256 |
5abebe15c9da5f51dc286919829fc67b25b16bcd9a2a0c27bbe955c19e00c1a9
|