AI-Powered No-Code Development Platform
Stryama democratizes software development by enabling anyone to build functional, production-ready applications through natural language prompts. It combines advanced AI code generation with a secure, sandboxed live preview environment, allowing users to create, visualize, and refine full-stack web applications in real-time.
- 💬 Conversational Development: Build apps by describing them in plain English. No coding knowledge required.
- 🤖 Intelligent Code Generation: Powered by Anthropic Claude Code SDK to generate high-quality, modern React/Next.js code.
- 👁️ Live Sandboxed Preview: Instant, secure application previews running in isolated E2B environments.
- 🔄 Iterative Refinement: Refine and modify your application through continuous conversation.
- 🛠️ Modern Tech Stack: Generates production-ready code using Next.js 15+, React 19, Tailwind CSS, and ShadCN/UI.
- 🔐 Enterprise-Grade Security: Integrated Clerk authentication and secure runtime execution.
- 🗄️ Full Persistence: Robust data management with PostgreSQL and Prisma ORM.
Stryama is built on a serverless-first, TypeScript monorepo architecture leveraging the T3 Stack foundation.
- Frontend: Next.js 15+ (App Router), React 19, Tailwind CSS v4, ShadCN/UI
- Backend: tRPC (Type-safe API), Next.js Serverless Functions
- Database: PostgreSQL (via Neon/Supabase), Prisma ORM
- AI Engine: Anthropic Claude Code SDK
- Execution Engine: E2B Sandboxed Environments
- Auth: Clerk
For a deep dive into the system design, please refer to the Architecture Documentation.
- Node.js 18+ and pnpm installed
- PostgreSQL database
- API Keys: Clerk, Anthropic, E2B
-
Clone the repository
git clone <repository-url> cd stryama
-
Install dependencies
pnpm install
-
Environment Setup Copy
.env.exampleto.env.localand configure your keys:cp .env.example .env.local
-
Database Setup
pnpm db:push
-
Run Development Server
pnpm dev
Open http://localhost:3000 to start building.
Stryama uses Vitest for unit testing with a focus on critical business logic and services.
Phase 1 (Current): Critical Services Layer ✅
- ✅ Usage Tracking & Billing Logic (prevents cost overruns)
- ✅ Rate Limiting (prevents API abuse)
- ✅ Model Selection (ensures cost optimization)
- ✅ File Persistence (prevents data loss)
- 95 tests with 100% coverage on critical services
Phase 2 (Planned): API Layer & Integration Tests
- tRPC routers (AI, Project, Subscription, Usage)
- Sandbox Manager & Stream Manager
- Target: 20-30% overall coverage
# Run all tests in watch mode
pnpm test
# Run tests with UI
pnpm test:ui
# Run tests with coverage report
pnpm test:coverage
# Run tests once (CI mode)
pnpm test:ci
# Run tests for changed files only
pnpm test:changedsrc/
├── __tests__/
│ ├── helpers/ # Test utilities
│ │ ├── db.ts # Prisma mocks
│ │ ├── factories.ts # Test data factories
│ │ └── clerk.ts # Auth mocks
│ ├── mocks/ # External service mocks
│ │ ├── e2b.ts # E2B sandbox mocks
│ │ └── anthropic.ts # Claude SDK mocks
│ └── setup.ts # Global test setup
└── lib/
├── services/
│ ├── modelSelection.test.ts # ✅ 29 tests
│ └── usageTracking.test.ts # ✅ 25 tests
└── integrations/
├── claude/
│ └── rateLimiter.test.ts # ✅ 25 tests
└── e2b/
└── utils/
└── file-saver.test.ts # ✅ 16 tests
Tests run automatically on:
- Every commit via pre-commit hooks (changed files only)
- Every pull request via GitHub Actions
- Every push to
mainbranch
See .github/workflows/test.yml for CI configuration.
Coverage reports are generated in the coverage/ directory:
coverage/index.html- Interactive HTML reportcoverage/lcov.info- LCOV format for CI integration
Current thresholds:
- Lines: 3%
- Functions: 4%
- Branches: 3%
- Statements: 3%
Note: Low overall percentage is intentional - we focus on 100% coverage of high-risk business logic rather than 100% coverage of all code. UI components and integration code will be tested via E2E tests.
Stryama is optimized for deployment on Vercel.
- Build command:
pnpm build - Output directory:
.next