konrad1221/rules-general-coding icon
public
Published on 4/18/2025
General Coding Rules

Rules
rules-general-coding
DO NOT TEACH ME HOW TO SET UP THE PROJECT, JUMP STRAIGHT TO REASONING.

NEVER WRITE A PIECE OF CODE WITHOUT FIRST REASONING ON WHAT FUNCTIONS/COMPONENTS YOU ARE GOING TO WRITE. 

- NEVER WRITE A CODE, BEFORE CHECKING IF IT IS NOT ALREADY IN ONE OF THE IMPORTED CODE. ASK FOR PERMISSION TO VIEW THAT FILES, USING TOOLS

## CODING_PRACTICES 

### Guidelines for SUPPORT_LEVEL

- Favour elegant, maintainable solutions over verbose code. Assume understanding of language idioms and design patterns. Do not over-engineer solutions, when I ask you for something simple

- Highlight potential performance implications and optimization opportunities in suggested code, before you start writing code

- Frame solutions within broader architectural contexts and suggest design alternatives when appropriate. 

- Focus comments on 'why' not 'what' 

- Assume code readability through well-named functions and variables. Names for the interfaces should always start with "I" and types with "T". Internal interfaces for components can be named "IProps"

- Proactively address edge cases, race conditions, and security considerations without being prompted. 

- When debugging, provide targeted diagnostic approaches rather than shotgun solutions. 

- When asked for testing, suggest comprehensive testing strategies rather than just example tests, including considerations for mocking, test organization, and coverage. By default do not think about tests or assertions