Skip to content

Commit ba20b61

Browse files
committed
Add sponsor badge
1 parent 512afc5 commit ba20b61

1 file changed

Lines changed: 148 additions & 0 deletions

File tree

README.md

Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
[![Sponsor](https://img.shields.io/badge/Sponsor-%E2%9D%A4-pink?logo=github)](https://github.com/sponsors/hyperpolymath)
2+
3+
image:https://img.shields.io/badge/License-MPL_2.0-blue.svg[MPL-2.0-or-later,link="https://opensource.org/licenses/MPL-2.0"]
4+
// SPDX-License-Identifier: MPL-2.0-or-later
5+
= DocMatrix
6+
7+
8+
9+
:toc: left
10+
:toclevels: 3
11+
:icons: font
12+
:source-highlighter: rouge
13+
14+
image:https://img.shields.io/badge/Philosophy-Palimpsest-indigo.svg[Palimpsest,link="https://github.com/hyperpolymath/palimpsest-license"]
15+
16+
== License & Philosophy
17+
18+
This project must declare **MPL-2.0-or-later** for platform/tooling compatibility.
19+
20+
Philosophy: **Palimpsest**. The Palimpsest-MPL (PMPL) text is provided in `license/PMPL-1.0.txt`, and the canonical source is the palimpsest-license repository.
21+
22+
Cross-platform document editor with format tabs (TXT/MD/ADOC/DJOT/ORG/RST/TYP). Gossamer GUI + Ada TUI. Graph visualization, OCR, TTS/STT, Nickel pipelines.
23+
24+
== Features
25+
26+
* *Format Tabs* - View and edit the same document in multiple markup formats
27+
* *Unified AST* - Lossless conversion between formats
28+
* *GUI* - Gossamer with ReScript frontend
29+
* *TUI* - Ada with AdaCurses for terminal usage
30+
* *Graph Visualization* - ArangoDB for document relationships
31+
* *Accessibility* - OCR, TTS, STT support
32+
* *Pipelines* - Nickel-based import/export transformations
33+
34+
== Supported Formats
35+
36+
[cols="1,2", options="header"]
37+
|===
38+
| Format | Description
39+
40+
| TXT | Plain text
41+
| MD | Markdown (CommonMark)
42+
| ADOC | AsciiDoc
43+
| DJOT | Djot markup
44+
| ORG | Org-mode
45+
| RST | reStructuredText
46+
| TYP | Typst
47+
|===
48+
49+
== Quick Start
50+
51+
[source,bash]
52+
----
53+
# Check dependencies
54+
just deps
55+
56+
# Build all components
57+
just build
58+
59+
# Run GUI
60+
just run-gui
61+
62+
# Run TUI
63+
just run-tui
64+
----
65+
66+
== Architecture
67+
68+
[source]
69+
----
70+
crates/
71+
├── formatrix-core/ # AST, parsers, renderers
72+
├── formatrix-gui/ # Gossamer commands
73+
├── formatrix-db/ # ArangoDB client
74+
└── formatrix-pipeline/ # Nickel executor
75+
76+
tui/src/ # Ada TUI source
77+
ui/src/ # ReScript components
78+
pipelines/ # Nickel pipeline definitions
79+
container/ # Wolfi container configs
80+
----
81+
82+
== Development
83+
84+
=== Prerequisites
85+
86+
* Rust (stable)
87+
* Deno
88+
* GNAT + gprbuild (for TUI)
89+
* GTK4 + WebKit2GTK (for GUI)
90+
91+
=== Build Commands
92+
93+
[source,bash]
94+
----
95+
just build # Build all
96+
just build-core # Build Rust core only
97+
just build-tui # Build Ada TUI only
98+
just build-ui # Build ReScript UI only
99+
just test # Run all tests
100+
just fmt # Format all code
101+
just lint # Lint all code
102+
----
103+
104+
=== Containers
105+
106+
[source,bash]
107+
----
108+
just container-build # Build Wolfi image
109+
just compose-up # Start with ArangoDB
110+
just container-run-tui # Run TUI in container
111+
----
112+
113+
== RSR Compliance
114+
115+
This project follows the Rhodium Standard Repositories specification:
116+
117+
* *Tier 2* - Full-featured multi-language project
118+
* See link:RSR_COMPLIANCE.adoc[RSR_COMPLIANCE.adoc] for details
119+
120+
== Related Scripts
121+
122+
Automation scripts from https://github.com/hyperpolymath/scripts[hyperpolymath/scripts]:
123+
124+
[cols="1,2", options="header"]
125+
|===
126+
| Script | Purpose
127+
128+
| `asdfman.sh` | Manage asdf plugins and versions
129+
| `init_bashrc_three_ply.sh` | Modular bashrc setup (three-layer architecture)
130+
| `k-check.sh` | Kinoite cluster validation
131+
| `k-intune.sh` | Kinoite tuning scripts
132+
| `langstrap.sh` | Mass language install utilities
133+
| `sysenv.sh` | System environment setup
134+
| `touchscreen_hunter_killer.sh` | Touchscreen calibration/management
135+
|===
136+
137+
These scripts follow the same language policy (Bash, Rust, ReScript, Deno, Gleam, Guile Scheme) and multi-forge mirroring strategy.
138+
139+
== License
140+
141+
PMPL-1.0 with Palimpsest philosophy.
142+
143+
== Links
144+
145+
* link:.machine_readable/6a2/STATE.a2ml[Project State]
146+
* link:.machine_readable/6a2/ECOSYSTEM.a2ml[Ecosystem Position]
147+
* link:.machine_readable/6a2/META.a2ml[Architecture Decisions]
148+
* link:PALIMPSEST.adoc[Palimpsest Philosophy]

0 commit comments

Comments
 (0)