AI-powered security scanning platform that validates AI-generated code, dependencies, and vulnerabilities in real-time. Designed for low false positives (<1%), auto-fixes, and seamless integration into developer workflows.
Fortify addresses the surge in security vulnerabilities from AI-assisted coding by providing specialized scanning, detection, and automated fixing capabilities. As AI tools enable faster coding, they also introduce risks through unreviewed code and risky dependencies. Fortify helps developers and security teams maintain security without slowing down velocity.
- AI-Powered Analysis: Uses Claude Code SDK for intelligent vulnerability detection
- Real-Time Scanning: Integrates into developer workflows with minimal friction
- Auto-Fix Generation: Automatically generates pull requests with security fixes
- Low False Positives: Specialized AI models focused on accuracy (<1% false positive rate)
- Multi-Language Support: JavaScript and Python (MVP), expandable to other languages
- GitHub Integration: Seamless OAuth integration and repository access
Fortify follows a modern microservices architecture with clear separation of concerns:
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
β Frontend β β Scan Agent β β Database β
β (Next.js) βββββΊβ (FastAPI) βββββΊβ (PostgreSQL) β
β β β β β β
β β’ Dashboard β β β’ Job Queue β β β’ Scan Results β
β β’ Scan Reports β β β’ Claude SDK β β β’ Vulnerabilitiesβ
β β’ User Auth β β β’ Git Cloning β β β’ User Data β
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
β
βΌ
ββββββββββββββββ
β Redis β
β (Job Queue) β
ββββββββββββββββ
fortify/
βββ frontend/ # Next.js web application
β βββ src/app/ # App Router pages and API routes
β βββ src/components/# React components and UI
β βββ src/lib/ # Utilities and database client
βββ scan-agent/ # Python FastAPI scanning service
β βββ scan_agent/ # Core scanning logic
β β βββ server.py # FastAPI server
β β βββ workers/ # Background job processing
β β βββ models/ # Data models and types
β β βββ utils/ # Database, queue, and Redis utilities
β βββ tests/ # Unit and integration tests
βββ db/ # Database schema and migrations
β βββ schema.prisma # Prisma schema definition
β βββ migrations/ # Database migration files
βββ specs/ # Architecture and product documentation
βββ architecture/ # Technical specifications
βββ product/ # Product requirements and user flows
- Node.js 18+ and npm/yarn
- Python 3.11+
- PostgreSQL database
- Redis server
- Anthropic API key (for Claude Code SDK)
git clone https://github.com/your-org/fortify.git
cd fortifycd db
npm install
npx prisma generate
npx prisma db push
cd ..cd scan-agent
pip install -r requirements.txt
# Configure environment
cp .env.example .env
# Edit .env with your database URL, Redis URL, and Anthropic API key
# Start the service
python -m scan_agent.servercd frontend
npm install
# Configure environment
cp .env.example .env.local
# Edit .env.local with your database URL and GitHub OAuth credentials
# Start development server
npm run dev- Frontend: http://localhost:3000
- Scan Agent API: http://localhost:8000
- API Documentation: http://localhost:8000/docs
# Backend tests
cd scan-agent
python -m pytest tests/
# Frontend tests
cd frontend
npm testcd db
# Apply migrations
npx prisma db push
# View database
npx prisma studio
# Reset database
npx prisma db reset# Start all services
docker-compose up -d
# View logs
docker-compose logs -fAll architecture and product documentation is stored in the specs/ directory:
mvp.md- Complete MVP architecture and implementation roadmapscanner.md- Scan system architecture and current implementationschema.md- Database schema and data modelsfrontend.md- Frontend architecture and UI specificationsintegrations/github.md- GitHub integration specifications
mvp.md- Product requirements and MVP specificationslanding.md- Landing page requirements and conversion optimizationlogin-flow.md- Authentication flows and user onboardingu/[username]/- User experience flows and wireframes
- Environment variable-based secrets management
- Prisma ORM for SQL injection protection
- Temporary workspace isolation for repository scanning
- GitHub OAuth for secure authentication
- Repository code is cloned to temporary directories and cleaned up
- No code execution - analysis only
- Database operations use parameterized queries
- API endpoints will include authentication in production
- Frontend: Deployed on Vercel/Netlify with Next.js
- Scan Agent: Containerized FastAPI service on AWS/GCP
- Database: Managed PostgreSQL (AWS RDS/Google Cloud SQL)
- Queue: Managed Redis (AWS ElastiCache/Google Memorystore)
# Database
DATABASE_URL=postgresql://user:password@localhost:5432/fortify
# Redis
REDIS_URL=redis://localhost:6379
# Authentication
NEXTAUTH_SECRET=your-secret-key
NEXTAUTH_URL=http://localhost:3000
GITHUB_ID=your-github-oauth-app-id
GITHUB_SECRET=your-github-oauth-app-secret
# AI Integration
ANTHROPIC_API_KEY=your-claude-api-key- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow the coding standards defined in
.cursorrules - Update documentation in
specs/for architectural changes - Add tests for new functionality
- Use TypeScript for frontend code
- Use Python type hints for backend code
This project is proprietary. All rights reserved.
- Documentation: Check the
specs/directory for detailed architecture and product docs - Issues: Create GitHub issues for bugs and feature requests
- Development: See individual component READMEs for detailed setup instructions
Fortify - Securing AI-generated code, one scan at a time. π‘οΈ