3 views
nab138/iloader
User friendly sideloader
TypeScript★ 3,130+209 that day#3 on trending
3.16%duplicated code · 187 of 5,920 lines
16clones in code
43code files of 91 scanned
1.26%duplicated over all files · 16 clones
The code number leaves out tests, fixtures, docs, examples, data files, styles, translations and vendored code.
Largest clones in the code
- 15 lines in 2 placesrust99 tokens
347); 348 349let (generated_plist, generated_bytes) = tokio::select! { 350 _ = cancel.cancelled() => { 351 return Err(AppError::Canceled("Pairing".into())); 352 } 353 res = generate_rppairing_plist(&provider) => { 354 res.map_err(|e| AppError::RemotePairing(e.to_string()))? 355 } 356};First 10 of 15 lines.
- 17 lines in 2 placesrust92 tokens
453let provider = get_provider(&device.info).await?; 454let mut installation_proxy = 455 InstallationProxyClient::connect(&provider) 456 .await 457 .map_err(|e| { 458 AppError::DeviceComsWithMessage( 459 "Failed to connect to installation proxy".into(), 460 e.to_string(), 461 ) 462 })?;First 10 of 17 lines.
- 9 lines in 2 placesrust80 tokens
51let store = handle 52 .store("data.json") 53 .map_err(|e| AppError::Misc(format!("Failed to get store: {:?}", e)))?; 54let mut existing_ids = store 55 .get("ids") 56 .unwrap_or_else(|| Value::Array(vec![])) 57 .as_array() 58 .cloned() 59 .unwrap_or_else(std::vec::Vec::new);
7 more
- 13 lines in 2 placesrust71 tokens
- 10 lines in 2 placestsx71 tokens
- 10 lines in 2 placesrust67 tokens
- 13 lines in 2 placestsx66 tokens
- 21 lines in 2 placestsx65 tokens
- 10 lines in 2 placesrust64 tokens
- 11 lines in 2 placesrust62 tokens
Largest clones over all files, tests and data included
- 15 lines in 2 placesrust99 tokens
347); 348 349let (generated_plist, generated_bytes) = tokio::select! { 350 _ = cancel.cancelled() => { 351 return Err(AppError::Canceled("Pairing".into())); 352 } 353 res = generate_rppairing_plist(&provider) => { 354 res.map_err(|e| AppError::RemotePairing(e.to_string()))? 355 } 356};First 10 of 15 lines.
- 17 lines in 2 placesrust92 tokens
453let provider = get_provider(&device.info).await?; 454let mut installation_proxy = 455 InstallationProxyClient::connect(&provider) 456 .await 457 .map_err(|e| { 458 AppError::DeviceComsWithMessage( 459 "Failed to connect to installation proxy".into(), 460 e.to_string(), 461 ) 462 })?;First 10 of 17 lines.
- 9 lines in 2 placesrust80 tokens
51let store = handle 52 .store("data.json") 53 .map_err(|e| AppError::Misc(format!("Failed to get store: {:?}", e)))?; 54let mut existing_ids = store 55 .get("ids") 56 .unwrap_or_else(|| Value::Array(vec![])) 57 .as_array() 58 .cloned() 59 .unwrap_or_else(std::vec::Vec::new); - 13 lines in 2 placesrust71 tokens
- 10 lines in 2 placestsx71 tokens
By format, code only
| Format | Files | Lines | Clones | Duplicated lines | Duplication |
|---|---|---|---|---|---|
| rust | 10 | 1,803 | 9 | 100 | 5.55% |
| tsx | 18 | 3,012 | 7 | 87 | 2.89% |
| bash | 9 | 644 | 0 | 0 | 0% |
| typescript | 5 | 287 | 0 | 0 | 0% |
| perl | 1 | 174 | 0 | 0 | 0% |
By format, all files
| Format | Files | Lines | Clones | Duplicated lines | Duplication |
|---|---|---|---|---|---|
| rust | 10 | 1,803 | 9 | 100 | 5.55% |
| tsx | 18 | 3,012 | 7 | 87 | 2.89% |
| json | 30 | 7,108 | 0 | 0 | 0% |
| css | 10 | 1,179 | 0 | 0 | 0% |
| bash | 9 | 644 | 0 | 0 | 0% |
| yaml | 3 | 376 | 0 | 0 | 0% |
| typescript | 5 | 287 | 0 | 0 | 0% |
| perl | 1 | 174 | 0 | 0 | 0% |
| markdown | 2 | 173 | 0 | 0 | 0% |
| markup | 2 | 61 | 0 | 0 | 0% |
Trending appearances
| Day | Rank | Stars | Files | Lines | Clones | All files | Code | Health | Commit |
|---|---|---|---|---|---|---|---|---|---|
| Sep 13, 2026 | #3 | 3,130 (+209) | 91 | 14,865 | 16 | 1.26% | 3.16% | — | 348eefd |
| Sep 12, 2026 | #3 | 2,942 (+50) | 91 | 14,865 | 16 | 1.26% | 3.16% | — | 348eefd |
Want this for your own project? Install jscpd and run jscpd ., or measure it the way the baselines were measured.