1
0
Fork
You've already forked yilan
0
A unified, markdown-based project status board across all active work, maintained on demand with AI assistance.
  • Python 98.5%
  • Just 1.5%
Marvin8 f453e0a2b5
All checks were successful
/ pr-review (push) Has been skipped
/ gitleaks (push) Successful in 20s
/ pr-review (release) Has been skipped
/ gitleaks (release) Successful in 17s
/ checks (push) Successful in 1m27s
/ checks (release) Successful in 1m36s
/ deploy-docs (release) Has been skipped
/ deploy-docs (push) Successful in 1m43s
🔧 bump: version 0.4.0 → 0.4.1
2026年07月08日 17:12:49 +10:00
.claude 🔧 add claude remote, commit identity, and settings allowlist 2026年05月14日 17:19:58 +10:00
.forgejo/workflows 🔧 pass github.repository via env var in deploy-docs 2026年07月08日 15:44:51 +10:00
docs 📝 publish docs to yilan.marvin8.zone via grebedoc; add client-side redirect 2026年07月08日 15:47:20 +10:00
src/yilan ♻️ split bracketed multi-import in renderer.py to one per line 2026年06月27日 18:32:23 +10:00
tests ♻️ one import name per line across all modules and tests 2026年06月27日 18:18:23 +10:00
.gitignore 🔧 bump deps 2026年07月08日 15:38:24 +10:00
.gitleaks.toml 👷 migrate CI from Woodpecker to Forgejo Actions 2026年07月08日 15:42:15 +10:00
.pre-commit-config.yaml 🔧 add complexipy to pre-commit checks 2026年07月08日 16:37:22 +10:00
BOARD.md 🔧 bump prek 0.3.13 → 0.4.0; regenerate board with table format 2026年05月15日 12:38:11 +10:00
CHANGELOG.md 📝 update changelog for 0.4.1 2026年07月08日 17:12:46 +10:00
CLAUDE.md 📝 point Release Notes format to template instead of duplicating it 2026年07月08日 17:06:04 +10:00
Justfile ♻️ replace git-cliff changelog generation with Release-Notes.md bullet extraction 2026年07月08日 15:51:42 +10:00
LICENSE.md 📝 add README and LICENSE (AGPL-3.0-or-later) 2026年05月15日 13:44:46 +10:00
mkdocs.yml 📝 publish docs to yilan.marvin8.zone via grebedoc; add client-side redirect 2026年07月08日 15:47:20 +10:00
noxfile.py ♻️ remove interrogate 2026年05月14日 21:16:53 +10:00
pylock.toml ♻️ replace git-cliff changelog generation with Release-Notes.md bullet extraction 2026年07月08日 15:51:42 +10:00
pyproject.toml 🔧 bump: version 0.4.0 → 0.4.1 2026年07月08日 17:12:49 +10:00
README.md 📝 add README and LICENSE (AGPL-3.0-or-later) 2026年05月15日 13:44:46 +10:00
Release-Notes.md 📝 drop intro summary line from Release-Notes format; fix release notes 2026年07月08日 17:03:42 +10:00
Release-Notes.md.template 👷 migrate CI from Woodpecker to Forgejo Actions 2026年07月08日 15:42:15 +10:00
Roadmap.md Stage 5 — CLI Orchestration (cli.py) 2026年05月06日 21:35:55 +10:00
Specifications.md 📝 clarify formatting of intent files. 2026年06月27日 17:49:48 +10:00
uv.lock 🔧 bump: version 0.4.0 → 0.4.1 2026年07月08日 17:12:49 +10:00

yilan

Repo Docs CI

Codestyle

AGPL

yilan is a command-line tool that fetches data from Codeberg via the Forgejo API and renders a unified markdown project status board (BOARD.md). It replaces a 600-line PEP 723 single-file script with a proper installable CLI package. It is a personal tool — no multi-forge support, no PyPI release.

Install and run from Source

Clone the repository:

git clone https://codeberg.org/marvin8/yilan.git

yilan uses uv for dependency management; please install uv before proceeding.

Install all required Python modules:

uv sync

Set your Codeberg API token (read-only scope is sufficient):

export CODEBERG_TOKEN=<your-token>

Run a dry-run to verify output without writing any file:

uv run yilan --dry-run

To write BOARD.md in the current directory:

uv run yilan

Configuration lives at ~/.config/yilan/config.toml — define owners, monorepos, intent files, and concepts there.

Significance of the name yilan

Yilan (一览, yīlǎn) is a classical Chinese word meaning "to take in everything at a single glance" — as in 一览无余 (yīlǎn wúyú, "nothing escapes the eye"). The tool's job is exactly that: pull every active repository into one board so nothing slips out of sight.

Licensing

yilan is licensed under the GNU Affero General Public License v3.0 or later.