How jvbees14-coder/the-charter works
The Charter is a student-led current-affairs review published as a static site. Contributors create article or source ZIPs in browser-based builders, editors import submissions into content files, and editors/fact-checkers record approvals through the editorial workflow. The build loads and validates that content, renders the site, and produces static files for hosting; readers browse and search those pages. The README documents major site features and command behavior; some implementation details are unsampled, so the graph omits uncertain internal wiring.
Main entry points: content.mjs Content loader · build.mjs Static site build · import.mjs Submission importer · workflow.mjs Editorial workflow
Components 25
Editorial content
- Articles
content/articles - Source records
content/sources - People and roles
content/people.yml - Site configuration
content/site.yml - Sections and formats
content/sections.yml - Pages, media, issues
content - Numbers rail
content/numbers-rail.md
Authoring and review
- Article builder
assets/js/builder.js - Source builder
assets/js/source-builder.js - Builder utilities
assets/js/builder-kit.js - Submission importer
scripts/import.mjs - Editorial workflow
scripts/workflow.mjs
Site generation
- Content loader
scripts/lib/content.mjs - Sourcing checks
scripts/lib/checks.mjs - Markdown renderer
scripts/lib/markdown.mjs - Content components
scripts/lib/components.mjs - Page templates
scripts/lib/pages.mjs - Static site build
scripts/build.mjs
Reader experience
- Generated static site
- Site styling
assets/css/charter.css - Search and enhancements
assets/js/charter.js
Other components
- Contributors
- Editors and reviewers
- Readers
- Static hosting
Connections 32
- Contributors → Article builder: write articles
- Contributors → Source builder: prepare sources
- Article builder → Builder utilities: uses
- Source builder → Builder utilities: uses
- Article builder → Submission importer: downloads submission
- Source builder → Submission importer: downloads sources
- Editors and reviewers → Submission importer: import ZIP
- Submission importer → Articles: writes drafts
- Submission importer → Source records: writes records
- Submission importer → People and roles: adds writers
- Editors and reviewers → Editorial workflow: record decisions
- Editorial workflow → Content loader: loads records
- Editorial workflow → Sourcing checks: checks publication
- Editorial workflow → Articles: updates status
- Editorial workflow → People and roles: checks roles
- Static site build → Content loader: loads content
- Static site build → Sourcing checks: validates content
- Static site build → Markdown renderer: renders text
- Static site build → Content components: renders components
- Static site build → Page templates: renders pages
- Content loader → Articles: reads
- Content loader → Source records: reads
- Content loader → People and roles: reads
- Content loader → Site configuration: reads
- Content loader → Sections and formats: reads
- Content loader → Pages, media, issues: reads
- Content loader → Numbers rail: reads
- Static site build → Generated static site: writes pages
- Generated static site → Site styling: loads styles
- Generated static site → Search and enhancements: loads script
- Static hosting → Generated static site: serves
- Readers → Static hosting: browse and search