Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 0 additions & 44 deletions .github/workflows/docs-next.yml

This file was deleted.

37 changes: 30 additions & 7 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
name: Deploy Docs

on:
pull_request:
paths:
- "docs/**"
- ".github/workflows/docs.yml"
push:
branches: [master]
paths:
- "docs/**"
- "zensical.toml"
- ".github/workflows/docs.yml"
workflow_dispatch:

Expand All @@ -21,23 +24,43 @@ concurrency:
jobs:
build:
runs-on: ubuntu-latest
defaults:
run:
working-directory: docs
steps:
- uses: actions/checkout@v6

- uses: astral-sh/setup-uv@v8.1.0
- uses: pnpm/action-setup@v6
with:
version: 10

- uses: actions/setup-node@v6
with:
node-version: 24
cache: pnpm
cache-dependency-path: docs/pnpm-lock.yaml

- name: Install dependencies
run: uv sync --extra docs
run: pnpm install --frozen-lockfile

- name: Type check
run: pnpm types:check

- name: Lint
run: pnpm lint

- name: Build docs
run: uv run zensical build
- name: Build
run: pnpm build

- uses: actions/upload-pages-artifact@v5
- name: Upload Pages artifact
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch'
uses: actions/upload-pages-artifact@v5
with:
path: site
path: docs/out

deploy:
needs: build
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
environment:
name: github-pages
Expand Down
14 changes: 10 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,14 +93,20 @@ cargo clippy --manifest-path crates/taskito-core/Cargo.toml

## Documentation

Docs use [Zensical](https://zensical.com/). To preview locally:
Docs are a [Fumadocs](https://fumadocs.dev) site (Next.js + MDX) under `docs/`. To preview locally:

```bash
pip install ".[docs]"
zensical serve
pnpm --dir docs install
pnpm --dir docs dev
```

Then open http://localhost:8000.
Then open http://localhost:3000. To validate before opening a PR:

```bash
pnpm --dir docs types:check
pnpm --dir docs lint
pnpm --dir docs build
```

## Questions?

Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ print(job.result(timeout=10)) # 5

Most Python task queues require a separate broker (Redis, RabbitMQ) even for single-machine workloads. taskito embeds everything — storage, scheduling, and worker management — into a single `pip install` with no external dependencies beyond Python itself. For distributed setups, an optional Postgres backend enables multi-machine workers with the same API.

The heavy lifting runs in Rust: a Tokio async scheduler, OS thread worker pool with crossbeam channels, and Diesel ORM over SQLite in WAL mode. Python's GIL is only held during task execution. For CPU-bound workloads, run with `--pool prefork` to spawn child processes with independent GILs and get true parallel speedup — see the [prefork guide](https://taskito.grigori.in/guide/execution/prefork/).
The heavy lifting runs in Rust: a Tokio async scheduler, OS thread worker pool with `tokio::sync::mpsc` channels, and Diesel ORM over SQLite in WAL mode. Python's GIL is only held during task execution. For CPU-bound workloads, run with `--pool prefork` to spawn child processes with independent GILs and get true parallel speedup — see the [prefork guide](https://docs.byteveda.org/taskito/docs/guides/advanced-execution/prefork).

## Features

Expand Down Expand Up @@ -261,9 +261,9 @@ def test_add():

Full documentation with guides, API reference, architecture diagrams, and examples:

**[Read the docs →](https://taskito.grigori.in)**
**[Read the docs →](https://docs.byteveda.org/taskito)**

Coming from Celery? See the **[Migration Guide](https://taskito.grigori.in/guide/migration/)**.
Coming from Celery? See the **[Migration Guide](https://docs.byteveda.org/taskito/docs/guides/operations/migration)**.

## Comparison

Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion docs-next/README.md → docs/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# docs-next
# docs

This is a Next.js application generated with
[Create Fumadocs](https://github.com/fuma-nama/fumadocs).
Expand Down
Loading
Loading