Cursor rule
.cursor/rules/development-workflow.mdcDevelopment workflow automation and best practices for POS System
Cursor rules
Quality
86/100
Scores the file, not the repository.Length
902 words
42 headings · 7 code blocksRepository
118
— · pushed 339 days agoLast changed
3 days ago
First indexed 3 days ago.12345# Development Workflow Guide67## Quick Start Commands89### Primary Development Workflow10Use [Makefile](mdc:Makefile) for all development operations:1112```bash13# Essential commands for daily development14make help # Show all available commands15make dev # Start development environment with hot reloading16make up # Start Docker containers in background17make down # Stop all containers18make status # Check system status19```2021### Database Management Workflow22```bash23# Database operations (all interactive and safe)24make create-admin # Create super admin user25make backup # Backup entire system (database + files)26make restore # Restore from backup (interactive menu)27make db-reset # Reset to fresh state with seed data28make db-shell # Access PostgreSQL shell29make remove-data # DESTRUCTIVE: Remove all data (multiple confirmations)30```3132## Development Environment Setup3334### First Time Setup351. Clone repository and navigate to project root362. Ensure Docker Desktop is running373. Run `make dev` - automatically creates `.env` file if missing384. Access applications:39 - Frontend: http://localhost:300040 - Backend API: http://localhost:808041 - Database: localhost:54324243### Daily Development Workflow44```bash45# Start development session46make dev # Starts all services with hot reloading4748# During development49make logs # View all service logs50make logs-backend # View only backend logs51make logs-frontend# View only frontend logs5253# End development session54make down # Stop all containers55```5657## Database Development Workflow5859### Working with Database601. **Fresh Start**: `make db-reset` - Clean database with seed data612. **Backup Before Changes**: `make backup` - Create safety backup623. **Make Changes**: Edit schema files or use application634. **Test Changes**: Verify functionality645. **Create Admin**: `make create-admin` - Add admin users as needed6566### Database Schema Changes671. Edit [database/init/01_schema.sql](mdc:database/init/01_schema.sql)682. Edit [database/init/02_seed_data.sql](mdc:database/init/02_seed_data.sql) if needed693. Run `make db-reset` to apply changes704. Test with fresh data7172### Emergency Recovery73- All destructive operations create emergency backups74- Use `make restore` to recover from any backup75- Emergency backups are automatically created in `backups/` directory7677## Production Deployment Workflow7879### Production Build80```bash81# Build and start production environment82make prod # Starts production containers8384# Production utilities85make logs # Monitor production logs86make backup # Create production backup87make clean # Clean up resources (with confirmations)88```8990### Production Database Management91- Use same `make backup` and `make restore` commands92- Emergency backups created before any destructive operations93- All operations require explicit confirmations9495## Safety Features9697### Multiple Confirmation Layers98All potentially destructive operations require specific confirmations:99- `make remove-data` requires typing "DELETE ALL DATA"100- `make restore` requires typing "RESTORE"101- `make clean` requires typing "YES"102103### Automatic Backups104- Emergency backups created before destructive operations105- Backup rotation (keeps last 10 backups)106- Comprehensive backup manifests with metadata107- Multiple backup formats (SQL, tar.gz, complete bundles)108109### Container Health Checking110- All database operations verify container is running111- Automatic fallback between dev/prod container names112- Clear error messages with resolution suggestions113114## Advanced Development Features115116### Testing and Quality117```bash118make test # Run all tests119make lint # Run linting checks120make format # Format code121make deps # Update dependencies122```123124### System Monitoring125```bash126make status # Comprehensive system status127make logs # Real-time log monitoring128```129130### Cleanup and Maintenance131```bash132make clean # Remove unused Docker resources133make rebuild # Force rebuild all images134make restart # Restart all services135```136137## Helper Scripts Reference138139### Script Locations140All helper scripts are in [scripts/](mdc:scripts/) directory:141142- **[create-admin.sh](mdc:scripts/create-admin.sh)** - Interactive admin user creation143- **[backup.sh](mdc:scripts/backup.sh)** - Complete system backup144- **[restore.sh](mdc:scripts/restore.sh)** - Interactive backup restoration145- **[remove-data.sh](mdc:scripts/remove-data.sh)** - Safe data removal146- **[db-reset.sh](mdc:scripts/db-reset.sh)** - Database reset with verification147148### Script Features149- **Colored Output** - Clear visual feedback with status indicators150- **Input Validation** - Prevents invalid operations151- **Error Handling** - Comprehensive error checking and recovery152- **Safety Confirmations** - Multiple confirmation layers for safety153- **Progress Reporting** - Step-by-step operation feedback154155## Integration with Development Tools156157### File Organization158- **Makefile Commands** - Organized by category with clear descriptions159- **Docker Integration** - Seamless container management160- **Environment Management** - Automatic `.env` file creation161- **Backup Management** - Automated backup rotation and cleanup162163### IDE Integration164- All commands work from terminal in any IDE165- Makefile provides tab completion for commands166- Scripts provide clear error messages and next steps167- Comprehensive help system with `make help`168169## Best Practices170171### Development Session1721. **Always start with** `make status` to check current state1732. **Use** `make backup` before major changes1743. **Monitor with** `make logs` during development1754. **Clean up with** `make down` when finished176177### Database Work1781. **Create backups** before schema changes1792. **Use** `make db-reset` for clean testing environment1803. **Verify changes** with `make status`1814. **Keep emergency backups** for safety182183### Production Deployment1841. **Always backup** production before changes1852. **Test locally** with `make prod`1863. **Monitor deployment** with `make logs`1874. **Verify functionality** with `make status`188189## Troubleshooting190191### Common Issues1921. **"Container not running"** - Run `make up` or `make dev`1932. **"Permission denied"** - Ensure Docker Desktop is running1943. **"Port conflicts"** - Check ports 3000, 8080, 5432 are available1954. **"Database errors"** - Try `make db-reset` for fresh start196197### Recovery Steps1981. Check system status: `make status`1992. View logs: `make logs`2003. Restart services: `make restart`2014. Reset database: `make db-reset`2025. Restore backup: `make restore`
Also in madebyaris/poinf-of-sales
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 |
|---|---|---|---|---|---|
| madebyaris/poinf-of-sales.cursor/rules/admin-interface-patterns.mdc · 118 | Cursor rules | stylearchsecurityapi+2 | 62/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/api-patterns.mdc · 118 | Cursor rules | lint-formatstylesecuritydatabase+3 | 62/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/authentication-and-security-patterns.mdc · 118 | Cursor rules | setupteststylesecurity+4 | 81/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/backend-golang.mdc · 118 | Cursor rules | testlint-formatstylearch+5 | 69/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/business-logic-patterns.mdc · 118 | Cursor rules | teststyledatabaseperformance+1 | 50/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/database-patterns.mdc · 118 | Cursor rules | stylearchtypessecurity+2 | 62/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/docker-deployment.mdc · 118 | Cursor rules | setupbuildteststyle+8 | 77/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/frontend-react.mdc · 118 | Cursor rules | buildtestlint-formatstyle+4 | 69/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/makefile-scripting.mdc · 118 | Cursor rules | setuplint-formatstylearch+2 | 81/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/performance-optimization-patterns.mdc · 118 | Cursor rules | buildteststyledatabase+3 | 66/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/project-architecture.mdc · 118 | Cursor rules | setupteststylearch+6 | 78/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/react-native-mobile-patterns.mdc · 118 | Cursor rules | buildstylearchui+2 | 74/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/role-based-access-patterns.mdc · 118 | Cursor rules | styletypessecuritydatabase+2 | 58/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/tech-debt-prevention.mdc · 118 | Cursor rules | styletesting-strategyui | 50/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/testing-patterns.mdc · 118 | Cursor rules | setupteststylearch+4 | 74/100 | 3 days ago | |
| madebyaris/poinf-of-sales.cursor/rules/user-journey-optimization.mdc · 118 | Cursor rules | styleperformanceagent-behaviour | 50/100 | 3 days ago |
Diff against .cursor/rules/admin-interface-patterns.mdc Diff against .cursor/rules/api-patterns.mdc Diff against .cursor/rules/authentication-and-security-patterns.mdc Diff against .cursor/rules/backend-golang.mdc Diff against .cursor/rules/business-logic-patterns.mdc Diff against .cursor/rules/database-patterns.mdc Diff against .cursor/rules/docker-deployment.mdc Diff against .cursor/rules/frontend-react.mdc Diff against .cursor/rules/makefile-scripting.mdc Diff against .cursor/rules/performance-optimization-patterns.mdc Diff against .cursor/rules/project-architecture.mdc Diff against .cursor/rules/react-native-mobile-patterns.mdc Diff against .cursor/rules/role-based-access-patterns.mdc Diff against .cursor/rules/tech-debt-prevention.mdc Diff against .cursor/rules/testing-patterns.mdc Diff against .cursor/rules/user-journey-optimization.mdc
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 |
