ArchSpec is an AI-powered software specification system that transforms the software development process by creating comprehensive, implementation-ready specifications before any code is written.
ArchSpec is currently in early access. The core functionality is working, while more advanced features are under active development.
- ✅ User signup and authentication
- ✅ Project management (create/update/delete)
- ✅ All major specification sections:
- Requirements
- Features
- Pages/UI
- Data Model
- API Endpoints
- Test Cases
- ✅ Preview and file export (markdown) of each specs section
- ✅ Download All (zip) of complete specifications
- ✅ One project template (more coming soon)
- ✅ Manual data entry for all specification sections
- ✅ LemonSqueezy payment integration
- ✅ AI credit-based enhancement plan
- ⏳ Optimized AI calls (batching) for efficiency and error handling
- ⏳ Intelligent knowledge graphs for "gaps" detection
- ⏳ Implementation sequence generator
- ⏳ Additional project templates
ArchSpec streamlines the process of creating comprehensive software specifications before writing any code. Here's how to use it:
After logging in, you'll be presented with a dashboard showing:
- Quick stats about your projects and available templates
- Recommended templates for different types of applications
- Your recently created projects
- Quick access buttons to create new projects or browse templates
-
Start a New Project: Click the "New Project" button from the dashboard.
-
Choose a Starting Point:
- From Template: Select from pre-built application templates (web apps, mobile apps, etc.)
- Blank Project: Start from scratch with a clean slate
-
Define Project Basics (Required):
- Project name
- Description
- Goals and objectives
- Target audience
-
Build Your Specification: Once you've saved the project basics, you can define all aspects of your application:
- Requirements: Define functional and non-functional requirements
- Features: Outline core modules and functionality
- UI Design: Specify design system, color palette, and typography
- Tech Stack: Define frontend, backend, database technologies
- Pages: Design the navigation structure and page layouts
- Data Model: Define entities, relationships, and database schema
- API Endpoints: Document REST/GraphQL endpoints with parameters
- Test Cases: Create Gherkin-style test scenarios
- Implementation Prompts: Define prompts for AI-assisted implementation
Note: Each section can be expanded/collapsed as needed, and you can complete them in any order.
Templates provide pre-configured specifications for common application types:
- Browse available templates from the dashboard or templates page
- Preview template details including tech stack and features
- Select "Use This Template" to create a new project with pre-filled specifications
- Customize any aspect of the template to match your specific needs
After defining your specifications:
- Navigate to your project details
- Export individual sections as Markdown files
- Or download the complete specification as a ZIP archive
- Use the exported specifications to guide your development process
From the dashboard, you can:
- View all your existing projects
- Resume work on partially completed specifications
- Update existing specifications as requirements evolve
- Duplicate projects to create variations
- Delete projects you no longer need
There are two ways to use ArchSpec:
Sign up at archspec.dev to use the hosted version without any setup.
- Basic features available for free
- Subscribe to access AI-powered features
- Be among the first to try new features
Clone and self-host the application with complete control over your data.
- Full customization options
- Unlimited projects and specifications
- Requires your own AI API keys for AI features
- Self-hosting instructions available below
- Complete Specification: Define all aspects of software before implementation
- Implementation Independence: Provide sufficient detail for any competent developer
- Testability By Design: Integrate testing strategy from the beginning
- Architectural Integrity: Adhere to proven software patterns and principles
- Contextual Continuity: Allow development to pause/resume without context loss
ArchSpec consists of four primary subsystems:
- User Interface Layer: Structured input collection with wizard-like progression
- AI Processing Core: Specification generation and refinement engine
- Specification Repository: Storage and version control for artifacts
- Export & Integration System: Format specifications for development tools
- Frontend: React with TypeScript
- Backend: Python FastAPI
- AI Integration: OpenAI GPT or equivalent LLM
- Database: MongoDB
- Diagramming: Mermaid.js
- Version Control: Git-based approach
- Requirements Management
- Architecture Specification
- Data Design
- API Design
- User Interface Design
- Testing Framework
- Implementation Planning
- Node.js (v20+) with pnpm for frontend development
- Python 3.12+ with uv for backend development
- MongoDB (local instance or containerized for development)
- Firebase project with Authentication configured
See dev-scripts-README.md for detailed development setup instructions.
This project uses Firebase Authentication. For authentication setup details, see README-firebase-auth.md.
This project uses LemonSqueezy for payment and subscription management. For payment integration setup details, see README-lemonsqueezy.md.
The application is deployed using:
- Database: MongoDB Atlas
- Backend: fly.io
- Frontend: Vercel
For local development, a Docker Compose file is provided for running MongoDB.
This project is licensed under the MIT License - see the LICENSE file for details.
For questions about the hosted early access version or to provide feedback, please reach out:
- GitHub Issues: Open an issue
- YouTube: @aidrivencoder
The application is under active development. Contributors welcome!