Skip to main content
rule

angular-novo-elements-cursorrules-prompt-file — Cursor rule

This rule guides Cursor through Angular work with Novo Elements, favoring small diffs, checks, and tests. It fits projects built with standalone components.

Install into Cursor · Manually: put the files in place All methods and platforms ↓
.cursor/rules/angular-novo-elements-cursorrules-prompt-file.mdc
Open on GitHub

What angular-novo-elements-cursorrules-prompt-file does

The rule configures Cursor for an Angular project that uses Novo Elements and standalone components. It asks the agent to verify facts before editing, preserve the existing structure, and keep each diff small. Its coding guidance covers DRY, KISS, YAGNI, single-purpose entities, and leaving touched code clearer.

For each task, it recommends incremental edits, clear commit messages, unit tests for new code, and a test check before merging. It also sets expectations for naming, project organization, debug logs, and avoiding deprecated functions or libraries. The rule is not applied automatically because alwaysApply: false; its file scope is **/*. Novo Elements is supplied as the project UI context, with documentation references included.

What it helps with

  • preserve the existing Angular project structure
  • keep code changes to a small diff
  • add unit tests for new logic
  • check tests before merging changes
  • remove duplication and avoid needless complexity

Example prompts for the agent

  • Review this Angular component and make the smallest fix that follows the Novo Elements rules.
  • Add unit tests for the new standalone component logic and check them before merging.
  • Debug this issue without changing the current project structure, then write a clear commit message.

How to install angular-novo-elements-cursorrules-prompt-file

Manually: put the files in place

.cursor/rules/angular-novo-elements-cursorrules-prompt-file.mdc

Frontmatter: description, globs, alwaysApply

Step by step, with commands for each platform: Cursor rules: .mdc files, four modes and what replaced .cursorrules

Questions about angular-novo-elements-cursorrules-prompt-file

How do I install angular-novo-elements-cursorrules-prompt-file in Cursor?

Copy the rule file to .cursor/rules/angular-novo-elements-cursorrules-prompt-file.mdc in the project.

What does angular-novo-elements-cursorrules-prompt-file do?

It gives Cursor project rules for Angular with Novo Elements, including fact checks before edits, preserved code structure, small diffs, and tests for new code.

Does the rule support Angular standalone components?

Yes. It is written for standalone components and assumes the project has no module file.

Source text

angular-novo-elements-cursorrules-prompt-file.mdc · CC0-1.0
---
description: "Cursor rules for Angular development with Novo Elements UI library."
globs: **/*
alwaysApply: false
---
# .cursor

rules

# General rules

- Do not apologize
- Do not thank me
- Talk to me like a human
- Verify information before making changes
- Preserve existing code structures
- Provide concise and relevant responses
- Verify all information before making changes

You will be penalized if you:
- Skip steps in your thought process
- Add placeholders or TODOs for other developers
- Deliver code that is not production-ready

I'm tipping $9000 for an optimal, elegant, minimal world-class solution that meets all specifications. Your code changes should be specific and complete. Think through the problem step-by-step.

YOU MUST:
- Follow the User's intent PRECISELY
- NEVER break existing functionality by removing/modifying code or CSS without knowing exactly how to restore the same function
- Always strive to make your diff as tiny as possible

# File-by-file changes

- Make changes in small, incremental steps
- Test changes thoroughly before committing
- Document changes clearly in commit messages

# Code style and formatting

- Follow the project's coding standards
- Use consistent naming conventions
- Avoid using deprecated functions or libraries

# Debugging and testing

- Include debug information in log files
- Write unit tests for new code
- Ensure all tests pass before merging

# Project structure

- Maintain a clear and organized project structure
- Use meaningful names for files and directories
- Avoid clutter by removing unnecessary files

# Clean Code

Don't Repeat Yourself (DRY)

Duplication of code can make code very difficult to maintain. Any change in logic can make the code prone to bugs or can make the code change difficult. This can be fixed by doing code reuse (DRY Principle).

The DRY principle is stated as "Every piece of knowledge must have a single, unambiguous, authoritative representation within a system".

The way to achieve DRY is by creating functions and classes to make sure that any logic should be written in only one place.

Curly's Law - Do One Thing

Curly's Law is about choosing a single, clearly defined goal for any particular bit of code: Do One Thing.

Curly's Law: A entity (class, function, variable) should mean one thing, and one thing only. It should not mean one thing in one circumstance and carry a different value from a different domain some other time. It should not mean two things at once. It should mean One Thing and should mean it all of the time.

Keep It Simple Stupid (KISS)

