Cursor rule
.cursor/rules/project-conventions.mdcCursor rules
Quality
77/100
Scores the file, not the repository.Length
495 words
14 headings · 1 code blocksRepository
0
— · pushed 0 days agoLast changed
3 days ago
First indexed 3 days ago.1# SneakInMarket Project Conventions23## Project-Specific Requirements45- **Marketplace Focus**: Sneakers, clothing, accessories, electronics, gaming, collectibles6- **Seller-Buyer Platform**: Support both listing creation and purchasing flows7- **Payment Integration**: Razorpay for Indian market payments8- **Mobile-First**: Optimized for mobile users in Indian market9- **Regional Features**: Pincode validation, address management, local delivery1011## Enum Usage Requirements1213- **Always use enums from `src/constants/enums.ts`**14- **Never hardcode values that exist in enums**15- **Use enum types for TypeScript interfaces**1617### Key Enums to Use1819```typescript20// Routes - use ROUTE_NAMES for navigation21import { ROUTE_NAMES } from "@/constants/enums";22navigate(ROUTE_NAMES.HOME);2324// Product conditions - use PRODUCT_CONDITIONS25import { PRODUCT_CONDITIONS } from "@/constants/enums";26const condition = PRODUCT_CONDITIONS.NEW;2728// Categories - use CATEGORY_IDS29import { CATEGORY_IDS } from "@/constants/enums";30const category = CATEGORY_IDS.SNEAKERS;3132// Listing status - use LISTING_STATUS33import { LISTING_STATUS } from "@/constants/enums";34const status = LISTING_STATUS.APPROVED;35```3637## Component Structure Patterns3839- **Feature Components**: Place in `src/components/` (e.g., `Cart/`, `checkout/`)40- **UI Components**: Place in `src/components/ui/` (shadcn/ui style)41- **Page Components**: Place in `src/pages/`42- **Context Providers**: Place in `src/contexts/`4344## Authentication Flow4546- **Public Routes**: Use `PublicRoute` component for login/signup47- **Protected Routes**: Use `ProtectedRoute` component for authenticated users48- **Admin Routes**: Use `AdminRoute` component for admin-only access49- **Context**: Use `useAuth()` hook for authentication state5051## Cart and Checkout Flow5253- **Cart Context**: Use `useCart()` hook for cart management54- **Multi-step Checkout**: Cart → Shipping → Payment55- **Address Management**: Use `useAddressStorage()` hook56- **Payment Integration**: Razorpay with proper error handling5758## Product Management5960- **Listing Creation**: Multi-step form with image upload61- **Image Compression**: Use `imageCompression` utility62- **Status Management**: Draft → Review → Approved/Rejected63- **Condition Badges**: Use `ConditionBadge` component6465## Mobile-First Design Requirements6667- **Touch Targets**: Minimum 44px for interactive elements68- **Responsive Breakpoints**: 320px+ (mobile), 768px+ (tablet), 1024px+ (desktop)69- **Navigation**: Mobile-friendly navigation patterns70- **Forms**: Optimized for mobile input7172## Error Handling Patterns7374- **Toast Notifications**: Use `sonner` for user feedback75- **Loading States**: Skeleton components and spinners76- **Form Validation**: Zod schemas with clear error messages77- **API Errors**: Graceful fallbacks and retry mechanisms7879## Performance Requirements8081- **Image Optimization**: Use `OptimizedImage` component82- **Lazy Loading**: Implement for heavy components83- **Bundle Splitting**: Consider for large pages84- **Caching**: Implement appropriate caching strategies8586## Testing Scenarios8788- **User Flows**: Complete buyer and seller journeys89- **Mobile Experience**: Test on various screen sizes90- **Payment Flow**: Test successful and failed payment scenarios91- **Form Validation**: Test all validation rules92- **Error States**: Test error handling and recovery9394## Code Organization9596- **Import Order**: External → Internal → Types → Utils97- **File Structure**: Follow existing patterns98- **Naming**: Use descriptive, consistent names99- **Documentation**: Comment complex logic and business rules100101## Build and Deployment102103- **TypeScript**: Strict mode, no compilation errors104- **Bundle Size**: Monitor and optimize large chunks105- **Environment**: Use proper environment variables106- **Build Command**: Always run `npm run build` before committing107 description:108 globs:109 alwaysApply: false110111---112
Also in KAMAL20201/SneakerMarketplace
Diff this repo’s formatsOne 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 |
|---|---|---|---|---|---|
| KAMAL20201/SneakerMarketplace.cursor/rules/api-patterns.mdc · 0 | Cursor rules | styletypessecuritydatabase+1 | 58/100 | 3 days ago | |
| KAMAL20201/SneakerMarketplace.cursor/rules/development-workflow.mdc · 0 | Cursor rules | buildteststyletypes+4 | 81/100 | 3 days ago | |
| KAMAL20201/SneakerMarketplace.cursor/rules/project-overview.mdc · 0 | Cursor rules | stylearchtypes | 52/100 | 3 days ago | |
| KAMAL20201/SneakerMarketplace.cursor/rules/react-patterns.mdc · 0 | Cursor rules | stylearchuiperformance | 58/100 | 3 days ago | |
| KAMAL20201/SneakerMarketplace.cursor/rules/typescript-standards.mdc · 0 | Cursor rules | styletypesapiui+1 | 61/100 | 3 days ago | |
| KAMAL20201/SneakerMarketplace.cursor/rules/ui-components.mdc · 0 | Cursor rules | archui | 54/100 | 3 days ago | |
| KAMAL20201/SneakerMarketplaceAGENTS.md · 0 | AGENTS.md | stylesecuritydo-not | 45/100 | 3 days ago |
Diff against .cursor/rules/api-patterns.mdc Diff against .cursor/rules/development-workflow.mdc Diff against .cursor/rules/project-overview.mdc Diff against .cursor/rules/react-patterns.mdc Diff against .cursor/rules/typescript-standards.mdc Diff against .cursor/rules/ui-components.mdc Diff against AGENTS.md
Similar configs
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 | 3 days ago | |
| TechSquidTV/Hermes.cursor/rules/10-hermes-api.mdc · 45 | Cursor rules | testlint-formatstylearch+5 | 100/100 | 3 days ago | |
| dodgecfr/combatfilms-webapp.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 3 days ago | |
| deifos/clipmira-subtitles.cursor/rules/frontend.mdc · 1 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 3 days ago | |
| markstev/mark-starter.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+6 | 99/100 | 3 days ago | |
| Allymahmoud/case-intake-platform.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 3 days ago | |
| langflow-ai/langflow.cursor/rules/docs_development.mdc · 153k | Cursor rules | setupbuildtestlint-format+7 | 97/100 | 3 days ago | |
| TechSquidTV/Hermes.cursor/rules/20-hermes-api-tests.mdc · 45 | Cursor rules | teststyletesting-strategysecurity+3 | 97/100 | 3 days ago |
