Dander
D 52 completed
Other
monorepo / javascript · small
164
Files
29,400
LOC
2
Frameworks
8
Languages
Pipeline State
completedRun ID
#1535862Phase
doneProgress
0%Started
2026-04-16 16:50:20Finished
2026-04-16 16:50:20LLM tokens
0Pipeline Metadata
Stage
SkippedDecision
skip_scaffold_dupNovelty
50.00Framework unique
—Isolation
—Last stage change
2026-04-16 18:15:42Deduplication group #49779
Repobility — the code-quality scanner for AI-generated software · https://repobility.com
🧪 Code Distillation
Browse all specs →AI Prompt
Create a full-stack monorepo structure for a platform called Dander. It needs a Node.js/Express backend that handles REST APIs, supports Socket.IO for real-time communication, and uses PostgreSQL via `pg`. The frontend should be split into three distinct React applications: one for end users, one for business owners, and one for platform admins. I also need a shared utility package. Please ensure the setup includes instructions for running everything in development mode, ideally using `concurrently`.
javascript typescript react express node.js monorepo postgresql socket.io frontend backend
Generated by gemma4:latest
Catalog Information
Create a full-stack monorepo structure for a platform called Dander. It needs a Node.js/Express backend that handles REST APIs, supports Socket.IO for real-time communication, and uses PostgreSQL via pg. The frontend should be split into three distinct React applications: one for end users, one for business owners, and one for platform admins. I also need a shared utility package. Please ensure the setup includes instructions for running everything in development mode, ideally using `concurren
Tags
javascript typescript react express node.js monorepo postgresql socket.io frontend backend
Quality Score
D
51.6/100
Structure
39
Code Quality
76
Documentation
57
Testing
0
Practices
58
Security
75
Dependencies
90
Strengths
- Containerized deployment (Docker)
Weaknesses
- No LICENSE file — legal ambiguity for contributors
- No tests found — high risk of regressions
- No CI/CD configuration — manual testing and deployment
- 3 files with critical complexity need refactoring
- 1910 duplicate lines detected — consider DRY refactoring
- 2 'god files' with >500 LOC need decomposition
Recommendations
- Add a test suite — start with critical path integration tests
- Set up CI/CD (GitHub Actions recommended) to automate testing and deployment
- Add a linter configuration to enforce code style consistency
- Add a LICENSE file (MIT recommended for open source)
Languages
Frameworks
Express Vite
Symbols
variable911
function511
constant92
API Endpoints (98)
| Method | Path | Handler | Framework | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Repobility — same analyzer, your code, free for public repos · /scan/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/businesses | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/export/profit | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/map | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/offers | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/reports | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/reports/profit | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| PUT | /api/admin/settings | client.put | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/settings | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/stats | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/stats/profit | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/stats/profit/chart | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/admin/users | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/admin/users/admin | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/business/register | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/business/register | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/forgot-password | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/login | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/login | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/login | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/login/verify | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/login/verify | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/login/verify | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/refresh | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/refresh | axios.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/refresh | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/register | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/resend-otp | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/resend-otp | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/reset-password | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/verify-2fa | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/auth/verify-2fa | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/business/dashboard | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/business/dashboard/roi | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| PUT | /api/business/hours | client.put | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/business/hours | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/business/hours/special | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/business/me | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| PUT | /api/business/me | client.put | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/business/offers | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/business/offers | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/business/offers | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/business/reports/profit | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/business/reports/profit/csv | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/business/staff | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/business/staff | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/coupons/generate | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/coupons/mine | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/coupons/redeem | client.post | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/offers/nearby | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/offers/saved | client.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Showing 50 of 98
Repobility · severity-and-effort ranking · https://repobility.com
Embed Badge
Add to your README:
BinComp Dependency Hardening
All packages →1 of this repo's dependencies have been scanned for binary hardening. Grade reflects RELRO / stack canary / FORTIFY / PIE coverage.