This repository contains a plain HTML/CSS/JavaScript web application.
There is:
- no build step
- no package manager
- no framework
- no transpilation
- no backend runtime
- no automated test suite
Agents should prioritize:
- simplicity
- readability
- browser compatibility
- minimal file count
- low complexity
- fast page load
Avoid introducing tooling or abstractions unless explicitly requested.
Keep the structure shallow and easy to navigate.
Do not introduce:
- webpack
- vite
- react
- vue
- typescript
- npm
- bundlers
- transpilers
unless explicitly requested.
-
Use semantic HTML whenever practical.
-
Prefer native browser behavior over JavaScript solutions.
-
Keep DOM depth reasonable.
-
Use accessible markup:
- labels for inputs
- alt text for images
- button elements for actions
- proper heading hierarchy
Avoid unnecessary wrapper divs.
- Prefer simple reusable classes.
- Avoid deeply nested selectors.
- Prefer flexbox/grid over positioning hacks.
- Keep specificity low.
- Organize CSS by section/component.
Do not introduce:
- Tailwind
- Bootstrap
- CSS-in-JS
- Sass/Less
unless explicitly requested.
.card {
padding: 1rem;
border-radius: 8px;
}Avoid:
body div.main .container .card .content {
}- Use modern vanilla JavaScript.
- Prefer small pure functions.
- Avoid global state where possible.
- Prefer
constoverlet. - Use event delegation when appropriate.
- Keep DOM queries centralized and minimal.
const button = document.querySelector('.menu-toggle');
button?.addEventListener('click', toggleMenu);window.onclick = function () {
// large anonymous logic block
};Do not introduce:
- frameworks
- state managers
- reactive runtimes
- dependency injection systems
unless explicitly requested.
Target:
- latest Chrome
- latest Firefox
- latest Safari
- latest Edge
Avoid experimental APIs unless required.
Prefer progressive enhancement.
Agents should:
- minimize JavaScript payload size
- avoid unnecessary DOM updates
- lazy-load large images when useful
- avoid layout thrashing
- reduce render-blocking assets
Prefer CSS animations over JavaScript animations.
This project intentionally avoids dependencies.
Before adding any third-party library:
- verify the feature cannot be implemented simply in vanilla JS
- justify the dependency clearly
- prefer copy-paste utilities over large frameworks
Small standalone libraries are preferred over ecosystems.
- Prefer editing existing files over creating new files.
- Avoid splitting files prematurely.
- Keep related logic together.
- Do not reorganize directories without a clear reason.
For small projects:
- one JS file is acceptable
- one CSS file is acceptable
Do not over-engineer structure.
When debugging:
- identify the minimal failing behavior
- inspect console errors first
- verify DOM structure
- verify event listeners
- isolate CSS/layout issues separately
Prefer targeted fixes over rewrites.
Agents should:
- preserve keyboard navigation
- maintain visible focus states
- avoid inaccessible custom controls
- ensure sufficient contrast
- avoid relying solely on color
Use native elements whenever possible.
Design should work on:
- mobile
- tablet
- desktop
Prefer fluid layouts.
Avoid:
- fixed-width layouts
- horizontal scrolling
- viewport-dependent hacks
Agents must NOT introduce:
- npm
- node_modules
- build pipelines
- transpilers
- Docker
- CI/CD systems
- test frameworks
- linting setups
- formatters
- monorepo tooling
unless explicitly requested.
- Read existing code first
- Preserve current style conventions
- Make the smallest reasonable change
- Verify behavior manually
- Keep implementation understandable
Good changes are:
- small
- readable
- easy to debug
- dependency-free
- browser-friendly
Bad changes are:
- framework-driven rewrites
- abstraction-heavy patterns
- unnecessary tooling
- excessive file splitting
- speculative architecture
Since there is no automated testing:
Agents should manually verify:
- page loads without console errors
- interactions still function
- layout works at common screen sizes
- no obvious visual regressions exist
Do not claim tests were run.
Instead say:
Manually verified in browser.if verification was performed.
Request human review before:
- adding dependencies
- restructuring directories
- changing browser support targets
- rewriting major UI sections
- introducing persistence/storage changes
When uncertain, prefer the simpler implementation.