sparkseed
v1.0.0
Published
Interactive CLI that generates complete project boilerplates with PRD, Design System and architecture
Maintainers
Readme
🌱 SparkSeed CLI
Interactive CLI that generates complete project boilerplates with PRD, Design System, Architecture, and more!
✨ Features
📋 Documentation Generation
- PRD (Product Requirements Document) - Complete product specifications
- Design System - Colors, typography, components, accessibility guidelines
- Architecture Documentation - Project structure and best practices
- API Documentation - OpenAPI/Swagger specification
- QA Guide - Testing and quality assurance guidelines
- Accessibility Guide - WCAG compliance
- AI Agent Guide - Guide for AI assistants working on the code
- Release Checklist - Pre-release and deployment checklist
- Domain Model - Entity relationship documentation
- Screen Map - Navigation structure
🛠️ Technology Support
Frontend Frameworks
- ⚛️ React
- ⚡ Next.js
- 🔷 Vue.js
- 🎯 Nuxt.js
- 📐 Angular
- 🚀 Svelte
Backend Frameworks
- 🟢 Node.js + Express
- ⚡ Fastify
- 🐍 Python + FastAPI
- 🐍 Django
- ☕ Spring Boot
ORMs (6 Options!)
- 🔷 Prisma - Type-safe, modern
- ⚡ Drizzle - Lightweight, fast
- 🔄 Sequelize - Classic, mature
- 📦 TypeORM - Decorators, enterprise
- 🍃 Mongoose - MongoDB ODM
- 🔨 Knex.js - SQL query builder
Databases
- 🐘 PostgreSQL
- 🦆 MySQL
- 🔷 SQLite
- 🍃 MongoDB
- 🔴 Redis (cache/session)
- 🔺 Supabase
🤖 AI Integration
Three powerful AI commands:
# Chat about your project
sparkseed ai:chat
# Explain code
sparkseed ai:explain [file]
# Get refactoring suggestions
sparkseed ai:refactor [file]Supported LLMs:
- OpenAI (GPT-4, GPT-3.5)
- Anthropic Claude
- Ollama (local models)
🔌 Plugin System
Extend sparkseed with official plugins:
# List available plugins
sparkseed plugins:list
# Install a plugin
sparkseed plugins:install @sparkseed/plugin-graphql
# Uninstall a plugin
sparkseed plugins:uninstall @sparkseed/plugin-graphql
# View plugin info
sparkseed plugins:info @sparkseed/plugin-graphqlOfficial Plugins:
@sparkseed/plugin-graphql- GraphQL support@sparkseed/plugin-websocket- WebSocket support@sparkseed/plugin-i18n- Internationalization@sparkseed/plugin-analytics- Analytics integration@sparkseed/plugin-payment- Payment processing (Stripe)
🚀 Deploy & DevOps
Deploy Templates:
- Vercel
- Netlify
- Railway
- Render
- Docker
Monitoring Integration:
- Sentry (error tracking)
- Datadog (APM)
- New Relic
- Prometheus + Grafana
🎨 UI Options
- Tailwind CSS
- Styled Components
- Emotion
- Chakra UI
- SCSS/SASS
- Plain CSS
📦 Additional Features
- ✅ CI/CD with GitHub Actions
- ✅ Storybook for components
- ✅ Load testing with k6
- ✅ Accessibility testing with axe-core
- ✅ SonarQube integration
- ✅ Internationalization (EN/PT/ES)
- ✅ User Journeys documentation
- ✅ Screen Map documentation
📦 Installation
From npm (Recommended)
# Install globally
npm install -g sparkseed
# Or use with npx (no installation required)
npx sparkseed --helpFrom Source
# Clone the repository
git clone https://github.com/yourusername/sparkseed.git
cd sparkseed
# Install dependencies
npm install
# Build the project
npm run build
# Link globally (optional)
npm link🚀 Usage
Interactive Mode
# Start interactive CLI
sparkseed create
# Or create in a specific directory
sparkseed create my-awesome-projectCommands
# Create a new project
sparkseed create [directory]
# Generate a React component
sparkseed generate:component
# Generate a page
sparkseed generate:page
# Generate a backend resource
sparkseed generate:resource
# AI Commands
sparkseed ai:chat # Chat about your project
sparkseed ai:explain [file] # Explain code
sparkseed ai:refactor [file] # Get refactoring suggestions
# Plugin Commands
sparkseed plugins:list # List available plugins
sparkseed plugins:install # Install a plugin
sparkseed plugins:uninstall # Uninstall a plugin
sparkseed plugins:info # View plugin info
# Help
sparkseed --help
sparkseed [command] --help📋 Interactive Flow
When you run sparkseed create, you'll be asked:
- Language - Choose CLI language (EN/PT/ES)
- Project Name - Your project name
- Description - Brief project description
- Project Type - Web, Mobile, Desktop, API, or Fullstack
- Framework - Choose your preferred framework
- Language - TypeScript or JavaScript
- Styling - CSS approach (Tailwind, SCSS, etc.)
- Database - Choose database (if applicable)
- ORM - Choose ORM (Prisma, Drizzle, Sequelize, TypeORM, Mongoose, Knex)
- Authentication - Include auth system?
- Features - Select desired features
- Pages - List of pages
- Components - Common components needed
- Domain Entities - Define your data models
- User Journeys - Define business flows
- Screen Map - Define navigation structure
- API Endpoints - Define API endpoints
- Color Palette - Primary, secondary, accent colors
- Typography - Font families and sizes
- Global State - Zustand, Redux Toolkit, or none
- Locale - Primary locale for formatting
📁 Generated Structure
my-project/
├── docs/
│ ├── PRD.md # Product Requirements
│ ├── DESIGN_SYSTEM.md # Design System
│ ├── ARCHITECTURE.md # Architecture Guide
│ ├── API.md # API Documentation
│ ├── QA_GUIDE.md # QA Guidelines
│ ├── ACCESSIBILITY.md # Accessibility Guide
│ ├── AGENT_GUIDE.md # AI Agent Guide
│ ├── RELEASE_CHECKLIST.md # Release Checklist
│ ├── DOMAIN_MODEL.md # Domain Model (if defined)
│ ├── SCREENS_MAP.md # Screen Map (if defined)
│ └── openapi.json # OpenAPI Spec (if API enabled)
├── src/
│ ├── components/ # Reusable components
│ ├── pages/ # Application pages
│ ├── hooks/ # Custom hooks
│ ├── context/ # React contexts
│ ├── services/ # API services
│ ├── styles/ # Global styles
│ ├── types/ # TypeScript types
│ ├── utils/ # Utility functions
│ └── assets/ # Images, icons, fonts
├── .github/
│ └── workflows/
│ └── ci-cd.yml # CI/CD pipeline
├── tests/
│ ├── e2e/ # E2E tests (Playwright)
│ └── unit/ # Unit tests (Vitest)
├── load-tests/
│ └── script.js # k6 load tests
├── .storybook/ # Storybook config
├── package.json
├── tsconfig.json
├── vite.config.ts
├── README.md
└── DEPLOY.md # Deployment guide🎯 Examples
Create a Fullstack App
sparkseed create my-fullstack-app
# Follow interactive prompts
# Select: Fullstack → React → TypeScript → Tailwind → PostgreSQL → PrismaGenerate a Component
cd my-fullstack-app
sparkseed generate:component
# Follow prompts to create component with styles and testsUse AI to Explain Code
export OPENAI_API_KEY=sk-...
sparkseed ai:explain src/components/Button.tsxInstall a Plugin
sparkseed plugins:install @sparkseed/plugin-graphql⚙️ Configuration
Environment Variables
# AI Configuration
export OPENAI_API_KEY=sk-... # OpenAI API key
export ANTHROPIC_API_KEY=sk-ant-... # Anthropic API key
export SPARKSEED_CLI_LANG=en # CLI language (en/pt/es)
# For Ollama (local models)
export OLLAMA_BASE_URL=http://localhost:11434sparkseed.config.json
{
"name": "my-project",
"version": "1.0.0",
"plugins": {
"enabled": ["@sparkseed/plugin-graphql"],
"options": {
"@sparkseed/plugin-graphql": {
"graphqlPath": "/graphql",
"playground": true
}
}
}
}🧪 Testing
# Run unit tests
npm test
# Run with coverage
npm run test:coverage
# Run E2E tests
npm run test:e2e
# Run load tests
npm run test:load📚 Documentation
After creating a project, check these files:
docs/PRD.md- Product requirementsdocs/DESIGN_SYSTEM.md- Design guidelinesdocs/ARCHITECTURE.md- Architecture overviewdocs/AGENT_GUIDE.md- Guide for AI assistantsdocs/RELEASE_CHECKLIST.md- Pre-release checklistDEPLOY.md- Deployment guide
🤝 Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Development
# Install dependencies
npm install
# Build
npm run build
# Run in development mode
npm run dev
# Run tests
npm test
# Lint
npm run lint
# Format
npm run format📄 License
MIT License - see LICENSE file for details.
🙏 Acknowledgments
Built with ❤️ using:
📞 Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Twitter: @yourusername
Happy Coding! 🌱
