Skip to content

GraphMechanic - Visual Graph Operations Platform — all-in-one

This page is assembled from compact project documentation sections. Individual section files remain the source of truth; this page is for sequential reading, review, and PDF-style export.

Contents

Summary

Status

concept prototype / paused project

Role

concept author, system designer, prototype engineer

Stack

Type: Graph visualization / GIS-aware graph editing / internal tooling platform; Origin: evolved from PolylineMechanic railway graph tooling

Project value

GraphMechanic is a visual platform for working with domain-specific graph data: infrastructure networks, transport graphs, GIS-linked objects, logical dependencies, and operational topology.

What this demonstrates

GraphMechanic demonstrates a product and architecture direction built from real internal tooling experience.

It shows:

  • ability to generalize a narrow internal tool into a broader product concept;
  • understanding of graph-based domains and GIS-linked data;
  • interest in visual tools for system understanding and data quality;
  • ability to connect backend data structures with interactive visual workflows;
  • movement from one-off internal tools toward reusable product architecture.

Overview

GraphMechanic is a visual platform for working with domain-specific graph data: infrastructure networks, transport graphs, GIS-linked objects, logical dependencies, and operational topology.

The project evolved from PolylineMechanic, an internal tool for editing railway graph polylines. The original problem was narrow: prepare and repair railway track geometry. GraphMechanic generalizes this idea into a broader tool for viewing, editing, comparing, and monitoring graph-based systems.

The core idea is to combine two complementary views of a graph:

  • geographic view — nodes and edges placed on a map;
  • logical view — all nodes arranged as a graph layout, independent from geography.

This allows the same graph to be inspected both as real-world infrastructure and as a logical network of relationships.

Product Concept

GraphMechanic provides a configurable visual layer over graph data.

It allows users to connect to graph-like datasets, visualize them on a map or as a logical graph, configure visual styles, inspect node and edge attributes, and observe changes over time.

The platform is intended for teams that work with infrastructure, transport, logistics, utility networks, telecom topology, GIS-linked assets, or custom operational graphs.

Context and Problem

Context

GraphMechanic evolved from PolylineMechanic, an internal railway graph polyline editing utility created in the context of an enterprise GIS initiative.

The original PolylineMechanic tool addressed a narrow but recurring problem: railway track geometry had to be prepared and repaired before loading into enterprise GIS platforms. GraphMechanic generalizes that experience into a broader platform concept for visual graph operations across domains.

The project reflects a progression from one-off internal data preparation tools toward reusable product architecture for graph-based operational data.

Problem

Many organizations store graph-like data in databases, GIS systems, internal tools, or operational platforms, but lack a convenient interface for visual inspection and controlled editing.

Typical problems:

  • graph data exists in a database, but is hard to inspect visually;
  • geographically linked objects are difficult to validate only through tables;
  • node and edge attributes affect behavior, but are not visible in the UI;
  • multiple graph layers need to be compared side by side;
  • domain teams need visual diagnostics without direct database access;
  • real-time state changes are hard to observe in relation to graph topology;
  • existing tools are either too generic, too GIS-heavy, too database-specific, or too complex for lightweight internal use.

Goals, Requirements, and Constraints

Goals and Non-Goals

Requirements

Key Capabilities

1. Domain-Generalized Graph Model

GraphMechanic is not limited to railway data.

The platform supports generalized graph concepts:

  • nodes;
  • edges;
  • edge geometry;
  • node attributes;
  • edge attributes;
  • layers;
  • statuses;
  • domain-specific metadata;
  • external identifiers;
  • topology validation rules.

This makes it possible to adapt the tool to different domains without rewriting the core application.

2. Configurable Database Connectors

The platform supports a connector-oriented approach to data access.

Instead of hardcoding a single database structure, GraphMechanic separates the visual graph model from the source database schema.

The connector layer is responsible for:

  • reading nodes;
  • reading edges;
  • reading edge geometry;
  • mapping database fields to graph attributes;
  • applying filters;
  • writing back approved changes;
  • supporting different source schemas.

Initial target sources:

  • PostgreSQL / PostGIS;
  • relational databases with graph-like tables;
  • exported CSV / JSON datasets;
  • future graph database connectors.

3. Multi-Layer Graph Display

GraphMechanic can display multiple graph layers on the same map.

Examples:

  • physical infrastructure layer;
  • logical routing layer;
  • service availability layer;
  • planned changes layer;
  • error / anomaly layer;
  • historical snapshot layer.

Each layer can have its own visibility, styling rules, and data source.

This allows users to compare different interpretations of the same network and detect inconsistencies between physical, logical, and operational views.

4. Node and Edge Style Parameterization

The appearance of nodes and edges can be configured dynamically.

Visual parameters may depend on object attributes:

  • node color by status;
  • node size by importance or load;
  • edge thickness by capacity or traffic;
  • edge color by availability;
  • dashed lines for planned or inactive segments;
  • icons for different object types;
  • labels based on selected fields.

This makes the graph useful not only as geometry, but as an operational visual model.

5. Dynamic Parameters and Live State Observation

GraphMechanic supports the idea of observing graph state changes over time.

The same topology can be enriched with dynamic data:

  • availability;
  • load;
  • error state;
  • latency;
  • processing status;
  • last update time;
  • operational metrics.

This turns a static graph into a lightweight operational console.

The goal is not to replace full observability platforms, but to show system state in relation to domain topology.

6. Logical Graph View

In addition to map-based visualization, GraphMechanic supports a non-geographic graph layout.

This mode places all nodes on a single screen using a force-directed or layout-based graph view, similar in spirit to Obsidian-style graph visualization.

This is useful when geography hides the logical structure or when the graph is not geographic at all.

