What Frameworks Does Archify Use? A Deep Dive Into Its Minimal Dependency Architecture

Archify relies on a zero-dependency Node.js core that uses only AJV for JSON-Schema validation, while its optional browser viewer leverages React Flow for interactive diagram rendering.

Archify is an open-source architecture visualization tool designed to remain lightweight and portable. When investigating what frameworks does archify use, you'll discover a deliberate architectural choice to minimize runtime dependencies while providing rich visualization capabilities through optional browser-based components. The project maintains a strict separation between its command-line interface—which runs entirely on Node.js standard library APIs—and its interactive web viewer that consumes external visualization libraries.

Core Runtime: Zero Dependencies with AJV

The heart of Archify is intentionally framework-free. According to archify/package.json, the runtime declares AJV as its sole development dependency, used strictly for JSON-Schema validation of the typed Intermediate Representation (IR).

{
  "devDependencies": {
    "ajv": "^8.x"
  }
}

This means the CLI tool in archify/bin/archify.mjs operates without React, Express, or any other server-side framework. The entry point implements a pure generate → validate → preview → deliver workflow using only built-in Node.js modules. As documented in archify/SKILL.md, this zero-dependency approach ensures the skill runs in any standard Node.js environment without requiring additional package installations.

Interactive Viewer: React Flow for Browser Rendering

While the CLI remains framework-agnostic, Archify's optional browser-based viewer relies on React Flow to render interactive node-link diagrams. The project loads React Flow via CDN in examples/web-app.html, avoiding any npm installation requirements for the visualization layer.

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Archify Viewer</title>
  <!-- React Flow is loaded from the CDN -->
  <script src="https://cdn.jsdelivr.net/npm/reactflow@11/umd/reactflow.min.js"></script>
</head>
<body>
  <div id="archify-root"></div>
  <script type="module">
    import { renderArchify } from './archify/dist/renderer.mjs';
    const diagramJson = {/* typed JSON IR generated by Archify */};
    renderArchify(document.getElementById('archify-root'), diagramJson);
  </script>
</body>
</html>

This architecture allows users to generate diagrams using the lightweight CLI, then optionally view them in a browser using React Flow's rich interaction capabilities—including zooming, panning, and node selection—without forcing React into the core runtime.

Prototyping with LikeC4-React

Research documentation in docs/research-visual-evolution-round-* files reveals that Archify's development team has also investigated LikeC4-React components for future diagram rendering. However, these remain experimental prototypes mentioned only in research markdown files and are not hard runtime dependencies in the released skill. The production codebase sticks to standard React Flow for compatibility and stability.

How the CLI Works Without Frameworks

The archify/bin/archify.mjs entry point demonstrates how the tool handles complex workflows using only native Node.js APIs:


# Generate a diagram from a description

node archify/bin/archify.mjs guide "Show an API request with Redis cache miss"

This command executes the full pipeline—parsing input, validating against JSON-Schema via AJV, and outputting the typed IR—without importing Express, Fastify, or any web framework. The validation step specifically uses AJV to ensure the generated IR conforms to Archify's strict schema definitions before passing to the renderer.

Summary

  • Archify's core is a zero-dependency Node.js skill using only standard library APIs.
  • AJV serves as the sole development dependency for JSON-Schema validation of the typed IR, as declared in archify/package.json.
  • React Flow powers the optional browser viewer, loaded via CDN in examples/web-app.html to avoid npm overhead.
  • LikeC4-React appears only in research prototypes and is not required for production use.
  • The CLI workflow in archify/bin/archify.mjs handles generation, validation, and delivery without external web frameworks.

Frequently Asked Questions

Is Archify a React application?

No. Archify's core CLI tool is a pure Node.js script that does not use React or any UI framework. Only the optional browser viewer component uses React Flow for rendering diagrams, and this is loaded separately via CDN without affecting the core runtime.

What is AJV used for in Archify?

AJV validates the typed Intermediate Representation (IR) against JSON-Schema definitions. This ensures that generated diagrams conform to Archify's structural requirements before being passed to the renderer or viewer. It is listed as a dev-dependency in archify/package.json and used during the validation phase of the CLI workflow.

Can I use Archify without React Flow?

Yes. The CLI generates diagram descriptions and JSON IR without requiring React Flow. You can use the command-line output directly or process the JSON IR with custom visualization tools. React Flow is only necessary if you want to use Archify's built-in interactive browser viewer demonstrated in examples/web-app.html.

Does Archify use any server-side frameworks like Express?

No. The delivery pipeline and CLI commands in archify/bin/archify.mjs implement HTTP serving and file handling using Node.js built-in modules (http, fs, path) rather than Express, Fastify, or similar frameworks. This keeps the installation footprint minimal and startup times fast.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →