1.9 KiB
1.9 KiB
Repository Guidelines
Project Structure & Module Organization
- Root: static demos and data.
index.php: FlowGrid (Vue 2) POC; parses inline DSL and renders lanes/steps.ex4.html: Cytoscape-based AWS VPC diagrams that fetchgraph.json.graph.json: Example cloud inventory used byex3.html/ex4.html.
- Add new demos as
exN.htmlnear existing files; keep shared data in JSON.
Build, Test, and Development Commands
- View live site at https://phowell.org/flow/index.php (or other filename)
- Working php server
- Basic JS/HTML sanity (manual): open in Chrome/Firefox and watch the console for errors; ensure
graph.jsonloads without CORS issues.
Coding Style & Naming Conventions
- Indentation: 2 spaces for HTML/CSS/JS.
- JavaScript: camelCase variables/functions; semicolons; small, pure helpers.
- CSS: use CSS custom properties (
--kebab-case) and utility-like classes. - HTML: double-quoted attributes; lightweight, semantic elements.
- File naming: demos
ex<N>.html; data*.json; avoid frameworks/build steps.
Testing Guidelines
- No formal test runner configured. Validate by:
- Loading each page via
php -Sand exercising UI (toggles, search, layout buttons). - For
graph.jsonchanges, verify nodes/edges render and controls respond. - Optional lint:
php -l index.php(syntax check) and run an HTML/JS linter locally if available.
- Loading each page via
Commit & Pull Request Guidelines
- Commits: imperative, scoped summaries (e.g.,
feat: add RDS labels,fix: guard null css vars). - PRs: include a concise description, screenshots/GIFs of the UI, and reference issues.
- Keep diffs minimal; explain data/schema changes to
graph.jsonand their UI impact.
Security & Configuration Tips
- Serve over
http://locally (notfile://) sofetch('graph.json')works. - Do not commit credentials or sensitive infrastructure details in
graph.json. - External CDNs are used (Vue, Cytoscape, ELK); vendor locally only if required.