AI SummaryA Windsurf-specific rule set that enforces Haiven team's backend (Python) and frontend (React/Next.js) development standards, including architecture patterns, testing practices, and code style conventions. Developers working on this codebase benefit from clear, actionable guidelines integrated directly into their IDE.
Install
Copy this and paste it into Claude Code, Cursor, or any AI assistant:
I want to add the "haiven — Windsurf Rules" prompt rules to my project. Repository: https://github.com/tw-haiven/haiven Please read the repo to find the rules/prompt file, then: 1. Download it to the correct location (.cursorrules, .windsurfrules, .github/prompts/, or project root — based on the file type) 2. If there's an existing rules file, merge the new rules in rather than overwriting 3. Confirm what was added
Description
Main repo for the Haiven team assistant
Backend
• Our backend is in Python and in the app/ subfolder. The app needs to be started from that directory. • The backend tests are in app/tests/ • When running tests or the application, the virtual environment in app/.venv first needs to be activated • We're using constructor dependency injections to make our code more testable. Pass dependencies in via constructors, do not initialise them inside of a class. • When we wrap up a backend change, make sure to remind me to start up the whole application, to make sure that it's all well-integrated.
Frontend
• Our frontend is in JavaScript, React, Next, in the ui/ subfolder, code in ui/src/, tests in ui/src/__tests__. Make sure to navigate into the ui/ subfolder before executing yarn tasks. • We're using Next in "client only" mode, NO server-side features, because we're distributing the frontend code as static resources that call a Python API for data • We're using vitest for testing • We're using the "prettier" library for formatting • Always use remix icons for icons • Do not create JSDocs • Our components currently go in the ui/app folder, and the file naming convention is _name_of_component.js • Never use innerHTML in combination with useRef, consider React state instead, it is more secure
Discussion
Health Signals
My Fox Den
Community Rating
Sign in to rate this booster
Works With
Any AI assistant that accepts custom rules or system prompts