Skip to content

Commit c23b3cb

Browse files
committed
feat: initialize memory bank system
Add memory bank directory with core documentation files: - projectbrief.md - productContext.md - systemPatterns.md - techContext.md - activeContext.md - progress.md Add .clinerules for project intelligence Signed-off-by: RooCode
1 parent 4487526 commit c23b3cb

File tree

8 files changed

+865
-0
lines changed

8 files changed

+865
-0
lines changed

.clineignore

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
build
2+
dist / media
3+
node_modules
4+
.DS_Store
5+
.env
6+
.env.prod
7+
.next
8+
.vercel
9+
10+
.pnpm-store

.clinerules

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
---
2+
description: Next.js with TypeScript and Shadcn UI best practices
3+
globs: **/*.tsx, **/*.ts, src/**/*.ts, src/**/*.tsx
4+
---
5+
6+
# Project Intelligence Rules
7+
8+
## File Organization
9+
10+
### Directory Patterns
11+
- Use [locale] for internationalization routes
12+
- Group routes into (public) and (private)
13+
- Place reusable UI components in components/ui/
14+
- Keep custom components in components/custom/
15+
- Store configurations in configs/ directory
16+
- Maintain utils/ for helper functions
17+
18+
### Naming Conventions
19+
- Use PascalCase for component files
20+
- Use kebab-case for utility files
21+
- Use camelCase for variables and functions
22+
- Suffix client components with ".client"
23+
- Append ".server" when explicitly server components
24+
25+
## Code Patterns
26+
27+
### Component Structure
28+
- Use TypeScript for all components
29+
- Implement proper type definitions
30+
- Export components as named exports
31+
- Follow functional component pattern
32+
- Include component documentation
33+
34+
### State Management
35+
- Prefer server components
36+
- Use client components only when needed
37+
- Implement proper loading states
38+
- Handle errors with try/catch
39+
- Use type-safe data fetching
40+
41+
### Styling Patterns
42+
- Use Tailwind utility classes
43+
- Follow mobile-first approach
44+
- Implement dark mode variants
45+
- Use CSS variables for theming
46+
- Follow accessibility guidelines
47+
48+
## Development Workflow
49+
50+
## Sensitive Files
51+
DO NOT read or modify:
52+
- .env files
53+
- **/config/secrets.*
54+
- **/*.pem
55+
- Any file containing API keys, tokens, or credentials
56+
57+
## Security Practices
58+
- Never commit sensitive files
59+
- Use environment variables for secrets
60+
- Keep credentials out of logs and output
61+
62+
## Manager Package
63+
- Use pnpm instead of npm
64+
- shadcn-ui is old name of lib, use shadcn instead of
65+
66+
### Git Practices
67+
- Use conventional commit, add footer for every commit "Signed-off-by: RooCode"
68+
- Remember **DONT** write in 'main' branch, write code in 'dev' branch or create new branch if need
69+
- Use rebase for merge branch
70+
- Use meaningful commit messages
71+
- Keep PRs focused and small
72+
- Update documentation with changes
73+
74+
### Testing Strategy
75+
- Write unit tests for utilities
76+
- Create integration tests for flows
77+
- Test both light and dark modes
78+
- Verify i18n functionality
79+
- Ensure mobile responsiveness
80+
81+
### Performance Guidelines
82+
- Optimize images
83+
- Implement proper loading states
84+
- Use code splitting
85+
- Monitor bundle size
86+
- Cache when appropriate
87+
88+
## Project Preferences
89+
90+
### Code Style
91+
- Max line length: 80 characters
92+
- Use single quotes for strings
93+
- Use semicolons
94+
- Two space indentation
95+
- No trailing commas
96+
97+
### Documentation
98+
- Document complex functions
99+
- Include component props
100+
- Maintain README updates
101+
- Add code examples
102+
- Keep inline comments minimal
103+
104+
### Error Handling
105+
- Use custom error classes
106+
- Implement proper logging
107+
- Show user-friendly messages
108+
- Handle edge cases
109+
- Maintain type safety
110+
111+
### Security Practices
112+
- Validate all inputs
113+
- Sanitize user data
114+
- Use proper authentication
115+
- Implement rate limiting
116+
- Follow security best practices
117+
118+
## Tooling Configuration
119+
120+
### ESLint Rules
121+
- Enforce TypeScript
122+
- Require prop types
123+
- Check accessibility
124+
- Maintain consistent style
125+
- Prevent common errors
126+
127+
### Prettier Settings
128+
```json
129+
{
130+
"singleQuote": true,
131+
"semi": true,
132+
"tabWidth": 2,
133+
"trailingComma": "none",
134+
"printWidth": 80
135+
}
136+
```
137+
138+
### Git Hooks
139+
- Run linting pre-commit
140+
- Check types pre-push
141+
- Verify tests pre-push
142+
- Format code pre-commit
143+
- Validate commit messages
144+
145+
This intelligence file will be updated as new patterns and preferences are discovered during development.

memory-bank/activeContext.md

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
# Active Context
2+
3+
## Current State
4+
5+
### Project Status
6+
- Initial setup of Next.js starter kit
7+
- Core features implemented
8+
- Memory bank system established
9+
10+
### Active Components
11+
- Authentication system with Supabase
12+
- Internationalization with next-intl
13+
- Theme system with next-themes
14+
- UI components with shadcn/ui
15+
- Database integration with Prisma
16+
17+
### Environment Setup
18+
- Development environment configured
19+
- Linting and formatting rules established
20+
- Git hooks configured
21+
- Database migrations ready
22+
23+
## Recent Changes
24+
25+
### Initial Setup
26+
1. Project structure established
27+
2. Core dependencies installed
28+
3. Basic configuration completed
29+
4. Memory bank system initialized
30+
31+
### Configuration
32+
1. ESLint and Prettier setup
33+
2. Commit message linting
34+
3. TypeScript configuration
35+
4. Tailwind setup
36+
37+
### Feature Implementation
38+
1. Authentication flow
39+
2. Internationalization system
40+
3. Theme switching
41+
4. Component library integration
42+
43+
## Current Focus
44+
45+
### Immediate Tasks
46+
1. Validate all core features
47+
2. Complete documentation
48+
3. Test deployment workflow
49+
4. Set up CI/CD pipeline
50+
51+
### Active Decisions
52+
1. Authentication Strategy
53+
- Using Supabase for auth
54+
- Implementing protected routes
55+
- Managing user sessions
56+
57+
2. Data Management
58+
- Prisma for database operations
59+
- Type-safe queries
60+
- Migration strategy
61+
62+
3. Styling Approach
63+
- TailwindCSS for utility classes
64+
- Component-level styles
65+
- Theme system integration
66+
67+
## Next Steps
68+
69+
### Short Term
70+
1. Security audit
71+
- Review authentication flow
72+
- Check API endpoints
73+
- Validate data access patterns
74+
75+
2. Performance optimization
76+
- Image optimization
77+
- Code splitting
78+
- Load time improvements
79+
80+
3. Testing strategy
81+
- Unit test setup
82+
- Integration tests
83+
- E2E testing plan
84+
85+
### Medium Term
86+
1. Feature additions
87+
- User management
88+
- Role-based access
89+
- API documentation
90+
91+
2. Developer experience
92+
- CLI tools
93+
- Generator scripts
94+
- Documentation improvements
95+
96+
3. Monitoring setup
97+
- Error tracking
98+
- Performance monitoring
99+
- Usage analytics
100+
101+
### Long Term
102+
1. Scale considerations
103+
- Database optimization
104+
- Cache implementation
105+
- Load balancing strategy
106+
107+
2. Feature expansion
108+
- Additional authentication providers
109+
- Extended API capabilities
110+
- Enhanced UI components
111+
112+
This context reflects the current state of development and will be updated as work progresses.

memory-bank/productContext.md

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
# Product Context
2+
3+
## Purpose
4+
This starter kit addresses common challenges in modern web application development by providing a pre-configured, production-ready foundation. It aims to reduce setup time and enforce best practices from the start.
5+
6+
## Problems Solved
7+
8+
### Development Efficiency
9+
1. **Reduced Setup Time**
10+
- Eliminates time spent on basic configuration
11+
- Provides ready-to-use authentication and database setup
12+
- Includes pre-configured tooling and linting
13+
14+
2. **Technical Debt Prevention**
15+
- Type-safe development with TypeScript
16+
- Consistent code style with ESLint and Prettier
17+
- Structured commit messages with commitlint
18+
19+
3. **Common Feature Implementation**
20+
- Built-in authentication system
21+
- Internationalization support
22+
- Theme management
23+
- Error handling patterns
24+
25+
### User Experience
26+
1. **Accessibility**
27+
- Multi-language support for global reach
28+
- Light/Dark mode preferences
29+
- Responsive design patterns
30+
31+
2. **Performance**
32+
- Server-side rendering capabilities
33+
- Optimized client-side navigation
34+
- Efficient data fetching patterns
35+
36+
3. **Security**
37+
- Secure authentication flows
38+
- Protected routes implementation
39+
- Type-safe database operations
40+
41+
## How It Works
42+
43+
### Core Architecture
44+
1. **Routing**
45+
- App Router based navigation
46+
- Dynamic route handling
47+
- Public/Private route separation
48+
49+
2. **Data Flow**
50+
- Server-side data fetching
51+
- Client-side state management
52+
- Type-safe API endpoints
53+
54+
3. **User Interface**
55+
- Component-based architecture
56+
- Shadcn/UI integration
57+
- TailwindCSS styling system
58+
59+
### Key Workflows
60+
1. **Authentication**
61+
- User registration
62+
- Login/Logout flows
63+
- Protected route access
64+
65+
2. **Internationalization**
66+
- Language detection
67+
- Content translation
68+
- Dynamic locale switching
69+
70+
3. **Theme Management**
71+
- System preference detection
72+
- Manual theme switching
73+
- Persistent theme storage
74+
75+
## User Experience Goals
76+
77+
### Developer Experience
78+
1. **Clear Structure**
79+
- Intuitive file organization
80+
- Consistent naming patterns
81+
- Modular component design
82+
83+
2. **Development Efficiency**
84+
- Hot reloading
85+
- Type checking
86+
- Automated formatting
87+
88+
3. **Maintainability**
89+
- Clear separation of concerns
90+
- Reusable components
91+
- Documentation patterns
92+
93+
### End User Experience
94+
1. **Performance**
95+
- Fast page loads
96+
- Smooth navigation
97+
- Responsive interactions
98+
99+
2. **Accessibility**
100+
- Language preferences
101+
- Theme preferences
102+
- Screen reader support
103+
104+
3. **Reliability**
105+
- Error recovery
106+
- Offline capabilities
107+
- Data persistence
108+
109+
This context guides the development and evolution of the starter kit, ensuring it remains focused on solving real-world development challenges while maintaining excellent user experience.

0 commit comments

Comments
 (0)