vccs
Vue 3용 차트 컴포넌트 모음, Recharts에서 포팅
콘텐츠를 재귀적으로 스캔하고 CSV로 내보내며 파일을 이메일에 복사하고, 아카이브 이전을 위해 해시를 검증
Scan content recursively, export to CSV, copy files to email, and verify hashes for archival migration
AI가 요약 · 페이지와 README에서
데이터Go · TypeScriptGitHub @snyderb-de온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Content List Toolkit is a single Go desktop application: a Wails GUI on macOS,
Windows, and Linux, plus a Bubble Tea TUI on macOS and Linux.
The Python runtime was removed on 2026-09-16. It existed to give Windows a
GUI before the Wails build covered that platform. The Go app is a strict
superset, so nothing was lost. See
Retired: the Python runtime if you are
migrating an existing Windows deployment.
End-user docs: User Manual · Project DashboardREADME 전문 보기 ↗Written by Bryan Snyder
Content List Toolkit is a single Go desktop application: a Wails GUI on macOS, Windows, and Linux, plus a Bubble Tea TUI on macOS and Linux.
The Python runtime was removed on 2026-09-16. It existed to give Windows a GUI before the Wails build covered that platform. The Go app is a strict superset, so nothing was lost. See Retired: the Python runtime if you are migrating an existing Windows deployment.
End-user docs: User Manual · Project Dashboard
The app supports:
report-001.csv, report-002.csv)Core app/runtime files:
main.go, core.go, app.go, app_types.go, gui_wails.go, scan_*.go — Go runtimegetty_*.go — Getty AAT tag checking for the CONTENTdm workflowfrontend/ — React + TypeScript UI (Vite, built into the Wails app bundle)Deploy and distribution files that must stay aligned with the app:
run-go-gui.sh and content-list-generator.batscripts/The python/ runtime and the deploy/windows/ .bat bundle were removed on
2026-09-16. They remain in git history at tag v0.2.10 if ever needed.
Generated outputs belong in build/ and releases/ and are intentionally not tracked.
project-dashboard/ static project dashboard for repo status and docs
user-manual.html is the standalone web manual, written by handapp-user-manual.html is generated from frontend/src/manual.json and mirrors the manual inside the app; edit the JSON, never this pagescripts/ build, parity, packaging, and local-run helperstesting/ tool-oriented fixtures, generators, runners, and ignored local manual-test foldersdeploy/ copy-ready deployment files that are part of the operational workflowgit clone <repo-url>
cd content-list-generator
./scripts/dev_check.sh
Local launchers:
./run-go-gui.sh./scripts/run_local.sh [go|go-gui]content-list-generator.batTwo distinct release tracks with different update policies:
Native bundles (Wails GUI .exe, mac .app, Linux binary)
update.go)The Python-derived artifacts — the PyInstaller portable zip and the Windows Python source bundle — are retired along with the runtime that produced them.
macOS and Linux:
releases/macos/Content List Toolkit.app or run ./run-go-gui.sh in dev mode--gui flag, no .app bundle)build/./scripts/build_releases.shWindows Wails GUI path:
wails build -platform windows/amd64 -o "content-list-generator.exe".exe into releases/windows-go/ with the same filename.exe needs no installer and runs from any folder, including a USB drive, which is what the retired PyInstaller portable zip existed to provideAutomated checks:
go test ./...
The golden fixtures under testing/ began as cross-language parity checks
against the Python runtime. They outlived it: scan_test.go and
email_copy_test.go still assert against them as regression coverage.
Shared helper scripts:
./scripts/dev_check.sh runs vet and the full test suiteTool-oriented testing layout:
testing/content-scan/ contains content-list fixtures, regeneration helpers, and a feature runnertesting/email-copy/ contains email-copy fixtures, regeneration helpers, and a feature runnertesting/manual-samples/ and testing/manual-output/ are reserved for ignored machine-local testing dataRelease and local package helpers:
./scripts/build_releases.sh
./scripts/package_macos_local.sh
./scripts/package_linux_local.sh
./scripts/package_smoke_assets.sh
./scripts/package_local.sh
Publish all generated release artifacts to one GitHub Release:
git push origin main
scripts/publish_github_release.sh v0.1.0 --target main --draft
The publish helper uploads release artifacts under releases/, excluding .gitkeep;
for the Windows Python source bundle it uploads only the zip, not the loose
staging files used to build that zip.
Build platform-specific artifacts first; for example, run the portable Windows
packager on Windows before publishing if that ZIP should be included.
These scripts generate fresh artifacts in build/ and releases/. The repo no longer treats generated binaries, zips, or tarballs as source files.
Canonical docs now live in:
README.md for setup, structure, runtime, and testingTODO.md for active follow-up workproject-dashboard/ for a lightweight static project overviewThe Python app was the Windows GUI before Wails could build one. Now that the
Go app ships a Windows .exe that needs no installer and runs from a USB
drive, Python covers nothing the Go app does not, and it cost real maintenance:
a second implementation of every feature, pinned customtkinter and blake3
versions to keep aligned on admin-deployed machines, a duplicated
deps_check.py that had already drifted out of sync, and cross-language parity
fixtures for every change.
Nothing is lost. The Python GUI had three screens — content list, email copy, and about. The Go app has those plus Clone Compare, the in-app User Manual, and the Getty Tag check.
| Was | Now |
|---|---|
.bat launcher running content_list_generator.py from %USERPROFILE%\scripts\content-list-gen\ | content-list-generator.exe from the Windows GUI release |
content-list-generator-windows-portable.zip (PyInstaller) | the same .exe — no installer, runs from any folder |
content-list-generator-windows-python.zip | no replacement needed |
pip install -r requirements.txt on each machine | nothing to install |
Settings do not carry over automatically. The Python app stored them in
~/scripts/settings/content-list-generator-settings.json; the Go app uses
%APPDATA%\content-list-generator\settings.json. They are small and quick to
re-enter.
python/, deploy/windows/, requirements.txt, requirements-build.txt, the
Python launchers, scripts/package_windows_python_bundle.sh,
scripts/package_windows_portable.ps1, scripts/parity_check.sh, and
scripts/copy_email_files.py. The windows-portable and windows-python CI
jobs and the pip Dependabot ecosystem went with them.
Two things deliberately stayed. The golden fixtures under testing/ are
asserted against by Go tests, so they are regression coverage rather than
parity leftovers. And testing/*/generate_fixture.py regenerates those
fixtures — it is standard-library dev tooling that never imported the retired
runtime.
Everything removed is in git history at tag v0.2.10.