Transform ideas into complete software projects with AI
π― New to the project? Start with START_HERE.md for a complete getting started guide!
π License Notice: Idem is open source but not for commercial use. You can use it freely for internal purposes, but you cannot sell it or offer it as a paid service. See LICENSE_FAQ.md for details.
Idem is an open-source AI platform that allows you to start from your idea and make it a real project.
You simply write a few lines about what you want to create, and the tool generates your logo, your visual identity, your business plan, your showcase site, and even an application. Then, you have several options to deploy all this easily.
This monorepo workspace is managed with npm workspaces and contains four integrated applications that work together to provide a complete AI-powered development experience.
All features are powered by AI, generating the following software development lifecycle elements:
- Business Plan Generation: AI creates comprehensive business plans tailored to your software project
- Branding & Design: AI designs logos and complete brand style guides based on your requirements
- UML Analysis: AI develops detailed UML diagrams and system architecture documentation
- Interactive Diagram Editor: Edit and preview flowcharts, sequence diagrams, and Gantt charts in real-time
- Landing Page Creation: AI designs responsive landing pages for your application
- Project Generation: AI builds full software projects based on your specifications
- Documentation: AI generates comprehensive technical documentation for your software
- Deployment Management: AI streamlines the deployment process across different environments
This monorepo contains four main applications:
| Project | Framework | Description | Port |
|---|---|---|---|
| idem-ai | Angular 20 | Main AI-powered SDLC generation application | 4200 |
| idem-ai-chart | Svelte 5 | Interactive Mermaid diagram editor module | 5173 |
| idem-appgen | React/Next.js | AI-powered application generator | 3000 |
| idem-api | Express/TypeScript | Backend API for AI services and data management | 3001 |
The main frontend application providing the complete AI-powered software development lifecycle experience. Built with Angular 20, it offers an intuitive interface for generating business plans, branding, UML diagrams, and complete project structures.
A specialized diagram editor module built with Svelte 5 and Mermaid.js. Provides real-time editing, preview, and sharing capabilities for flowcharts, sequence diagrams, and other visual representations of software architecture.
An AI-powered application generator that supports browser-based debugging with WebContainer, high-fidelity design restoration (90% accuracy), and integration with WeChat Mini Program Developer Tools. Supports existing project imports for secondary editing.
The backend API built with Express.js and TypeScript. Integrates with Firebase/Firestore for data storage, Google's Gemini and OpenAI for AI generation, and implements a flexible repository pattern for database abstraction.
- npm workspaces - Native monorepo management
- Angular 20 - Main frontend framework
- Svelte 5 - Reactive framework for diagram editor
- React 18 / Next.js - Application generator framework
- Express - Backend API framework
- TypeScript - Primary language across all projects
- TailwindCSS - Utility-first CSS framework
- Mermaid.js - Diagram generation and rendering
- Firebase/Firestore - Data storage and authentication
- AI Services - Google Gemini & OpenAI integration
- Node.js >= 18.0.0 (Download)
- npm >= 9.0.0 (included with Node.js)
- pnpm >= 8.15.4 (for idem-ai-chart and idem-appgen)
- Git for version control
# Clone the repository
git clone <repository-url>
cd idem
# Run the setup script
chmod +x scripts/setup.sh
./scripts/setup.sh# Clone the repository
git clone <repository-url>
cd idem
# Install workspace dependencies
npm install
# Install project-specific dependencies
cd apps/idem-ai && npm install && cd ../..
cd apps/idemAI-api && npm install && cd ../..
cd apps/idem-ai-chart && pnpm install && cd ../..
cd apps/idem-appgen && pnpm install && cd ../..# Run individual projects
npm run dev:ai # Angular application (http://localhost:4200)
npm run dev:chart # Svelte diagram editor (http://localhost:5173)
npm run dev:appgen # React app generator (http://localhost:3000)
npm run dev:api # Express API (http://localhost:3001)
npm run dev:ai # Launch idem-ai
npm run dev:chart # Launch idem-ai-chart
npm run dev:appgen # Launch idem-appgen
npm run dev:api # Launch idem-apinpm run build:ai # Build idem-ai
npm run build:chart # Build idem-ai-chart
npm run build:appgen # Build idem-appgen
npm run build:api # Build idem-api
npm run build:all # Build all projectsnpm run test:all # Test all projects
npm run lint:all # Lint all projects
npm run lint:fix # Auto-fix linting errors
npm run format # Format code with Prettier
npm run format:check # Check code formattingnpm run clean # Clean all projectsidem/
βββ apps/
β βββ idem-ai/ # Angular application
β β βββ src/
β β βββ package.json
β βββ idem-ai-chart/ # Svelte application
β β βββ src/
β β βββ package.json
β βββ idem-appgen/ # React applications
β β βββ apps/
β β β βββ we-dev-next/
β β β βββ we-dev-admin/
β β β βββ we-dev-client/
β β βββ package.json
β βββ idemAI-api/ # Express API
β βββ api/
β βββ package.json
βββ scripts/
β βββ setup.sh # Installation script
β βββ clean.sh # Cleanup script
βββ documentation/
β βββ INSTALLATION.md # Detailed installation guide
β βββ NPM_WORKSPACES_GUIDE.md # npm workspaces guide
βββ package.json # Workspace dependencies
βββ tsconfig.base.json # Shared TypeScript config
βββ .eslintrc.json # Shared ESLint config
βββ .prettierrc # Prettier configuration
Idem uses an intelligent deployment system that automatically detects which applications have been modified and deploys only those applications. This saves time and resources by avoiding unnecessary deployments.
When you push to main, dev, or master branches:
- π Detection: The system automatically detects which apps in
/appshave changes - π Selective Deploy: Only modified applications are deployed
- π Summary: A deployment summary shows which apps were deployed and which were skipped
# Only modify the API
git add apps/api/src/
git commit -m "feat: add new endpoint"
git push origin dev
# Result: Only the API is deployed β
For more details, see documentation/SMART_DEPLOY.md
git clone <repository-url>
cd idem
npm install# Create a feature branch
git checkout -b feature/my-feature
# Launch the project
npm run dev:ai
# Make your changes...# Lint and format
npm run lint:all
npm run format
# Test
npm run test:all
# Build
npm run build:allgit add .
git commit -m "feat: add my new feature"
git push origin feature/my-feature| Script | Description |
|---|---|
dev:* |
Launch a project in development mode |
build:* |
Build a project |
test:* |
Test one or multiple projects |
lint:* |
Lint the code |
format |
Format code with Prettier |
clean |
Clean builds |
# Run a command in a specific workspace
npm run <script> --workspace=<workspace-name>
# Run a command in all workspaces
npm run <script> --workspaces --if-present
# Install a dependency in a specific workspace
npm install <package> --workspace=<workspace-name>
# List all workspaces
npm ls --workspaces- QUICKSTART.md - Quick start guide
- documentation/README.md - Documentation index
- documentation/SMART_DEPLOY.md - Smart Deploy system guide
- documentation/NPM_WORKSPACES_GUIDE.md - npm workspaces guide
- apps/idem-ai/README.md - idem-ai documentation
- apps/idem-ai-chart/README.md - idem-ai-chart documentation
- apps/idem-appgen/README.md - idem-appgen documentation
- apps/idemAI-api/README.md - idem-api documentation
rm -rf node_modules package-lock.json
npm installnpm run clean
npm run build:all./scripts/clean.sh
./scripts/setup.shWe welcome contributions! Please follow these steps:
- Fork the project
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'feat: Add AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Commits: Follow Conventional Commits
feat:- New featuresfix:- Bug fixesdocs:- Documentation changeschore:- Maintenance tasks
- Branches:
feature/*,fix/*,chore/*,docs/* - Code Style: ESLint + Prettier (pre-configured)
This project is licensed under the Apache License 2.0 with Commons Clause - see the LICENSE file for details.
β You CAN:
- Use Idem for internal purposes in your organization
- Install Idem on your own servers
- Create projects for your clients using Idem
- Modify and distribute Idem for non-commercial purposes
- Study and learn from the source code
β You CANNOT:
- Sell Idem as a product or service
- Offer Idem as a hosted SaaS service
- Provide paid consulting/support services based on Idem
- Use the "Idem" brand to sell services without permission
- Commercialize Idem or derivative works
For commercial licensing inquiries, please contact the maintainers.
- arolleaguekeng - API & Backend Development
- Idem Team
- npm - Package management and workspaces
- Angular - Frontend framework
- Svelte - Reactive framework
- Mermaid.js - Diagram generation
- Firebase - Backend services
- All contributors and supporters
- npm Workspaces Documentation
- Angular Documentation
- Svelte Documentation
- Mermaid Documentation
- React Documentation
- Next.js Documentation
Built with β€οΈ by the Idem team
Making software development accessible to everyone through AI