Accelerators & toolsHFM → OneStream migrations2026

HFM Metadata Explorer: read a legacy HFM application in a browser tab

Drop in an Oracle HFM metadata extract and browse its dimensions, hierarchies, currencies and settings in a browser tab. Nothing is uploaded, and no HFM login is needed.

Result

Legacy HFM metadata readable in a browser, nothing uploaded

Before: raw text extractAfter: searchable treeChange: 0 uploads

Quick facts

Industry
HFM to OneStream migrations
Role
Designer and developer
Timeline
2026
Team
Solo build, used by consultants and finance during migrations
Status
Working tool, one file that runs offline
Impact
Consultants and finance users can read a legacy HFM application's structure without an HFM login, and the extract never leaves the computer.
  • JavaScript
  • HTML
  • Oracle HFM
  • Python
On this page

Overview

When a client moves from Oracle HFM to OneStream, someone has to understand how the old application was built: its dimensions, hierarchies, currencies and settings. The raw metadata extract is a long text file that is hard to read, and getting into HFM itself needs a login that not everyone has.

HFM Metadata Explorer opens that extract in a browser tab and turns it into something you can click through. It is a single file, works offline, and is a JavaScript port of an earlier Python parser.

The Problem

  • A text file nobody wants to read. Hierarchies and member properties are buried in thousands of lines.
  • Access is a bottleneck. Finance users and consultants often have no HFM login, so they wait for someone who does.
  • Client data should stay put. Uploading a client's metadata to a website is not an option.

How It Works

Drop the Extract In

Drag the extract onto the page, or browse for it. A bad or unexpected file produces a friendly message that says what went wrong instead of a blank screen. The reader works from the structure of the file rather than a fixed list of dimension names, and it ignores sections it does not recognise, so it keeps working with extracts that contain extra sections.

Overview and Settings

An overview page summarises what was found. Separate views cover application settings, currencies and consolidation methods, so the basics of the application can be checked at a glance.

Every Dimension, Table or Tree

Each dimension has two views:

  • Table mode: a grid of members and their properties, with columns that can be pinned or hidden.
  • Hierarchy mode: a tree showing how members roll up, including a count of shared members.

The view you are on is stored in the page address, so a particular dimension and view can be shared as a link to a colleague who has the same file.

Search Across Everything

One search box covers every dimension. Results show where each match lives, and a click jumps straight to that member.

Nothing Leaves the Machine

The file is read inside the browser. Nothing is uploaded or sent anywhere, and the page works without a network connection. That makes it safe to use with client extracts.

Results

MetricBeforeAfterChange
Reading HFM structureRaw text extractSearchable table and treeeasier to read
Access neededHFM loginA browser and the extractno login
Data sent anywhereNot applicableNothing uploaded0 uploads
Finding a memberScroll the fileOne global search with jump-to1 search

Soft outcomes:

  • Faster migration conversations. Finance and consultants look at the same view of the legacy application.
  • Works with changing extracts. Unknown sections are ignored rather than breaking the load.
  • Zero setup. One file, opened in any browser.

Learnings

What worked. Keeping everything on the user's computer. Once nothing is uploaded, there is no data-handling conversation, and the tool can be used on real client extracts right away.

What I'd do differently. Read structure rather than fixed names from the start. The tool does this now, and it is what lets it cope with extracts from different applications.

Skill developed. Porting a parser from Python to a browser and designing it for a non-technical reader, so a finance user can open a file and find what they need.

Need something like this built?