Awesome-omni-skill project-setup
Interactive project setup for new repos using this template. Detects placeholder text in project.mdc, asks about tech stack, recommends skills, and configures the project. Trigger automatically when project.mdc contains "[Project Name]".
git clone https://github.com/diegosouzapw/awesome-omni-skill
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/frontend/project-setup" ~/.claude/skills/diegosouzapw-awesome-omni-skill-project-setup && rm -rf "$T"
skills/frontend/project-setup/SKILL.mdProject Setup Skill
Interactive onboarding flow for new projects created from the ai-project-start template. This skill guides users through configuring their project with the right tech stack and skills.
Trigger Condition
This skill should trigger automatically when:
contains the placeholderproject.mdc[Project Name]
Or when the user explicitly asks to set up their project.
Phase 1: Detection & Welcome
Check for New Project
Read
.cursor/rules/project.mdc and check for placeholder text:
[Project Name] [One-line description of the project] [e.g., Next.js 14 App Router, TypeScript, Tailwind, shadcn/ui]
If placeholders exist, proceed with setup. If project appears configured, ask:
"Your project.mdc appears to be configured. Would you like to reconfigure it, or is there something specific I can help with?"
Welcome Message
👋 Welcome to your new project! Let's get you set up. I'll ask a few questions about what you're building, then recommend skills to import and configure your project.mdc file. This takes about 2 minutes.
Phase 2: Gather Project Info
Ask Questions
Ask these questions one at a time or use the AskQuestion tool:
1. Project Name
What's the name of your project?
2. Description
In one sentence, what are you building?
3. Project Type
What type of project is this?
- Web App (Next.js)
- API Only (NestJS)
- Full Stack (Next.js + NestJS)
- CLI Tool
- Other
4. Dashboard Style (if Web App or Full Stack)
Which dashboard layout do you want to start with?
- SaaS Admin (sidebar nav, user management, billing pages)
- Analytics (charts, metrics, data tables)
- E-commerce (products, orders, inventory)
- Minimal Shell (just auth + empty dashboard skeleton)
5. Database
What database are you using?
- PostgreSQL (Drizzle ORM)
- PostgreSQL (Prisma ORM)
- SQLite
- None / External API only
6. Authentication
How will you handle auth?
- Better Auth
- NextAuth
- External auth service
- None needed yet
7. Deployment
Where will you deploy?
- Railway
- Vercel
- AWS
- Docker / Self-hosted
- Not decided yet
8. State Management (if Web App or Full Stack)
How will you manage frontend state?
- Tanstack Query + Effector
- Zustand
- React state only
9. Task Tracking
Do you use Linear for task tracking?
- Yes
- No / Other
Phase 3: Recommend Skills
Based on answers, recommend skills from the cursor-skills repo.
Skill Recommendation Matrix
| Tech Choice | Recommended Skills |
|---|---|
| Next.js | , |
| NestJS | |
| PostgreSQL + Drizzle | |
| PostgreSQL + Prisma | |
| Better Auth | |
| Railway | |
| Docker | |
| REST API | |
| Tanstack Query + Effector | , |
| Linear tasks | |
| Any frontend project | , , |
| Any project | , , |
Present Recommendations
## Recommended Skills Based on your stack, I recommend importing these skills: **Core (always useful):** - `feature-build` - Complete feature development lifecycle - `documentation` - Project documentation standards - `versioning` - Semantic versioning with CHANGELOG **For your stack:** - `nextjs-16` - Next.js 16 patterns and conventions - `db-postgres` - PostgreSQL with Drizzle ORM - `effector` - Effector state management - `linear` - Linear issue tracking ### How to Import Skills 1. Open Cursor Settings (Cmd+Shift+J) 2. Go to the **Rules** tab 3. Click **Add Rule** → **Remote Rule (GitHub)** 4. Enter: `https://github.com/aussiegingersnap/cursor-skills` 5. Select the skills you want to import The skills will be added to your `.cursor/skills/` directory.
Phase 4: Update project.mdc
Generate Updated Content
Replace placeholders with gathered info:
--- alwaysApply: true --- # {Project Name} NEVER EDIT MY ENV FILES FOR ME, ALWAYS GIVE ME DIRECT INSTRUCTIONS WITH EXAMPLES TO COPY ON WHAT TO EDIT ## What We're Building {Description} ## Tech Stack - **Frontend**: {Frontend stack} - **Backend**: {Backend stack if applicable} - **Database**: {Database choice} - **Auth**: {Auth choice} - **State**: {State management} - **Deploy**: {Deployment target} - **Skills**: Cursor native skills ## Core Constraints - **KISS**: Simplest solution that works - **DRY**: Don't repeat—types in code, schema in migrations, patterns in docs - {Any project-specific constraints} ## Documentation | Doc | Purpose | |-----|---------| | [TASKS.md](../TASKS.md) | Current sprint + backlog | | [CHANGELOG.md](../CHANGELOG.md) | Progress updates | | [docs/architecture.md](../docs/architecture.md) | Technical patterns + decisions | ## Git Standards **Conventional Commits**: `<type>(<scope>): <subject>` Types: `feat`, `fix`, `docs`, `style`, `refactor`, `perf`, `test`, `chore`, `ci`, `build`, `revert` ```bash feat: add user authentication fix(api): handle null response docs: update architecture patterns
Security:
- ❌ Never commit
files or secrets.env - ✅ Secrets in
(gitignored).env.local - ✅
prefix for client-safe varsNEXT_PUBLIC_
Environment
See
.env.example for required variables.
Workflow
When a Cursor plan is complete, provide a summary block for manual git commits:
### Done **Summary**: [Brief description of changes] **Commits** (ohmyzsh): gaa && gcmsg "feat(scope): description" gcmsg "fix(scope): description" gp
User will copy/paste these commands. Lefthook validates commit format and blocks secrets.
### Confirm Before Writing > I'll update your project.mdc with this configuration. Here's a preview: > > [Show key fields] > > Does this look correct? (y/n) --- ## Phase 5: Finalize Setup ### Update Files 1. **Update project.mdc** with gathered configuration 2. **Update TASKS.md** with initial sprint items based on project type 3. **Update README.md** with project name and description ### Completion Message ```markdown ## Setup Complete! 🎉 Your project is configured with: - **Project**: {Name} - **Stack**: {Summary} - **Skills**: {Count} recommended (import via Cursor Settings) ### Next Steps 1. Import recommended skills via Cursor Settings (Cmd+Shift+J → Rules) 2. Configure your `.env.local` based on `.env.example` 3. Start building! Use `/feature-build` to work on tasks ### Quick Commands ```bash # Start dev server npm run dev # Git workflow (ohmyzsh) gaa && gcmsg "feat(scope): description" gp
Happy building!
--- ## Error Handling ### If User Skips Questions Use sensible defaults: - Project Type: Web App - Database: None (can add later) - Auth: None (can add later) - Deploy: Not decided - State: React state only ### If Import Fails Provide manual import instructions: ```bash # Clone cursor-skills and copy desired skills git clone https://github.com/aussiegingersnap/cursor-skills /tmp/cursor-skills cp -r /tmp/cursor-skills/skills/{skill-name} .cursor/skills/
Quick Reference
Minimal Setup Flow
For users who want fast setup:
- "What's your project name and one-line description?"
- "Web app, API, or full stack?"
- Generate config with defaults
- List recommended skills
- Done
Full Setup Flow
For users who want complete configuration:
- All 8 questions
- Detailed skill recommendations with explanations
- Preview and confirm project.mdc
- Update all project files
- Detailed next steps