

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
1# Frontend23## Directory Structure45- `./src/` - Frontend code6 - `./src/app/` - Legacy Angular modules/components7 - `./src/common/` - Framework-agnostic modules (the `core-common` alias), importable from both Angular and Stimulus. Code belongs here when it depends on neither framework and both sides need it; a helper only Stimulus controllers use belongs in `./src/stimulus/helpers/` instead.8 - `./src/stimulus/` - Stimulus controllers9 - `./src/turbo/` - Turbo integration1011## Configuration Files1213- `eslint.config.mjs` - JavaScript/TypeScript linting14- `../package.json` / `./frontend/package.json` - Node.js dependencies1516## Version Requirements1718- Node: `^24.15.0` (see `package.json` engines)1920## Setup2122```bash23npm ci && cd .. # Install Node packages24```2526## Code Style2728### JavaScript/TypeScript29- **New development**: Use Hotwire (Turbo + Stimulus) with server-rendered HTML30- **Legacy code**: Follow ESLint rules31- Prefer TypeScript over JavaScript32- Use [Primer Design System](https://primer.style/product/) via ViewComponent3334## Linting3536```bash37# JavaScript/TypeScript38npx eslint src/ && cd ..39```4041## Testing4243```bash44# Frontend (Jasmine/Karma)45npm test && cd ..46```47
One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| opf/openprojectconfig/AGENTS.md · 16k | AGENTS.md | no sections | 46/100 | 14 days ago | |
| opf/openproject.github/copilot-instructions.md · 16k | Copilot instructions | setuplint-formatgitdatabase+1 | 73/100 | 14 days ago | |
| opf/openprojectAGENTS.md · 16k | AGENTS.md | setuplint-formatarchtypes+3 | 90/100 | 9 days ago | |
| opf/openprojectapp/AGENTS.md · 16k | AGENTS.md | stylearch | 52/100 | 14 days ago | |
| opf/openprojectdb/AGENTS.md · 16k | AGENTS.md | styledatabase | 55/100 | 14 days ago | |
| opf/openprojectdocker/dev/AGENTS.md · 16k | AGENTS.md | setuptestdatabase | 74/100 | 14 days ago | |
| opf/openprojectspec/AGENTS.md · 16k | AGENTS.md | teststylearch | 77/100 | 14 days ago |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| n8n-io/n8npackages/@n8n/agents/AGENTS.md · 201k | AGENTS.md | buildteststylearch+3 | 100/100 | 14 days ago | |
| aaif-goose/gooseAGENTS.md · 53k | AGENTS.md | setupbuildtestlint-format+7 | 100/100 | 8 days ago | |
| duckduckgo/content-scope-scriptsspecial-pages/AGENTS.md · 70 | AGENTS.md | buildteststylearch+3 | 100/100 | 14 days ago | |
| deepseek-ai/deepseek-harnessnative/landlock-run/AGENTS.md · 104k | AGENTS.md | setupteststylearch+3 | 100/100 | today | |
| code-yeongyu/oh-my-openagentpackages/web/AGENTS.md · 68k | AGENTS.md | setupbuildtestlint-format+6 | 100/100 | 13 days ago | |
| TryGhost/Ghoste2e/AGENTS.md · 55k | AGENTS.md | setupteststylearch+2 | 100/100 | today | |
| mui/material-uiAGENTS.md · 99k | AGENTS.md | setupbuildtestlint-format+9 | 100/100 | 14 days ago | |
| elastic/elasticsearchx-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/ml/AGENTS.md · 78k | AGENTS.md | buildtestlint-formatstyle+2 | 100/100 | 14 days ago |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/opf-openproject-frontend-agents)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.