Repository navigation
Releases: zhigege666/Lingshu-Home
Release list
Lingshu-Home v0.0.1
Lingshu-Home v0.0.1
This release includes the Linux amd64 server with its built web interface and original dependency notices, the matching source archives, and the tested Docker image saved as an archive. The Linux program and frontend are extracted from that same image.
本版本提供 Linux amd64 服务程序、已构建的网页与原始依赖许可、对应源码包,以及经过测试的 Docker 镜像归档。Linux 下载包与镜像使用同一份程序和前端文件。
Source commit: 95b296210bc82e3c52f32a7b14d78ba914ef6f4c
Container: ghcr.io/zhigege666/lingshu-home:0.0.1 (Linux amd64)
Tested image config ID: sha256:863f591b35cb3dbcbd93d81e5b340281f09a763871f69fe23cb2325650560a9c. This is an image identity, not a registry manifest digest.
Verify downloads with sha256sum --check SHA256SUMS. Extract the Linux archive, enter its directory, and run ./lingshu-home; then open http://127.0.0.1:5180. The persistent data/ directory is created on first run. For containers, pull the image above or use docker load --input <docker-archive.tar.gz>. Keep /data on a persistent volume. Windows/macOS installers are not included.
Changes / 本版本更新
[0.0.1] - 2026-10-20
First application release
Lingshu-Home is an independent navigation dashboard with its own administration, accounts, storage and APIs. The first release provides a Linux amd64 application bundle, matching source archives, a tested Docker image archive and the exact-version GHCR image. Native Windows/macOS applications and other CPU architectures are not part of this release.
Navigation and homepage
- Manage nested categories, links, tags, favorites and ordering. Preview and import Chrome/Netscape bookmark HTML with folder preservation and duplicate handling; export authorized navigation as HTML or JSON.
- Configure internal and external routes separately from ordinary additional links. Default-on automatic selection uses bounded, click-triggered browser probes and short-lived observations; it does not continuously scan the network.
- Use cards or a directory, light/dark/system colors, density controls and category navigation on the top, left, right or bottom, or hide it. Desktop layouts target 2560×1440 and also support 1920×1080, 1600×900 and 2560×1080.
- Edit the homepage in a visual composer with component selection, page structure, a 24-column grid, positioning, resizing, content fitting, locking and a live preview. Header/footer slots, navigation and optional components share a revision-checked draft with explicit Save, Cancel and Restore.
- Choose the built-in Classic or iOS-inspired theme and icon/text presentation. Personal overview, Service operations and Data summary presets bind compatible local sources without starting collectors or copying navigation data.
- Use 30 licensed offline icons, space-scoped icon libraries or validated SVG/PNG/JPEG imports. Automatic website-icon retrieval is enabled by default, uses a bounded background queue, and stores canonical icon bytes in the selected database; manual icons are preserved.
Initialization and access
- Complete first-run setup with a site name, one of four access modes, and an Owner when required. There is no default administrator password. Open editing can remain account-free or optionally create an Owner while retaining anonymous shared-space editing.
- Choose an optional Chinese or English starter website collection with a preview. The collections contain distinct sites and offline icons; examples are off by default and are placed in the shared space. Content selection is independent from the instance interface language.
- Keep English and Simplified Chinese interfaces consistent across setup, sign-in, home and administration. Set
enorzh-CNat startup; existing user-entered content is retained when the interface language changes. - Direct public setup to the shared space, retain a valid selected space across reloads within the same browser tab, and isolate that preference by identity. Backend default-space and data-permission contracts remain unchanged.
- Provide an explicit setup-state recovery action after interrupted or conflicting initialization. Recheck the server before choosing sign-in or home, preserve unsubmitted inputs when setup is still incomplete, and never automatically repeat the setup write.
- Guide editors from an empty local homepage directly to adding a first link or importing bookmarks. Show appropriate read-only and external-source empty states, and allow an account-free instance to create its first Owner without changing access mode.
- Enforce open editing, public read, private single-user and private multi-user modes on the server. Keep personal spaces private, shared content explicit, registration off by default, and sessions/tokens invalidated after relevant permission changes.
Components and data sources
- Add calendar, weather, numeric metrics, service status and GitHub Traffic components with bounded, versioned data contracts. Load optional renderers only when used and share authorized cached snapshots.
- Receive authenticated external pushes, query normalized HTTP JSON APIs, subscribe to read-only ICS calendars, and use the fixed Open-Meteo provider. Configure source credentials on the server with encrypted storage and scoped tokens.
- Import declarative component templates from JSON, a public URL or advertised HTML-head links. Preview compatible templates, bind local sources and save the page draft explicitly. Templates use installed renderers; they do not execute downloaded plugin code.
- Expose a scoped HTTP API and Streamable HTTP MCP endpoint using the same authorization and business functions as the built-in UI. Keep local navigation authoritative and separate from external snapshots.
- Configure an optional Owner-managed outbound HTTP/HTTPS/SOCKS5 proxy with encrypted write-only credentials. Preserve each adapter's destination policy and discard work collected under obsolete configuration.
- Run source polling only when enabled sources need it. The default navigation-only setup creates no external data source or recurring navigation polling loop; an unavailable external service cannot block local navigation.
Storage, reliability and distribution
- Use embedded SQLite by default or a dedicated external PostgreSQL database, with separate migrations through
006_network_routing.sql, transaction boundaries, instance locking and documented recovery. - Isolate PostgreSQL lease-health pings from request cancellation while retaining a latched unavailable response after actual lease loss. Do not silently reacquire a lost singleton lock.
- Drain HTTP requests before closing application resources, release resources after listener failures, and report forced shutdowns honestly. Compose provides a 30-second stop allowance around the application's 15-second HTTP drain budget.
- Serve compressed JavaScript/CSS with cache policies appropriate to static assets, HTML, authorized icons and APIs. Keep authentication hashing parameters unchanged while avoiding an unnecessary additional startup derivation.
- Include the public dashboard producer examples in source archives. Validate archive paths and exclude private design files, runtime data, credentials and generated build backups from source and application deliverables.
- Derive release identity from
VERSION, the matching dated changelog and an immutablev0.0.1tag. Validate the application before packaging, extract the Linux program from the same tested image, and attach source/image identity, original dependency notices and SHA-256 checksums. - Reorganize both READMEs around executable Docker and Linux quick starts, first-run setup, stable data paths and stopping/upgrading. Correct the distinction between container port 8080 and the default host loopback port 5180.
Upgrade and scope
- This is the first published application version. Earlier
0.1.0-dev.1screenshots and working-tree test records describe development builds; the change to the first public version number does not reset stored data. - Preserve the database and its matching instance encryption key. Reuse the same data directory or Docker volume when replacing the application. Database-provider conversion is not automatic; rollback to a binary that predates a migration requires the matching database/key backup.
- GitHub Traffic requires the user's own repository authorization. Weather usage must follow the chosen provider's terms. No real repository traffic baseline is included in the starter data.
- Executable third-party plugins, general WebSocket/SSE/MQTT ingress, a full theme SDK, knowledge-base connectors and native desktop installers remain future work.
- Reproducible development checks and their exact scope are recorded in
tests/README.mdanddocs/PERFORMANCE.md. Final release identity and artifact integrity are recorded by the tagged release workflow and itsrelease-metadata.json; historical test counts are not substitutes for that workflow.