Repository navigation
Releases: funland/foliospace-Library
Release list
FolioSpace Library 1.03 — Movie and TV Library
FolioSpace Library 1.03
Release 1.03 publishes the complete movie-library P0/P1/P2 baseline while
retaining the reader, game and download functionality from 1.02.
Movie and TV management
- Paginated poster-wall browsing and consistent artwork across the home video
library, recently added items, works and collection surfaces. - Local NFO/images, manual metadata corrections and explicit optional TMDB
candidate matching. Original media files and existing video IDs remain intact. - Work/library filters, recent sorting, stable season/episode identities,
specials and multiple file versions for compatible clients. - Profile/file-scoped playback state, explicit watched/unwatched, continue
watching and next-up APIs. Idempotent retry and revision/content conflicts
prevent silent cross-device overwrites; media delivery does not wait for sync. - Optional on-demand refresh of a confirmed TMDB series season: locally
available, missing, unreleased or unknown episodes, with local fallback.
The server primarily supplies catalogs, metadata, posters and original-file
streams. Clients perform decoding. Existing optional HLS compatibility is
retained; this release does not introduce background whole-library transcoding.
Client features require capability discovery and a compatible app build, not
just an image upgrade. No App Store client release is implied.
TMDB: opt-in, operator-owned token
Online matching is off by default. Each operator must apply through their own
TMDB account and configure an API Read Access Token, not a v3 API key or the
FolioSpace connection token. There is no bundled/shared developer key. The 1.03
Compose example passes the optional provider/token/language settings with safe
blank defaults; real .env files are excluded from Git and the build context.
Bring-your-own-token is not a commercial license. Review TMDB's current
terms and commercial-use requirements for your actual deployment/client use,
and retain approved attribution. Do not put credentials in repositories, images,
URLs, logs, screenshots or shared Compose output. The web About screen and movie
footer include TMDB attribution. Setup, privacy and official sources
· 中文配置说明.
Upgrading
- Back up your persistent
/configbefore the additive metadata/playback schema
upgrade. Keep the existing token, data/media mounts and custom environment. - Pull
funland/foliospace-library:1.03and update your existing deployment;
use the new Compose mappings only if you want optional TMDB matching. - Check
/api/client/infoand your normal book/game/video workflow. Preserve
deployment-specific startup settings, including
FOLIOSPACE_PRESERVE_GAME_CATALOG_ON_START=1where already configured. - Keep a previous image and a stopped-state backup. Do not restore an old
database over newly recorded progress without reconciling the changes.
docker pull funland/foliospace-library:1.03Tags 1.03 and latest target Linux AMD64 and ARM64. Publishing an image does
not automatically replace an existing container. All earlier CIA install,
MAME/FBNeo compatibility, PC-98 per-ROM fonts, Triforce routing and Range behavior
remain included. No ROMs, BIOS, firmware, fonts, movies or private library data
are bundled.
Documentation and acceptance boundaries
The overview now explains Reader, Player and SpatialEMU, welcomes independent
clients, and includes six real English demo captures with source/license credits.
Captured pre-release version labels remain unchanged; they do not certify a
new native client release. Client P1/P2 passed 323 Core tests and four-platform
compilation; Mac/iPad development packages were installed separately. Cross-device
playback acceptance and visionOS/tvOS device validation remain separate gates.
Legacy thumbnail-to-new-poster bridging, complex multi-episode files, and
MetaTube/DMM adapters are not delivered by this release. Existing thumbnail,
file/manifest and HLS routes remain compatible. TMDB search/refresh is explicit,
not automatic whole-library scraping. No dependency modernization is claimed.
Release verification and known tooling warnings
Full Go tests and go vet, all 45 web tests, TypeScript and the production web
build passed. The Compose template passes config --quiet with an empty env
file. Runtime source descends from the complete accepted production baseline;
the release does not replace an existing deployment automatically.
The npm lockfile is unchanged from 1.02. Audit still reports four high-severity
dependency findings in nanoid, PostCSS, source-map-js and Vite. These concern
build/development tooling paths; the production image serves prebuilt static
assets and contains neither Node/npm nor a Vite development server. This is not
a claim that the dependency tree is vulnerability-free. Dependency remediation
remains separate, and untrusted build inputs or exposed development servers must
not be treated as safe. The existing large-JavaScript-chunk build warning also
remains; no dependency upgrade or bundle-size optimization is claimed here.
简体中文
1.03 正式发布完整影片库:统一海报、作品/季集/多版本、本地 NFO 与人工修正、
可选 TMDB 匹配、按档案与文件保存的观看进度、继续观看和下一集接口。
保留此前阅读与游戏全部版本链,服务器主要提供原文件与元数据,解码交给客户端。
TMDB 默认关闭,部署者自行申请并配置读取令牌;没有共享开发者密钥,自备不等于商用授权,
还需遵守来源条款和署名要求。升级前备份 /config,保留原口令/挂载/配置;
Docker 发布不代表已有生产容器或商店客户端被自动更新。
Published artifacts
- Source:
35a48eb13457b900ea571f2117fede4bd480142f - Successful GitHub multi-architecture build
- Docker Hub:
funland/foliospace-library:1.03andlatest(Linux AMD64 / ARM64) - OCI index:
sha256:892b406421f3244b9cebbb8472ca20f6c6ec57de55f4dc9de6bb61c59fedb17c - Published AMD64 image passed an isolated empty-library startup/version/capability smoke test. No production deployment is implied.
FolioSpace MCP 1.03.1
FolioSpace MCP 1.03.1
Independent agent-side release. FolioSpace Library / Docker remains 1.03.
- Nine new read-only movie-library tools: works, work details, seasons, episodes, file versions, availability, per-file playback state, continue watching and next up.
- Capability discovery before querying; old servers can return explicitly labelled legacy file lists. Unsupported work filters never silently disappear.
- Explicit profile IDs are validated and preserved. Authentication failures do not fall back to a different route or profile. HTTP conflicts keep their structured code and state.
- Pagination defaults to 20, caps at 100; new tools bound responses to 2 MiB and do not follow redirects or expose upstream diagnostic bodies.
- All existing book/game/video/state/scan tool names and behavior remain available. This release adds no mutation tools.
- Four independent packages: macOS Intel/Apple Silicon and Linux AMD64/ARM64, with SHA-256 checksums.
- Installer requires valid checksums, tests initialization before atomic replacement, preserves URL/token configuration, and retains one previous binary for rollback.
Reconnect your MCP host after upgrading. Existing running processes do not automatically change when the executable is replaced. The package is a stdio bridge, not a new network service.
Canonical packages and installer: this GitHub release, tagged mcp-v1.03.1. The older website installer is not the release authority. MCP tags do not trigger Docker builds or replace the server's Latest release.
FolioSpace Library 1.02
FolioSpace Library 1.02
This release publishes the PC-98 font and Triforce routing fixes previously used
in production, on top of the complete 1.01 baseline.
Changes
- Per-ROM/version PC-98 font selection through a JSON sidecar or dedicated sibling
bitmap, with generic-font fallback. One logicalFONT.bmpis served with its own
size/checksum. Targeted scans detect font-only changes without rewriting ROMs. - Triforce ISO/GCM/RVZ files in an exact
Triforcepath segment, library name, or
library root useplatform=ngc,emulatorHint=dolphin,romSetName=Triforce.
Unrelated disc/NGC routing stays unchanged. Client emulation support, BIOS setup,
and actual gameplay acceptance are separate from server delivery support. - Preserves 1.01 MAME content-equivalence support, FBNeo build-identity compatibility,
CIA installation, Range/resumable downloads, and bilingual beginner setup. - Service and MCP metadata report 1.02. Docker images support Linux AMD64/ARM64.
No ROMs, cover collections, fonts, BIOS, firmware, tokens, or private catalog data
are included. No new automatic game import or policy replacement is introduced.
Upgrade
docker pull funland/foliospace-library:1.02Back up the existing config/database. Update the image in your existing Compose
configuration, preserving its token, ports and mounts, then run docker compose up -d.
Do not replace a customized configuration with the example file.
For font changes, use a targeted ROM scan and refresh the client manifest/package.
See PC-98 configuration
and the retained MAME upgrade notes.
简体中文
1.02 将生产中使用的 PC-98 独立字体修复与 Triforce 分类路由正式发布。
保留完整 1.01 基线,不恢复 FBNeo App 指纹/构建标识拦截,也不包含私人资料库或游戏文件。
字体修改后定向扫描对应 ROM 并刷新客户端 manifest;Triforce 游戏能否实际运行仍取决于客户端核心和配置。
升级时保留现有 token、端口、挂载与配置数据。
Validation and known build-tool notices
Before publication: all Go tests and go vet passed; 34 web tests, TypeScript/Vite
production build, Compose configuration validation, and diff checks passed.
The scanner implementation matches the production hotfix source snapshot.
The unchanged npm lockfile reports high-severity advisories in the existing
Vite/PostCSS/nanoid/source-map-js build-tool dependency chain. These require a
separate dependency update; this release does not claim they are fixed. The final
Docker stage serves compiled static assets and does not include Node, npm, or
the Vite development server. The existing bundle-size warning also remains.
FolioSpace Library 1.01
FolioSpace Library 1.01
Highlights
- MAME clients can reuse an existing audited launch profile across releases when
trusted listxml evidence proves the full ROM/dependency definition unchanged.
Exact profiles stay preferred; cross-version responses echo the client runtime
and add optionalcontentAuditprovenance. - Bundles 1,889 content definitions for 631 sets across MAME 0.287, 0.288 and
0.289, and includes thefoliospace-mame-content-registryadministrator tool.
No ROMs, BIOS files, firmware, or private catalog data are included. - Preserves public 1.00 FBNeo behavior: App hashes and
coreBuildIdvalues are
diagnostic for supported official clients, not reasons to reject an otherwise
approved profile. Client/platform/runtime and ROM/dependency checks remain. - Retains CIA installation, resumable downloads, bilingual first-run setup and
the existing library APIs. - Builds portable web assets on the native GitHub runner and cross-compiles Go
for each target architecture, avoiding ARM64-emulatednpm ci. The release job
now has a 30-minute timeout.
Docker
docker pull funland/foliospace-library:1.01Published by GitHub Actions for linux/amd64 and linux/arm64, with latest
pointing to the same release. Back up persistent /config data before upgrading
an installation. Publishing an image does not upgrade an existing container.
An existing /config/policies/mame-content-equivalence.json remains authoritative
and is not overwritten. Bundled defaults apply only when that file is absent.
Existing audited profiles are required; this release does not auto-import games
or rebuild an operator's catalog. See the
compatibility and upgrade notes.
Validation
- Full Go test suite and
go vet ./.... - Frontend: 34 tests, TypeScript checking and Vite production build.
- Compose configuration validation without starting a service.
- All 1,889 bundled records reproduced from their official listxml archives;
archive and registry SHA-256 values checked. - HTTP coverage for exact profiles, cross-version content, missing dependencies,
changed source bytes, custom-registry overrides and bundled defaults. - Existing FBNeo compatibility tests cover changed/unknown build IDs and App
hashes on supported official Apple, Windows and Android clients.
The unchanged frontend lockfile reports three dependency-audit findings in
build tooling (Vite, PostCSS and nanoid). These packages run in the build stage;
the final image copies static assets, not Node.js or the Vite development server.
This release does not claim a clean dependency-security audit or client gameplay
certification.
The first pre-publication build was cancelled after ARM64-emulated npm ci
stopped making progress; the AMD64 build had already completed. No 1.01 image
was published by that attempt. The draft tag was corrected to include only this
build-pipeline fix, without changing the application compatibility behavior.
The approach follows Docker's native-stage cross-compilation guidance.
简体中文
1.01 增加 MAME 跨版本内容兼容、内置证据和管理员生成工具,保留 FBNeo
不按 App 指纹或构建标识拦截的现有行为。支持 AMD64 / ARM64,不包含或下载
ROM、BIOS、固件。发布镜像不会自动替换已有容器,也不会覆盖管理员策略或改写游戏。
FolioSpace Library 1.00
FolioSpace Library 1.00 makes the optional SpatialEMU + FolioSpace workflow easier to understand and deploy.
Highlights
- Adds bilingual beginner onboarding for connecting SpatialEMU to a self-hosted FolioSpace Library.
- Documents the Docker/Compose path for Mac, Windows, Linux, and compatible NAS hosts. A NAS is optional and no coding is required.
- Separates the SpatialEMU Setup Guide from the FolioSpace product overview, with English and Simplified Chinese links.
- Includes the 0.998 3DS CIA install-content protocol and diagnostic error semantics.
- Retains the 0.997 Apple FBNeo runtime compatibility and arcade ROM-set handling fixes.
- Publishes Docker images for
linux/amd64andlinux/arm64.
FolioSpace does not provide or download ROMs, BIOS files, or firmware. Use only content you are authorized to use.
Docker
docker pull funland/foliospace-library:1.00FolioSpace Library 0.997
FolioSpace Library 0.997 restores broad FBNeo target coverage and improves compatibility with verified historical ROM layouts without turning runtime build metadata into a usability gate.
Hotfix update:
- FBNeo
coreSha256andcoreBuildIdare diagnostic only for supported official SpatialEMU Windows, macOS, iOS, iPadOS, visionOS, tvOS, and GameEMU Android clients. - A changed, unknown, or omitted FBNeo build identity no longer returns
core-fingerprint-unknownwhen the client has an otherwise valid launch profile. - FBNeo resolution still requires the exact client/platform/architecture,
libretro/fbneoroute, immutable ROM profile, and complete dependency closure. - Other cores retain their existing rules. MAME runtime/content-set matching and Android Flycast identity policies are unchanged.
- Updating the server image is sufficient for this hotfix; no catalog re-analysis is required.
Original 0.997 highlights:
- Default FBNeo rebuild targets include SpatialEMU iOS, iPadOS, visionOS, and Windows.
- Historical archive member names are accepted when their exact size and CRC match the installed FBNeo DAT.
- The field-proven Captain Commando
ioc1.ic7PLD variant is accepted only for the exactcaptcommmember fingerprint. - Android manifest-first FBNeo downloads, Android Flycast/NAOMI profiles, and MAME policies remain independent.
Existing deployments that previously generated only a subset of FBNeo profiles should verify that their target document lists every intended client, then run Analyze Catalog once. That existing recommendation is independent of this runtime-identity hotfix.
Docker images:
funland/foliospace-library:0.997funland/foliospace-library:latest
Both tags publish Linux AMD64 and ARM64 images from complete hotfix merge commit 42b7826; manifest digest sha256:0461fc69df5107f8c1bf9d4e9d3eff898ab2802321487f7926435bb1e00ffb45.
FolioSpace Library 0.995
FolioSpace Library 0.995 expands safe native game delivery, compatibility curation, and offline access.
- Nintendo 3DS libraries validate direct
.3ds/.cciNCSD images,.cxiNCCH images, and safe single-image ZIP packages before indexing. Launchable images stream as their original inner bytes, while.ciapackages are explicitly marked for client-side installation. - ZIP-backed game downloads support single-range requests even when the inner archive stream is not seekable, enabling resumable Nintendo DS, Nintendo 3DS, and other validated single-ROM downloads.
- Game Curation can rebuild FBNeo or MAME compatibility for one game without deleting unrelated profiles. The MAME audit includes a fingerprint-pinned exception for the verified Time Crisis package that embeds its exact
namcoc71device ROM, without rewriting the ZIP. - Android ARM64 launch resolution accepts the pinned Flycast v4 runtime identity for Dreamcast, NAOMI, Atomiswave, and audited NAOMI 2 packages. Split NAOMI 2 sets require their checksummed parent ZIP, while user-managed firmware is not injected into Android manifests.
- Book manifests expose a byte-exact authenticated download URL with HTTP Range and HEAD support for offline reading.
- The Client Home API can omit collection expansion for faster first-screen loading, and scans skip
_maintenancedirectories by default.
The Docker release publishes linux/amd64 and linux/arm64 images as funland/foliospace-library:0.995 and funland/foliospace-library:latest.
FolioSpace Library 0.993
FolioSpace Library 0.993 adds Nintendo Virtual Boy catalog support and a server-owned game-platform catalog.
MCP 0.993 adds foliospace.get_game_platform_catalog, which returns stable platform IDs, display titles, aliases, indexed counts, and availability. Existing facets and manifest workflows remain backward compatible.
This release includes standalone MCP binaries for macOS and Linux on amd64 and arm64, plus SHA-256 checksums and the installer script.
FolioSpace Library 0.981
FolioSpace Library 0.981 adds exact, audited game launch-profile negotiation while preserving existing client contracts.
- Adds POST /api/client/games/{gameId}/resolve for exact client/runtime inventory matching.
- Ships audited MAME 0.288 profiles for Virtua Striker and Tekken Tag Tournament, including required dependencies and compatible logical filenames.
- Returns immutable profile revision, runtime identity, checksums, logical filenames, and complete dependency closure.
- Returns an explicit 409 runtime-profile-not-available for unsupported runtime combinations instead of substituting nearby ROM sets.
- Keeps the existing game manifest unchanged for backward compatibility.
- Adds the foliospace.resolve_game_launch_profile MCP tool and updates API/MCP documentation.
- Publishes linux/amd64 and linux/arm64 Docker images.
FolioSpace Library 0.98
FolioSpace Library 0.98 expands game-platform indexing and adds a curated DOS launch contract.
- Adds canonical PSP, Nintendo GameCube, and PlayStation 2 catalog metadata and filters.
- Keeps NAOMI 2 filtering distinct from adjacent arcade platforms.
- Adds the
foliospace.list_game_platformsMCP tool backed by full-library facets. - Indexes curated DOS archives from
games.json, including covers, metadata, launch commands, working directories, and package manifests. - Preserves archive-relative DOS launch paths for reliable client extraction and startup.
Docker: docker pull funland/foliospace-library:0.98
The Client API remains v1 and existing clients remain compatible.