Use cases:

  • dependency maps;
  • logical topology;
  • infrastructure relationships;
  • domain entity graphs;
  • process graphs;
  • knowledge graphs;
  • data lineage-like views.

7. Visual Editing

The platform extends the original PolylineMechanic functionality:

  • node editing;
  • edge editing;
  • polyline creation;
  • polyline repair;
  • route-based geometry generation;
  • attribute editing;
  • visual validation;
  • controlled save / export flow.

The editing model is intended to reduce direct database manipulation and give domain users a safer visual workflow.

Example Use Cases

  • Validate railway graph data before loading it into an enterprise GIS platform.
  • Compare physical and logical network layers.
  • Detect disconnected nodes or broken routes.
  • Display operational state over infrastructure topology.
  • Edit graph attributes without direct database access.
  • Build a visual console for domain-specific network data.
  • Switch between map-based and logical graph representation.
  • Investigate inconsistencies between planned and actual topology.

Constraints

Role and Responsibilities

I acted as concept author, system designer, and prototype engineer.

My contribution included:

  • defining the product concept and generalizing PolylineMechanic into a broader platform direction;
  • designing the modular architecture and connector-oriented data access model;
  • specifying key capabilities: multi-layer display, style parameterization, dual geographic/logical views, and visual editing workflows;
  • positioning the product relative to GIS platforms, graph visualization tools, and monitoring systems.

System Model

Domain Model

Generalized Graph Concepts

  • nodes;
  • edges;
  • edge geometry;
  • node attributes;
  • edge attributes;
  • layers;
  • statuses;
  • domain-specific metadata;
  • external identifiers;
  • topology validation rules.

Target Users

  • GIS analysts;
  • system analysts working with graph-like domains;
  • infrastructure data engineers;
  • transport and logistics analysts;
  • telecom / utility network teams;
  • internal tooling teams;
  • teams maintaining custom operational graph data.

Data Model

API Contracts

Architecture and Integrations

Architecture

GraphMechanic is designed as a modular web application.

Core components:

  • Web UI - graph visualization, map view, logical graph view, editing tools;
  • Graph Model Layer - normalized internal representation of nodes, edges, geometry, attributes, and layers;
  • Connector Layer - adapters to external databases and data sources;
  • Style Engine - configurable mapping between object attributes and visual appearance;
  • Validation Engine - topology checks and domain-specific consistency rules;
  • State Update Layer - dynamic updates for live or near-real-time graph state;
  • Persistence Layer - storage of configuration, layouts, user settings, and audit data.

Integration Flows

Database connector read/write flows

The connector layer reads nodes, edges, and edge geometry from external sources, maps database fields to graph attributes, applies filters, and writes back approved changes.

Initial target sources include PostgreSQL / PostGIS, relational databases with graph-like tables, and exported CSV / JSON datasets.

Route-based geometry generation

Visual editing extends PolylineMechanic functionality with route-based geometry generation for polyline creation and repair.

Controlled save and export flow

Edits follow a controlled save / export workflow intended to reduce direct database manipulation and give domain users a safer visual editing path.

Security, Quality, and Operations

Security and Access Model

Non-Functional Requirements

Failure Modes

Sizing and Cost Notes

Decisions, Trade-offs, and Risks

Key Decisions

Dual geographic and logical views

The platform combines map-based geographic visualization with a non-geographic logical graph layout, allowing the same topology to be inspected from both infrastructure and relationship perspectives.

Connector-oriented data access

Instead of hardcoding a single database structure, GraphMechanic separates the visual graph model from the source database schema via a connector layer.

Multi-layer visualization

Multiple graph layers can be displayed on the same map, each with its own visibility, styling rules, and data source.

Attribute-driven style engine

Visual appearance of nodes and edges is configured dynamically based on object attributes, turning the graph into an operational visual model.

Domain-generalized graph model

The platform is not limited to railway data; generalized graph concepts allow adaptation to different domains without rewriting the core application.

Trade-offs

Competitive Context

GraphMechanic is positioned between several existing categories:

  • GIS platforms and utility network tools;
  • graph database visualization tools;
  • network topology and monitoring tools;
  • open-source graph visualization libraries;
  • custom internal admin panels.

Unlike heavy GIS platforms, GraphMechanic focuses on configurable graph operations and lightweight domain adaptation.

Unlike generic graph visualization tools, it treats geography, geometry, layers, database connectors, and editing workflows as first-class concerns.

Unlike monitoring systems, it does not start from infrastructure metrics. It starts from a domain graph and adds state observation on top.

Differentiation

GraphMechanic is built around a specific combination:

  • graph data;
  • geographic and non-geographic views;
  • editable topology;
  • configurable database connectors;
  • multi-layer visualization;
  • style rules based on attributes;
  • dynamic state observation;
  • domain-specific validation.

The strongest value is not "visualize a graph", but "make operational graph data inspectable, editable, and understandable".

See also Architecture Decision Records.

Roadmap and Demonstration

Roadmap

The project is currently paused and should be treated as a concept-stage project and architecture direction rather than a finished SaaS product.

Some concepts and earlier implementation experience come from PolylineMechanic. GraphMechanic generalizes that work into a broader product direction.

Documentation is in progress.

Screenshots and Demo

What This Demonstrates

GraphMechanic demonstrates a product and architecture direction built from real internal tooling experience.

It shows:

  • ability to generalize a narrow internal tool into a broader product concept;
  • understanding of graph-based domains and GIS-linked data;
  • interest in visual tools for system understanding and data quality;
  • ability to connect backend data structures with interactive visual workflows;
  • movement from one-off internal tools toward reusable product architecture.

Architecture Decision Records

See Architecture Decision Records.