SShortSingh.
Back to feed

Flutter devs can parse VRM metadata without packages using 101 lines of Dart

0
·1 views

Flutter has no published VRM package on pub.dev, and the only known Dart library, gatari/vrm_dart, throws a LateInitializationError on every VRM 1.0 file and mishandles thumbnails in VRM 0.x files. A developer tested vrm_dart and a hand-written parser against five sample VRM files on macOS Apple Silicon using Flutter 3.47.2 and Dart 3.13.2 on September 22, 2026. The core issue is that vrm_dart only handles the VRM extension schema, while VRM 1.0 stores metadata under a different extension, VRMC_vrm, with renamed fields and a different thumbnail reference. Since VRM 1.0 files are now common following VRoid Studio's v1.20.0 release in March 2023, and vrm_dart has had no commits since October 2021, the library is effectively outdated. The author's alternative parser uses only dart:convert and dart:typed_data to read GLB chunk structure directly, successfully extracting model name, author, license, and thumbnail from both VRM versions in 101 lines of code.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Three Developer Archetypes That Quietly Damage Team Growth and Independence

A DEV Community analysis identifies three developer personalities — the Senior Cynic, the Over-Engineer, and the Superhero — that can subtly harm team health despite appearing highly productive. The Senior Cynic uses past experience to block new approaches, often reinforcing entrenched opinions rather than evaluating ideas on current merit. The Over-Engineer builds complex abstractions for problems that do not yet exist, a tendency that AI tools can amplify by generating sophisticated-looking but unnecessary code. The Superhero accumulates critical system knowledge and becomes a single point of failure, inadvertently discouraging teammates from learning or taking ownership. The article argues that all three archetypes are frequently rewarded in the short term, making them harder to identify and address before lasting damage is done.

0
ProgrammingDEV Community ·

Apache DolphinScheduler Powers Enterprise Data Warehouses, Meetup Session Reveals

At the Apache DolphinScheduler September Meetup, senior big data architect Liu Zan shared hands-on insights into building enterprise-grade data warehouses using DolphinScheduler as the orchestration core. The session covered four key stages: environment setup, data processing, data applications, and operational upgrades. Liu highlighted how traditional Hadoop-based architectures, while foundational for early big data platforms, increasingly struggle with latency, tightly coupled storage and compute resources, and rising maintenance complexity. Modern enterprises are therefore shifting toward lightweight, high-performance OLAP architectures to meet real-time analytics and scalability demands. The discussion positioned Apache DolphinScheduler as a central tool for integrating data engineering workflows into a cohesive, scalable ecosystem.

0
ProgrammingDEV Community ·

How RAG Systems Bridge the Gap Between LLMs and Custom Documents

Retrieval-Augmented Generation (RAG) addresses a core limitation of Large Language Models, which can only draw on knowledge from their training data and struggle with domain-specific or proprietary documents. A developer at AI firm Valentius Kryptix built a lightweight RAG pipeline using Python, ChromaDB, and Google's Gemini model to explore this approach. The system uses the all-MiniLM-L6-v2 embedding model to convert both document content and user queries into semantic vectors, enabling meaning-based retrieval even when exact wording differs. ChromaDB stores these vectors, allowing the system to surface conceptually relevant passages before Gemini formulates a response grounded in the source material. A side-by-side test on a Data Structures and Algorithms PDF showed that responses generated with retrieval were more accurate and document-specific compared to those relying solely on the model's general training knowledge.

0
ProgrammingDEV Community ·

Seven Architecture Techniques to Cut LLM Inference Costs in Production

Running large language models in production can become expensive quickly, as a single user request may trigger multiple model calls, large prompts, retries, or agent loops. Key cost-reduction strategies include routing requests to smaller models based on complexity, minimizing token usage by trimming conversation history and system instructions, and caching responses to avoid paying for repeated inference. For retrieval-augmented generation pipelines, filtering and reranking chunks before sending them to the LLM reduces input tokens without sacrificing answer quality. Agentic workflows should have explicit limits on iterations, tool calls, and retries to prevent runaway inference costs. Non-urgent workloads such as bulk summarization or document classification can also be batched and processed asynchronously to improve resource efficiency.