8 Days Sprint Plan for Karen & Juan
Build SIGIL Lite โ A static repository scanner that detects malicious patterns in GitHub repos without executing code, with a clean UI and demo-ready presentation.
What we're NOT doing in this MVP:
- โ Sandbox execution (Docker/QEMU)
- โ Dynamic code analysis
- โ Network traffic capture
- โ SAST tools integration (Slither, Mythril)
- โ MISP threat intelligence
- โ Complete MITRE ATT&CK mapping
What we ARE doing:
- โ Static file analysis
- โ Heuristic pattern detection
- โ Risk scoring system
- โ Clean web interface
- โ AI-powered summaries
- โ Demo repositories
- โ Professional documentation
Focus: User experience, visual design, integration, and demo preparation
Responsibilities:
- Landing page design and implementation
/scanpage with results display- UI components (loading states, error handling, risk badges)
- Frontend-API integration
- Demo repositories creation
- Pitch deck and video
- GitBook documentation design
Focus: Analysis engine, heuristics, API, and security measures
Responsibilities:
- Core scanner implementation (
@sigil/core) - Heuristic rules and pattern detection
- Risk scoring algorithm
- API endpoints (Express)
- Security validation and protections
- Testing with malicious patterns
- Technical documentation
- Polish landing page UI
- Hero section with SIGIL branding
- Features overview
- Call-to-action to scan page
- Improve
/scanpage structure- URL input with validation
- Loading animation (arcane-themed)
- Error state handling
- Create reusable UI components:
-
RiskBadgecomponent (LOW/MEDIUM/HIGH) -
FindingCardcomponent -
LoadingSpinnercomponent -
ErrorAlertcomponent
-
- Set up API integration layer
- Create API client (
lib/api.ts) - Handle fetch errors
- Type definitions for responses
- Create API client (
- Implement core scanner foundation (
packages/core/src/scanner.ts)-
scanRepository(repoUrl: string)function - GitHub API integration (read-only)
- Repository validation (size limits, URL format)
-
- Build initial heuristics:
- Parse
package.json - Detect suspicious scripts:
-
postinstallwith curl/wget -
preinstallwith network calls -
installwith chmod/rm commands
-
- Check for dangerous files:
-
.env,.pem,id_rsa -
.ps1,.batscripts -
wallet,mnemonicpatterns
-
- Parse
- Create finding types and severity levels
- Initial risk scoring logic
- Build results display UI
- Risk level indicator (color-coded)
- Findings list with expandable details
- File path highlighting
- Severity badges per finding
- Add animations and transitions
- Scan progress animation
- Results fade-in effect
- Hover states for findings
- Implement responsive design
- Mobile layout
- Tablet optimization
- Create "Coming Soon" UI elements
- "Mint SIGIL Seal" placeholder button
- Web3 features teaser section
- Implement risk scoring algorithm
-
computeRisk(findings)function - Weight findings by severity
- Calculate 0-100 score
- Map to LOW/MEDIUM/HIGH
-
- Add advanced heuristics:
- Dependency analysis (typosquatting detection)
- Entropy scanner for secrets
- Base64 strings
- Hex patterns
- High-entropy text
- Obfuscation detection
- Binary file detection in unexpected locations
- Build API endpoint
-
POST /scaninapps/api/src/index.ts - Input validation
- Error handling
- Response formatting
-
- Full frontend-backend integration
- Connect scan page to API
- Test all user flows
- Handle edge cases
- Add AI summary section to UI
- Display AI-generated explanation
- "Why this is dangerous" section
- "What to review" recommendations
- Create demo repositories:
-
sigil-demo-clean(safe repo) -
sigil-demo-suspicious(medium risk) -
sigil-demo-malicious(high risk)
-
- Add legal disclaimers
- "Static analysis only"
- "Not a guarantee of safety"
- "Educational purposes"
- Backend testing with demo repos
- Test against clean repository
- Test against suspicious patterns
- Test against malicious code
- Handle edge cases:
- Private repositories (error handling)
- Empty repositories
- Repositories without package.json
- Very large repositories (size limits)
- Invalid URLs
- Implement rate limiting
- Add request validation middleware
- Security hardening:
- Prevent path traversal
- Sanitize inputs
- Set timeouts
- Final UI polish
- Consistency check across pages
- Typography refinement
- Color scheme consistency
- Icon usage
- Record demo video
- Show scan flow
- Demonstrate all risk levels
- Highlight key features
- Prepare pitch deck
- Problem statement
- Solution (SIGIL)
- Demo screenshots
- Roadmap slide
- Team slide
- GitBook content:
- Home page
- MVP features
- Future roadmap (SIGIL Pro)
- SIGIL Seal concept
- Use cases
- Write technical documentation
- API documentation
- Heuristics explanation
- Risk scoring methodology
- Security measures
- Create architecture diagram
- Document future architecture (SIGIL Pro)
- Sandbox execution plans
- SAST integration
- MISP threat intel
- MITRE ATT&CK mapping
- Code cleanup and comments
- Add inline documentation
- Final security review
- End-to-end testing
- Bug fixes
- Performance check
- Documentation review
- Pitch rehearsal
- Video editing final touches
- Submission preparation
- Backup all materials
Permanent Branches:
mainโ Production-ready code only (for final demo)devโ Current development branch (daily merges)
Feature Branches:
Juan's branches:
feat/core-scannerfeat/heuristics-enginefeat/risk-scoringfeat/api-endpoints
Karen's branches:
feat/landing-pagefeat/scan-uifeat/results-displayfeat/demo-repos
- Never commit directly to
mainordev - All changes via Pull Requests (PR)
- Each PR must:
- Focus on one feature/fix
- Include description of changes
- Include screenshots (if UI)
- Be reviewed by the other team member
- Pass any basic checks
- PR naming:
feat: add risk badge componentfix: handle empty repository errordocs: update API documentation
type(scope): short description
Examples:
- feat(core): add entropy scanner for secrets
- fix(api): handle invalid GitHub URLs
- style(ui): improve loading animation
- docs(readme): update installation steps
- test(core): add heuristics test cases
Every day at agreed time:
- Quick standup (5-10 min):
- What I did yesterday
- What I'm doing today
- Any blockers
- Merge latest
devinto your feature branch - Resolve conflicts together if needed
- Create PRs for completed features
- Review each other's PRs
Columns:
- ๐ TODO โ Tasks not started
- ๐ IN PROGRESS โ Currently working on
- ๐ REVIEW โ PR created, waiting for review
- โ DONE โ Merged to dev
Labels:
frontendโ UI/UX workbackendโ API workcoreโ Scanner enginesecurityโ Security-relateddocsโ Documentationbugโ Something brokenenhancementโ Improvementdemoโ Demo preparationhigh-priorityโ Must have for MVP
- Never execute code from analyzed repositories
- Always validate inputs before processing
- Keep scope limited to MVP features
- Document decisions and trade-offs
- Test with demo repos frequently
- Don't wait for perfect API โ use mock data to develop UI
- Create TypeScript types for API responses early
- Keep components small and reusable
- Test on different screen sizes
- Save design decisions (colors, fonts, spacing)
- Prioritize safety over complexity
- Log everything during scanning
- Set strict limits (file size, processing time)
- Never trust repository content
- Document each heuristic rule clearly
By Day 8, we must have:
โ Working web application
- Landing page loads
- Scan page accepts GitHub URLs
- Results display correctly
- All states work (loading, error, success)
โ Functional backend
- API responds to scan requests
- Core scanner analyzes repositories
- Risk scoring works
- Findings are accurate
โ Demo ready
- 3 test repositories (clean, suspicious, malicious)
- Video demonstration recorded
- Pitch deck completed
- GitBook published
โ Documentation
- README.md professional
- CONTRIBUTING.md clear
- Technical docs complete
- Architecture explained
- Quick text updates on progress
- Blockers immediately communicated
- PR reviews within 4 hours
- GitHub Issues for task tracking
- GitHub PRs for code review
- GitHub Discussions for decisions
- Chat/Discord for quick questions
Karen will learn:
- Complex state management in Next.js
- API integration patterns
- Security UI/UX best practices
- Demo and pitch preparation
Juan will learn:
- Static analysis techniques
- Heuristic rule design
- API security hardening
- Security documentation
This MVP is the foundation for SIGIL Pro, which will include:
- ๐ณ Sandbox execution (Docker/QEMU)
- ๐ SAST integration (Slither, Semgrep, Mythril)
- ๐ MISP threat intelligence
- ๐บ๏ธ Full MITRE ATT&CK mapping
- โ๏ธ On-chain verification (SIGIL Seal)
- ๐ค Team collaboration features
- ๐ CI/CD integration
- ๐ Advanced analytics
Keep this vision in mind while building, but stay focused on delivering a solid, working MVP first.
Let's build something amazing together.