Jppl Distributor App
F 48 completed
web_app / typescript · small
80
Files
8,505
LOC
4
Frameworks
7
Languages
Pipeline State
completedRun ID
#1744981Phase
doneProgress
0%Started
2026-05-17 14:01:28Finished
2026-05-17 14:01:28LLM tokens
0Pipeline Metadata
All rows above produced by Repobility · https://repobility.com
Quality Score
F
47.7/100
Structure
47
Code Quality
69
Documentation
35
Testing
0
Practices
56
Security
75
Dependencies
80
Strengths
- Consistent naming conventions (snake_case)
Weaknesses
- No LICENSE file — legal ambiguity for contributors
- No tests found — high risk of regressions
- No CI/CD configuration — manual testing and deployment
- 2 files with critical complexity need refactoring
- 625 duplicate lines detected — consider DRY refactoring
- 1 '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
React Next.js Tailwind CSS Prisma
Symbols
variable412
function173
interface39
constant11
type_alias2
API Endpoints (14)
| Method | Path | Handler | Framework | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Repobility · open methodology · https://repobility.com/research/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | distributorId | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | distributorId | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | distributorId | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | includeInactive | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | isActive | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | isActive | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | levelId | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | limit | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | limit | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | page | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | page | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | schemeId | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | schemeId | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | search | searchParams.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Embed Badge
Add to your README:
