Skip to content

Commit 14072c7

Browse files
Jonathan D.A. Jewellclaude
andcommitted
fix: Restore original README content
The previous RSR standardization commit accidentally replaced the full README content with a minimal template. This restores the original project documentation. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 2302172 commit 14072c7

1 file changed

Lines changed: 214 additions & 44 deletions

File tree

README.adoc

Lines changed: 214 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,76 +1,246 @@
1-
= conflow
2-
Jonathan D.A. Jewell <jonathan.jewell@gmail.com>
3-
:toc: macro
1+
= conflow - Configuration Flow Orchestrator
2+
:toc: left
3+
:toclevels: 3
44
:icons: font
55
:source-highlighter: rouge
6-
:experimental:
7-
:url-github: https://github.com/hyperpolymath/conflow
8-
:url-gitlab: https://gitlab.com/hyperpolymath/conflow
9-
:url-bitbucket: https://bitbucket.org/hyperpolymath/conflow
10-
:url-codeberg: https://codeberg.org/hyperpolymath/conflow
116

12-
Configuration flow orchestration with formal verification
7+
Intelligently orchestrate CUE, Nickel, and configuration validation workflows.
138

14-
image:https://img.shields.io/badge/RSR-Certified-gold[RSR Certified]
15-
image:https://img.shields.io/badge/License-AGPL%20v3-blue[License]
9+
image:https://img.shields.io/badge/RSR-Silver-silver[RSR Compliance, link=https://gitlab.com/hyperpolymath/rhodium-standard-repositories]
10+
image:https://img.shields.io/badge/License-MIT%20OR%20Apache--2.0-blue[License]
11+
image:https://img.shields.io/badge/Rust-1.75+-orange[Rust Version]
1612

17-
toc::[]
13+
== Why conflow?
1814

19-
== Overview
15+
*Problem:* You have configuration files and you're not sure whether to use CUE, Nickel, or both.
2016

21-
conflow is part of the link:https://rhodium.sh[Rhodium Standard] (RSR) ecosystem.
17+
*Solution:* conflow analyzes your configs, recommends the right tool, and orchestrates the entire pipeline.
2218

23-
Domain: *configuration-management*
19+
[source,bash]
20+
----
21+
# Instead of:
22+
nickel export config.ncl > temp.json
23+
cue vet schema.cue temp.json
24+
cue export schema.cue --out yaml > deploy.yaml
25+
rm temp.json
26+
27+
# Just:
28+
conflow run
29+
----
30+
31+
== Features
2432

25-
== Installation
33+
* *Intelligent analysis* - Recommends CUE vs Nickel based on complexity
34+
* *Pipeline orchestration* - Chain tools with dependency management
35+
* *Smart caching* - Only re-run what changed
36+
* *Educational* - Learn why certain tools fit certain problems
37+
* *Type-safe* - Catch errors before deployment
38+
* *RSR Integration* - Full Rhodium Standard Repository compliance checking
39+
40+
== Quick Start
2641

2742
[source,bash]
2843
----
29-
# Clone from GitHub (primary)
30-
git clone {url-github}
44+
# Install
45+
cargo install conflow
46+
47+
# Initialize
48+
conflow init my-project
49+
50+
# Analyze existing configs
51+
conflow analyze config.yaml
52+
53+
# Run pipeline
54+
conflow run
55+
----
3156

32-
# Or from mirrors
33-
git clone {url-gitlab}
34-
git clone {url-codeberg}
57+
== Example Pipeline
58+
59+
[source,yaml]
60+
----
61+
# .conflow.yaml
62+
version: "1"
63+
name: "k8s-deployment"
64+
65+
stages:
66+
- name: "generate"
67+
tool:
68+
type: nickel
69+
command: export
70+
file: config.ncl
71+
output: generated/config.json
72+
73+
- name: "validate"
74+
tool:
75+
type: cue
76+
command: vet
77+
schemas: [schemas/k8s.cue]
78+
input:
79+
from_stage: generate
80+
depends_on: [generate]
81+
82+
- name: "export"
83+
tool:
84+
type: cue
85+
command: export
86+
out_format: yaml
87+
input:
88+
from_stage: generate
89+
depends_on: [validate]
90+
output: deploy/k8s.yaml
3591
----
3692

37-
== RSR Stack
93+
[source,bash]
94+
----
95+
$ conflow run
96+
✓ generate (0.08s)
97+
✓ validate (0.05s)
98+
✓ export (0.03s)
3899
39-
This project follows RSR conventions:
100+
Pipeline completed in 0.16s
101+
----
40102

41-
* ✅ ReScript for frontend/logic
42-
* ✅ Deno for JS runtime
43-
* ✅ WASM for performance-critical code
44-
* ✅ Rust/OCaml/Haskell for systems/proofs
45-
* ✅ Guile/Scheme for configuration
46-
* ❌ No TypeScript
47-
* ❌ No Go
48-
* ❌ No npm
103+
== When to Use What?
49104

