| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
High-control static web workflow with predictable output and zero-trust validation. Built on Gulp 5, Nunjucks, Dart Sass, PostCSS, esbuild, and Sharp.
git clone https://github.com/cebreus/gulp-devstack.git
cd gulp-devstack
pnpm install
pnpm devEdit src/routes/index.md to change the homepage content, then open http://localhost:3000.
Gulp DevStack is designed for developers who demand precision. It rejects framework abstractions in favor of explicit control and deterministic output.
Every routable Nunjucks template in src/routes/ maps directly to public HTML. Internal layout files use the layout-*.njk prefix and are excluded from output.
Routes support an "Override & Merge" pattern. If a folder contains both .njk (template) and .md (data), the build engine automatically merges them. The .md frontmatter and content are compiled into .temp/pages/*.json and injected into the Nunjucks context as page, allowing a clean split between presentation and content.
To prevent bundle bloat, the pipeline supports Asset Autodiscovery. If you create src/routes/my-page/index.scss or index.js, they are automatically compiled and injected only into that specific page.
The verify:pipeline command ensures the project never regresses:
WCAG Audits: Automated accessibility checks via Playwright and Axe-core.
Link Integrity: Exhaustive validation of all internal links and anchors.
Visual Parity: Automated screenshot comparison between Build and Export modes to ensure visual consistency across pipelines.
Strict Validation: HTML5 structure verification via html-validate.
Graph Awareness: graphify update . refreshes graphify-out/graph.json, graphify-out/graph.html, and graphify-out/GRAPH_REPORT.md after code changes.
The image task catalogs the bitmap files it actually emitted, including their oriented intrinsic dimensions and available formats. Opaque local images also receive a generated 20px WebP LQS class backed by cacheable /assets/css/lqs.css; transparent images receive dimensions but no placeholder. Templates opt in explicitly through the shared responsiveImage macro and site.localImages descriptors. External/CDN images and SVG remain unchanged.
├── gulp/ # Modular task definitions & pipeline logic
├── scripts/ # Release, lint wrapper, and hook support scripts
├── src/
│ ├── assets/ # Global images, fonts, and icons
│ ├── config/ # Centralized site metadata (site.js, env.js)
│ ├── js/ # Global scripts bundled via esbuild
│ ├── lib/ # Shared Nunjucks components & partials
│ ├── routes/ # Source for pages (Routing & Content)
│ └── scss/ # Global styles (Bootstrap 5.3 + Custom overrides)
├── tests/
│ ├── unit/ # Pure logic testing
│ ├── integration/ # Pipeline & Gulp task validation
│ ├── e2e/ # Browser-based integrity & A11y checks
│ └── visual/ # Cross-pipeline visual parity checks
├── docs/ # Technical documentation
├── memories/ # Agent-maintained project gotchas
└── graphify-out/ # Knowledge graph outputs
MIT - Developed by Jaroslav Vrana
| Back | FazBrowse Home | New Git URL |