

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
12345# Code Quality Standards67## ESLint Configuration89Primer uses custom ESLint configs in [packages/eslint-config-primer/](mdc:packages/eslint-config-primer/):1011- **Base**: Common rules for all packages12- **Client**: Frontend-specific rules with React/Next.js13- **Server**: Backend-specific rules for Strapi1415## Code Style Rules1617### Import Organization1819```typescript20// 1. React imports (first)21import React from 'react';2223// 2. External libraries (alphabetical)24import { NextPage } from 'next';25import { Button } from '@strapi/design-system';2627// 3. Internal modules (alphabetical)28import { apiClient } from '@/lib/api';29import { ProductCard } from '@/components/common';3031// 4. Type imports (separate group)32import type { Product } from '@/types/product';33```3435### TypeScript Rules3637- Use `type` imports for type-only imports38- Avoid `any` - use `unknown` or proper typing39- Use strict type checking40- Define interfaces for component props4142### React Rules4344- Use arrow functions for components45- No default exports (except pages)46- Proper prop types and interfaces47- Use React hooks correctly4849## Linting Commands5051- `yarn lint` - Lint all packages52- `yarn lint:fix` - Auto-fix linting issues53- Individual package linting available5455## Code Formatting5657- **Prettier**: Integrated with ESLint58- **Consistent**: Same formatting across all packages59- **Auto-fix**: Available through ESLint6061## Error Handling6263### Frontend6465- Use proper error boundaries66- Handle loading and error states67- Type-safe error handling6869### Backend7071- Proper HTTP status codes72- Structured error responses73- Logging with appropriate levels7475## Performance7677### Frontend7879- Use Next.js Image component80- Implement proper code splitting81- Optimize bundle size82- Use React.memo when appropriate8384### Backend8586- Efficient database queries87- Proper caching strategies88- Optimize API responses8990## Documentation9192- **README**: Each package should have a README93- **Code Comments**: Document complex logic94- **Type Definitions**: Well-documented interfaces95- **API Documentation**: Clear endpoint documentation
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 |
|---|---|---|---|---|---|
| magdazelena/primer.cursor/rules/agents.mdc · 3 | Cursor rules | no sections | 48/100 | 14 days ago | |
| magdazelena/primer.cursor/rules/memory.mdc · 3 | Cursor rules | styleperformancedo-notagent-behaviour | 61/100 | 14 days ago | |
| magdazelena/primer.cursor/rules/monorepo-management.mdc · 3 | Cursor rules | buildtestlint-formatstyle+5 | 79/100 | 14 days ago | |
| magdazelena/primer.cursor/rules/nextjs-frontend.mdc · 3 | Cursor rules | teststylearchapi+1 | 72/100 | 14 days ago | |
| magdazelena/primer.cursor/rules/project-structure.mdc · 3 | Cursor rules | testlint-formatarchmonorepo | 71/100 | 14 days ago | |
| magdazelena/primer.cursor/rules/strapi-backend.mdc · 3 | Cursor rules | stylearchtypesdatabase | 68/100 | 14 days ago | |
| magdazelena/primer.cursor/rules/strapi-plugin-development.mdc · 3 | Cursor rules | buildtestarchagent-behaviour | 85/100 | 14 days ago | |
| magdazelena/primer.cursor/rules/testing-conventions.mdc · 3 | Cursor rules | teststyletesting-strategyapi+1 | 73/100 | 14 days ago | |
| magdazelena/primer.cursor/rules/typescript-conventions.mdc · 3 | Cursor rules | lint-formatstyletypesdo-not | 65/100 | 14 days ago |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| hiromaily/go-crypto-wallet.cursor/rules/typescript.mdc · 126 | Cursor rules | setupbuildtestlint-format+6 | 100/100 | 14 days ago | |
| TechSquidTV/Hermes.cursor/rules/10-hermes-api.mdc · 46 | Cursor rules | testlint-formatstylearch+5 | 100/100 | 14 days ago | |
| dodgecfr/combatfilms-webapp.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| deifos/clipmira-subtitles.cursor/rules/frontend.mdc · 1 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| markstev/mark-starter.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+6 | 99/100 | 14 days ago | |
| Allymahmoud/case-intake-platform.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| langflow-ai/langflow.cursor/rules/docs_development.mdc · 153k | Cursor rules | setupbuildtestlint-format+7 | 97/100 | 14 days ago | |
| bybren-llc/safe-agentic-workflow.cursor/rules/10-backend-python.mdc · 399 | Cursor rules | testlint-formatstylegit+4 | 97/100 | today |
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/magdazelena-primer-cursor-rules-code-quality)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.