codedge-llc/scribe
63.9
Adequate · 18 September 2026
862
lines of production code
Elixir
primary language
1
measurement over time
What this system is
Scribe is an Elixir library designed for pretty-printing tables of structs and maps. It provides a flexible API for formatting data with customizable columns, alignment, and width constraints. The system supports multiple visual themes, including markdown and PostgreSQL styles, and enables interactive pagination for large datasets.
Features
Initial release of Scribe for pretty-printing Elixir data
This entry introduces the Scribe library, a tool for pretty-printing tables of Elixir structs and maps. The initial commit establishes the project structure, including a \.formatter.exs\ for code formatting, a \CHANGELOG.md\ documenting versions up to 0.11.1, and a comprehensive \README.md\ with usage examples. The library supports features such as custom column definitions, function-based columns, text alignment (left, center, right), width constraints, colorization toggles, and pagination via the \pane\ library. It also includes support for various styling formats and custom style adapters.
(repo-wide) · high confidence
Introduces configurable table styling with multiple visual themes
The \lib/scribe\ library now supports pluggable table styles, allowing users to change the visual appearance of printed tables via the \style\ option or the \:scribe, :style\ application config. This change introduces a \Scribe.Style\ behaviour and several built-in implementations: \Default\ (box-drawing characters), \GithubMarkdown\ (pipe-separated markdown), \NoBorder\ (space-aligned), \Psql\ (PostgreSQL-style), and \Pseudo\ (Unicode box-drawing). The formatting logic in \Scribe.Formatter\ and \Scribe.Table\ has been updated to use these styles to determine border characters, alignment, and default ANSI colors for different data types.
lib/scribe · high confidence
Behavioural changes
Major overhaul of table printing API with pagination and styling
The internal table formatting module has been removed and replaced with a comprehensive rewrite in the main Scribe module. This change introduces support for paginated viewing via the 'pane' library, allowing users to interactively browse large datasets. It also adds extensive styling options, including configurable text alignment (left, center, right), colorization toggles, custom width constraints, and callback-based styling adapters. Users can now customize column headers, specify function-based columns, and direct output to specific devices, significantly expanding the flexibility of the printed output compared to the previous static table format.
lib · high confidence
Removal of legacy config/config.exs file
The project has removed the \config/config.exs\ file, which previously handled application configuration via the \Mix.Config\ module. This change eliminates the legacy configuration mechanism, implying that default values or environment-specific settings are now managed elsewhere, such as in the \mix.exs\ file or through other configuration strategies.
config · high confidence
Test coverage
Expanded test coverage for table formatting and styling
Added comprehensive unit tests for the Scribe library's table formatting and styling capabilities. The new tests in \test/border\_test.exs\, \test/formatter\_test.exs\, and \test/style\_test.exs\ verify correct output for various styles (Default, Psql, GitHub Markdown, Pseudo, NoBorder), cell alignment, colorization, and border handling. The \test/scribe\_test.exs\ file was significantly expanded to cover struct and map formatting, key selection, custom column titles, and width constraints. Additionally, \test/table\_test.exs\ was updated to test the \Table\ module's format function, style selection, and width calculations, while \test/test\_helper.exs\ was configured to capture logs during test runs.
test · high confidence
Dependencies
Upgrade Elixir requirement to 1.13 and add development tooling
The project now requires Elixir 1.13 or higher, dropping support for older versions. Additionally, the \mix.exs\ manifest has been updated to include development dependencies for code analysis and documentation generation, specifically adding \credo\, \dialyxir\, \ex\_doc\, and \faker\, while also declaring \pane\ as an extra application.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Baseline
- First survey — no prior run to compare against. CAI 64.
Lenses
- Code Health 100
- Architecture 69
- Maturity 50
- Readiness 75
- Security 91
Changes since last survey
- 80 commits — 67 feature/other, 13 fixes
By area
- (root) — 59 commits
- (repo) — 4 commits
- lib/scribe.ex — 4 commits
- lib/style — 3 commits
- lib/line.ex — 2 commits
- lib/scribe — 2 commits
- lib/table.ex — 2 commits
- .github/FUNDING.yml — 1 commit
- config/config.exs — 1 commit
- lib/formatter.ex — 1 commit
- test/scribe_test.exs — 1 commit
Notable commits
- fix: fix: added :pane to applications list
- fix: fix: elixir 1.8 support
- fix: fix: functions made private to hide from docs
- fix: fix: include inspect_overrides directory in hex package
- fix: fix: passed linter
- fix: fix: passed linter
- fix: fix: printing one row of data now spaces correctly
- fix: fix: remove compile warnings
- fix: fix: remove dogma from travis config
- fix: fix: support for elixir v1.7
- fix: fix: two minor fixes to the readme (#17)
- fix: fix: unused variables
- fix: fix: update README to colorize format opt (#10)
- change: Initial commit
- change: Initial commit
- change: Merge branch 'master' of github.com:codedge-llc/scribe
- change: Merge branch 'master' of github.com:codedge-llc/scribe
- change: Merge branch 'master' of github.com:codedge-llc/scribe
- change: Merge branch 'master' of github.com:codedge-llc/scribe
- change: chore: add FUNDING
- …and 60 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
codedge-llc/scribe was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 18 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 17c297db6f309bb73f5d78d5d4d8cfac2c998f65 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-5d04157a340d.