TestingAnalysisDocsTools

code

Development tools for foundation.

The code.* namespaces are the maintenance layer for this repository: tests, source analysis, structural queries, documentation publishing, project metadata, build tools, and agent-facing MCP commands.

Tooling Areas

Use these pages when maintaining source, tests, generated documentation, or project metadata.

Testing

code.test

Fact-based custom tests, arrow assertions, metadata, skips, and targeted runs.

Learn more
Management

code.manage

Analyse, import, scaffold, locate, find usages, refactor, snap, and inspect code.

Learn more
Queries

code.query

Structural selectors and traversal tools for Clojure source trees.

Learn more
Analysis

code.framework

Source and test analysis used by manage, doc, and refactor tooling.

Learn more
Docs

code.doc

Parse, collect, link, render, theme, and publish static documentation.

Learn more
Project

code.project

Project metadata, file lookup, Leiningen, and Shadow project support.

Learn more
Build

code.tool

Build, Java, Maven, and measurement utilities.

Learn more
Agents

code.mcp

MCP server and tool layer for code-manage, code-test, code-doc, and hara-lang actions.

Learn more

0.1    Walkthrough

The first step when working with any code.* tool is to establish the project context. code.project/project loads project.clj, and code.project/file-lookup maps every namespace to its file. From there you can analyse, query, or render.

load the project and build a namespace lookup

(let [proj (project/project)
      lookup (project/file-lookup proj)]
  [(symbol? (:name proj))
   (contains? lookup 'code.project)])
=> [true true]