50-
== Mirrors
105+
=== Use CUE when:
106+
107+
* ✅ Validating configuration
108+
* ✅ Expressing constraints
109+
* ✅ Merging configurations
110+
* ✅ Simple transformations
111+
112+
=== Use Nickel when:
113+
114+
* ✅ Generating configurations
115+
* ✅ Complex logic needed
116+
* ✅ Functions and abstraction
117+
* ✅ DRY configuration
118+
119+
=== Use Both when:
120+
121+
* ✅ Nickel generates → CUE validates
122+
* ✅ Complex generation + strict validation
123+
124+
== Commands
51125

52126
[cols="1,2"]
53127
|===
54-
| Platform | URL
128+
|Command |Description
129+
130+
|`conflow init [--template <name>]`
131+
|Initialize project
132+
133+
|`conflow analyze <files>`
134+
|Analyze config files
135+
136+
|`conflow run [--stage <name>]`
137+
|Execute pipeline
138+
139+
|`conflow watch`
140+
|Watch mode
141+
142+
|`conflow validate`
143+
|Validate pipeline
144+
145+
|`conflow graph [--format <fmt>]`
146+
|Show pipeline graph
147+
148+
|`conflow cache stats`
149+
|Cache statistics
55150

56-
| GitHub (primary) | {url-github}
57-
| GitLab | {url-gitlab}
58-
| Bitbucket | {url-bitbucket}
59-
| Codeberg | {url-codeberg}
151+
|`conflow cache clear`
152+
|Clear cache
153+
154+
|`conflow rsr check`
155+
|Check RSR compliance
156+
157+
|`conflow rsr requirements`
158+
|List RSR requirements
60159
|===
61160

161+
== Templates
162+
163+
[source,bash]
164+
----
165+
conflow init --template cue-validation # Simple CUE validation
166+
conflow init --template nickel-generation # Nickel config generation
167+
conflow init --template full-pipeline # Generate → validate → export
168+
conflow init --template kubernetes # Kubernetes manifests
169+
conflow init --template multi-env # Multi-environment configs
170+
----
171+
172+
== RSR Compliance
173+
174+
conflow includes full RSR (Rhodium Standard Repository) integration:
175+
176+
* *Compliance checking* - Validate against RSR requirements
177+
* *Auto-remediation* - Automatically fix common issues
178+
* *Badge generation* - Generate compliance badges for CI
179+
* *Diff reports* - Track compliance changes over time
180+
181+
[source,bash]
182+
----
183+
# Check compliance
184+
conflow rsr check
185+
186+
# Auto-fix issues
187+
conflow rsr check --fix
188+
189+
# Generate badge
190+
conflow rsr check --badge badge.svg
191+
----
192+
193+
== Development
194+
195+
[source,bash]
196+
----
197+
# Using Nix (recommended)
198+
nix develop
199+
200+
# Using just
201+
just build # Build
202+
just test # Run tests
203+
just check # Run all checks
204+
just install # Install locally
205+
----
206+
207+
== Documentation
208+
209+
* link:CLAUDE.md[CLAUDE.md] - AI assistant guidance
210+
* link:CONTRIBUTING.md[CONTRIBUTING.md] - Contribution guidelines
211+
* link:SECURITY.md[SECURITY.md] - Security policy
212+
* link:GOVERNANCE.md[GOVERNANCE.md] - Project governance
213+
* link:CODE_OF_CONDUCT.md[CODE_OF_CONDUCT.md] - Code of conduct
214+
215+
== RSR Standards
216+
217+
This project follows link:https://gitlab.com/hyperpolymath/rhodium-standard-repositories[Rhodium Standard Repository] guidelines:
218+
219+
* ✅ Memory-safe language (Rust)
220+
* ✅ Offline-first design
221+
* ✅ Reproducible builds (Nix)
222+
* ✅ Comprehensive documentation
223+
* ✅ SPDX license headers
224+
* ✅ Security policy
225+
* ✅ TPCF contribution framework
226+
62227
== License
63228

64-
Licensed under AGPL-3.0-or-later OR LicenseRef-Palimpsest-0.5.
229+
This project is dual-licensed under:
230+
231+
* MIT License
232+
* Apache License, Version 2.0
65233

66-
See link:LICENSE[LICENSE] for details.
234+
See link:LICENSE.txt[LICENSE.txt] for details.
67235

68236
== Contributing
69237

70-
See link:CONTRIBUTING.adoc[CONTRIBUTING.adoc].
238+
Contributions are welcome! Please read our link:CONTRIBUTING.md[Contributing Guide] first.
71239

72-
== Metadata
240+
== Links
73241

74-
* Domain: configuration-management
75-
* Framework: RSR (Rhodium Standard Repository)
76-
* Dublin Core: link:.well-known/dc.xml[.well-known/dc.xml]
242+
* *Repository:* https://gitlab.com/hyperpolymath/conflow
243+
* *Issues:* https://gitlab.com/hyperpolymath/conflow/-/issues
244+
* *CUE:* https://cuelang.org
245+
* *Nickel:* https://nickel-lang.org
246+
* *RSR:* https://gitlab.com/hyperpolymath/rhodium-standard-repositories

0 commit comments

Comments
 (0)