← Back to list

Docling Studio v0.3.0

Docling Studio is no longer tied to a local Docling install. This release adds remote conversion via Docling Serve, interactive chunking…

Pier-Jean Malandrino in Scub-Lab · 2026-04-07 07:26 · 43 claps · 2.1 min read
#ai #programming #software-development #ocr #technology
Open on Medium ↗
Wiki topics: AI · AI · General 💻 · Programming

Docling Studio v0.3.0

Docling Studio is no longer tied to a local Docling install. This release adds remote conversion via Docling Serve, interactive chunking for RAG pipeline inspection, and a refreshed UI — while hardening the backend with a hexagonal architecture.

Try it nowLive demo on Hugging Face Spaces

Added

Docling Serve support

Studio can now delegate document conversion to a remote Docling Serve instance. Switch engines with CONVERSION_ENGINE=remote. Includes health check, API key authentication, and full v1 API contract alignment.

Interactive chunking (Prepare mode)

New Prepare tab in the Studio view for inspecting and tuning chunking parameters before feeding documents to a RAG pipeline:

  • Adjust chunk size, overlap, and merge strategy in real time
  • Filter chunks by current PDF page
  • Hover a chunk card to highlight its bounding boxes on the canvas
  • Paginated chunk list with collapsible configuration panel

Chunking is available in local engine mode only (gated by feature flags).

Feature flags

The frontend now detects the active backend engine via /health and conditionally enables features. Chunking UI is automatically hidden when running against Docling Serve.

Release infrastructure

  • Dynamic versioning across the stack: Vite __APP_VERSION__, backend APP_VERSION env var, Docker build arg, CI extraction from git tag
  • Release workflow and branching strategy documented in CONTRIBUTING.md
  • CHANGELOG.md catch-up with v0.2.0 and Unreleased sections

Reusable UI components

  • Generic usePagination composable and PaginationBar component with i18n support

Changed

Hexagonal architecture

Backend refactored to ports & adapters: domain value objects extracted, DocumentConverter protocol for pluggable conversion backends, DocumentChunker protocol for chunking, dependency injection via FastAPI Depends(). This replaces the previous monolithic parsing.py.

UI refresh

  • Studio tabs redesigned with contextual icons and accent highlight
  • Document list and history rendered as cards with hover accents
  • Status badges simplified: completed jobs show a green dot, exceptions stand out
  • Settings toggles compacted as segmented controls
  • Stats cards with icons and accent hover
  • Branding: duck mascot logo across navbar, hero, studio view, and favicon

Bbox highlighting

Non-highlighted bounding boxes are now dimmed in both Verify and Prepare modes for consistent visual focus.

Fixed

  • Zombie jobs: background tasks that raised or were cancelled are now marked as failed instead of stuck in RUNNING
  • JSON parse crash: malformed json_content strings fall back gracefully
  • Upload errors not displayed: caught and shown inline in the upload component
  • File size validation: 50 MB limit enforced client-side before upload
  • Path traversal: file deletion scoped to UPLOAD_DIR
  • localStorage guard: safe access for private browsing mode
  • CORS on feature flags: health check uses relative path through Vite proxy
  • Topbar title wrapping: ellipsis truncation when sidebar is open
  • Serve API contract: to_formats sent as repeated form fields (fixes 422)
  • Dead code: removed unused get_analysis_service() function
  • Datetime parsing: string-to-datetime conversion in repositories
  • Polling timeout: 10-minute frontend timeout on analysis polling
  • Drag-and-drop: accept .pdf extension, not just MIME type
  • Dev dependency: @vitest/mocker moved to devDependencies

Upgrade notes

  • New environment variable: CONVERSION_ENGINE (local | remote, defaults to local)
  • When using remote mode: set DOCLING_SERVE_URL and optionally DOCLING_SERVE_API_KEY
  • Database schema updated: new document_json and chunks_json columns on analysis jobs (auto-migrated)

Full diff: [v0.2.0...v0.3.0](https://github.com/scub-france/Docling-Studio/compare/v0.2.0...release/0.3.0)


메타데이터
post_id
4d5d41650ff4
slug
docling-studio-v0-3-0-4d5d41650ff4
url
https://lab.scub.net/docling-studio-v0-3-0-4d5d41650ff4
canonical_url
https://lab.scub.net/docling-studio-v0-3-0-4d5d41650ff4
author_url
https://medium.com/@pmalandrino
status
ok
fetched_at
2026-06-10 12:26:30