stdcodehara + rtxt

Foundation Base

A Clojure-first toolkit for building, generating, testing, and operating polyglot systems.

Foundation Base combines reusable Clojure libraries, developer tooling, language generation, and runtime integration in one repository. Start with the area that matches what you want to do; you do not need to understand the entire codebase first.

0.1    Choose your path

Foundation Base supports several distinct workflows. Pick one entry point and expand from there.

Standard libraries

Use reusable Clojure infrastructure

Collections, concurrency, filesystems, strings, time, tasks, scheduling, configuration, data handling, and system utilities.

Learn more
Language generation

Generate code for other languages

Use Hara books and grammars to emit JavaScript, Lua, Python, Go, SQL, Solidity, and other targets from a shared Clojure authoring model.

Learn more
Examples

Compare source with generated projects

Follow walkthroughs and open authored Clojure source, build definitions, generated repositories, and reproduction commands.

Learn more
Developer tooling

Test, document, query, and maintain code

Use code.test, code.doc, code.query, code.manage, project metadata, build tools, and analysis utilities.

Learn more
Cross-target libraries

Build portable application layers

Explore xt.lang, xt.db, xt.net, xt.event, xt.substrate, walkthroughs, and parity examples built on top of the language tooling.

Learn more
Contributing

Work on Foundation Base

Set up the repository, run targeted tests, update documentation, and prepare focused pull requests.

Learn more

1    Repository map

std.*

Standard libraries

Reusable infrastructure and application-level utilities.

Learn more
code.*

Development tools

Testing, documentation, structural queries, maintenance, project tooling, and analysis.

Learn more
hara.* and rt.*

Languages and runtimes

Grammar-driven code generation, typing, target models, and runtime adapters.

Learn more
xt.*

Portable libraries

Cross-target libraries and application layers built with the language tooling.

Learn more

2    Quick start

Foundation Base currently uses a local Maven installation workflow. Install Java 21 and Leiningen, then clone and install the project.

git clone [email protected]:zcaudate-xyz/foundation-base.git\ncd foundation-base\nlein install\nlein repl

2.1    Try a standard-library helper

(require '[std.lib :as h])\n\n(h/time-ms)\n(h/pl \"Hello Foundation!\")

2.2    Generate target-language code

hara.lang stores code in a reusable intermediate form and emits it through a target grammar. The language tooling also supports modules, dependency tracking, inspection, testing, and runtime execution.

(require '[hara.lang :as l])\n\n(l/emit-as :js '(+ 1 2 3))\n;; => \"1 + 2 + 3\"

2.3    Run a targeted test

Foundation Base uses code.test, a fact-based test framework. Targeted namespace runs are the recommended development workflow because some test groups require optional runtimes and external services.

lein test :only std.lib.collection-test\nlein test :with std.lib

3    How to interact with the project

Library consumer

Depend on the modules you need

Install locally, use documented public namespaces, and check the relevant guide and tests before adopting an unfamiliar subsystem.

Explorer

Follow one focused workflow

Emit a small JS or Lua form, run one code.test namespace, inspect a generated project, and browse the matching documentation page.

Learn more
Contributor

Make targeted changes

Use the contributor guide for environment setup, conventions, documentation generation, and pull-request expectations.

Learn more
Wiki reader

Browse topic-oriented pages

Wiki-ready Markdown pages are kept in the repository and can be synchronized to GitHub Wiki after it is initialized.

Learn more

4    Project status

Foundation Base contains production-used libraries, evolving developer tooling, and experimental language/runtime integrations. Documentation should identify subsystems as Stable, Usable, or Experimental so readers can understand the expected level of compatibility and support.