The KISS principle states that most systems work best if they are kept simple rather than made complicated; therefore, simplicity should be a key goal in design, and unnecessary complexity should be avoided.

Simple code has the following benefits:
less time to write
less chances of bugs
easier to understand, debug and modify

Do the simplest thing that could possibly work.

Don't make me think

Code should be easy to read and understand without much thinking. If it isn't then there is a prospect of simplification.

You Aren't Gonna Need It (YAGNI)

You Aren't Gonna Need It (YAGNI) is an Extreme Programming (XP) practice which states: "Always implement things when you actually need them, never when you just foresee that you need them."

Even if you're totally, totally, totally sure that you'll need a feature, later on, don't implement it now. Usually, it'll turn out either:
you don't need it after all, or
what you actually need is quite different from what you foresaw needing earlier.

This doesn't mean you should avoid building flexibility into your code. It means you shouldn't overengineer something based on what you think you might need later on.

There are two main reasons to practice YAGNI:
You save time because you avoid writing code that you turn out not to need.
Your code is better because you avoid polluting it with 'guesses' that turn out to be more or less wrong but stick around anyway.

Premature Optimization is the Root of All Evil

Programmers waste enormous amounts of time thinking about or worrying about, the speed of noncritical parts of their programs, and these attempts at efficiency actually have a strong negative impact when debugging and maintenance are considered.

We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%.

- Donald Knuth

Boy-Scout Rule

Any time someone sees some code that isn't as clear as it should be, they should take the opportunity to fix it right there and then - or at least within a few minutes.

This opportunistic refactoring is referred to by Uncle Bob as following the boy-scout rule - always leave the code behind in a better state than you found it.

The code quality tends to degrade with each change. This results in technical debt. The Boy-Scout Principle saves us from that.

Code for the Maintainer

Code maintenance is an expensive and difficult process. Always code considering someone else as the maintainer and making changes accordingly even if you're the maintainer. After a while, you'll remember the code as much as a stranger.

Always code as if the person who ends up maintaining your code is a violent psychopath who knows where you live.

Principle of Least Astonishment

Principle of Least Astonishment states that a component of a system should behave in a way that most users will expect it to behave. The behavior should not astonish or surprise users.

Code should do what the name and comments suggest. Conventions should be followed. Surprising side effects should be avoided as much as possible.

# Project specific rules

I'm using angular with standalone components
I'm integrating novo elements which is the novo-elements module

Documentation is here: https://bullhorn.github.io/novo-elements/docs/#/home
Github is here: https://github.com/bullhorn/novo-elements

I don''t have a module file. I am using standalone components

@Docs{
  "library_name": "Novo Elements",
  "documentation": "https://bullhorn.github.io/novo-elements/docs/#/home"
}

@Docs{
  "library_name": "Novo Elements",
  "documentation": "https://github.com/bullhorn/novo-elements"
}

© PatrickJS · CC0-1.0 · PatrickJS/awesome-cursorrules

Similar IDE rules

All IDE rules for Frontend and UI →

From the same set210

ascii-simulation-game-cursorrules-prompt-file A Cursor rule that frames an observer-only ASCII simulation: 10x10 grid, turn-based play, logs for nearly everything. Useful if you are building something in the spirit of Conway's Game of Life. ★ 41,024repo stars anti-sycophancy-code-discipline-cursorrules-prompt-file This Cursor rule stops the assistant from sycophantic approval, fake API signatures, and unverified reviews. It keeps refactoring disciplined and forces evidence-based checks. ★ 41,024repo stars anti-overengineering This Cursor rule keeps edits tied to the request and avoids extra abstractions, dependencies, and broad file rewrites. ★ 41,024repo stars ankra-cli A Cursor rule that tells the agent how to drive the Ankra CLI: clusters, stacks, Helm releases and tokens. ★ 41,024repo stars angular-typescript-cursorrules-prompt-file Sets Angular 18 and TypeScript standards in Cursor, capping nesting depth at two levels and enforcing Jest test conventions. ★ 41,024repo stars android-jetpack-compose-cursorrules-prompt-file A Cursor rule that steers the agent through Android development with Jetpack Compose: architecture, state, tests. ★ 41,024repo stars alpha-skills-quant-factor-research Sets up Cursor as a quantitative researcher to design, evaluate, and backtest alpha factors. Supports US, Hong Kong, and China A-share equity markets. ★ 41,024repo stars ai-agent-specialist This Cursor rule sets guidance for TypeScript, React, and Node.js, covering architecture, tests, security, errors, and Git. It suits projects that need WHY explanations. ★ 41,024repo stars

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor