dms-cr
dms-cr
Crystal parser for DMS, a data syntax with strong typing, ordered maps, multi-line heredocs, and front-matter metadata.
Status: scaffold. This repo currently contains the project skeleton; the parser body raises a runtime error. Track progress against the SPEC and the conformance corpus.
Requirements
- Crystal 1.10 or newer
Install
In your shard.yml:
dependencies:
dms:
gitlab: flo-labs/pub/dms-cr
Then:
shards install
Usage
require "dms"
src = File.read("config.dms")
doc = Dms.parse(src)
Build & test
shards build # produces bin/dms-encoder
crystal spec # runs the spec suite, once it exists
Conformance
The fixture corpus lives in dms-tests (4500+ pairs). Clone it once as a sibling:
cd ..
git clone https://gitlab.com/flo-labs/pub/dms-tests.git
The dms-encoder binary reads DMS from stdin and writes tagged JSON to stdout, matching the format the conformance runner consumes.
License
Dual-licensed: MIT or Apache-2.0, your choice.
Repository
dms-cr
Owner
Statistic
- 0
- 0
- 0
- 0
- 0
- about 4 hours ago
- April 27, 2026
License
Apache License 2.0
Links
Synced at
Mon, 27 Apr 2026 06:19:21 GMT
Languages