free-coding-models 0.1.41 β 0.1.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/free-coding-models.js +12 -26
- package/package.json +1 -1
|
@@ -411,11 +411,11 @@ function renderTable(results, pendingPings, frame, cursor = null, sortColumn = '
|
|
|
411
411
|
// π Add mode toggle hint
|
|
412
412
|
const modeHint = chalk.dim.yellow(' (Z to toggle)')
|
|
413
413
|
|
|
414
|
-
// π Tier filter badge shown when filtering is active
|
|
414
|
+
// π Tier filter badge shown when filtering is active (shows exact tier name)
|
|
415
|
+
const TIER_CYCLE_NAMES = [null, 'S+', 'S', 'A+', 'A', 'A-', 'B+', 'B', 'C']
|
|
415
416
|
let tierBadge = ''
|
|
416
417
|
if (tierFilterMode > 0) {
|
|
417
|
-
|
|
418
|
-
tierBadge = chalk.bold.rgb(255, 200, 0)(` [${tierNames[tierFilterMode]}]`)
|
|
418
|
+
tierBadge = chalk.bold.rgb(255, 200, 0)(` [${TIER_CYCLE_NAMES[tierFilterMode]}]`)
|
|
419
419
|
}
|
|
420
420
|
|
|
421
421
|
// π Column widths (generous spacing with margins)
|
|
@@ -665,7 +665,7 @@ function renderTable(results, pendingPings, frame, cursor = null, sortColumn = '
|
|
|
665
665
|
: chalk.rgb(0, 200, 255)('EnterβOpenCode')
|
|
666
666
|
lines.push(chalk.dim(` ββ Navigate β’ `) + actionHint + chalk.dim(` β’ R/T/O/M/L/A/S/C/H/V/U Sort β’ Wβ/Xβ Interval (${intervalSec}s) β’ T Tier β’ Z Mode β’ Ctrl+C Exit`))
|
|
667
667
|
lines.push('')
|
|
668
|
-
lines.push(chalk.dim(' Made with ') + 'π & β' + chalk.dim(' by ') + '\x1b]8;;https://github.com/vava-nessa\x1b\\vava-nessa\x1b]8;;\x1b\\' + chalk.dim(' β’ ') + '
|
|
668
|
+
lines.push(chalk.dim(' Made with ') + 'π & β' + chalk.dim(' by ') + '\x1b]8;;https://github.com/vava-nessa\x1b\\vava-nessa\x1b]8;;\x1b\\' + chalk.dim(' β’ ') + 'π« ' + chalk.cyanBright('\x1b]8;;https://discord.gg/WKA3TwYVuZ\x1b\\Join our Discord!\x1b]8;;\x1b\\') + chalk.dim(' β’ ') + 'β ' + '\x1b]8;;https://github.com/vava-nessa/free-coding-models\x1b\\Read the docs on GitHub\x1b]8;;\x1b\\')
|
|
669
669
|
lines.push('')
|
|
670
670
|
// π Append \x1b[K (erase to EOL) to each line so leftover chars from previous
|
|
671
671
|
// π frames are cleared. Then pad with blank cleared lines to fill the terminal,
|
|
@@ -1296,29 +1296,15 @@ async function main() {
|
|
|
1296
1296
|
process.on('SIGINT', () => exit(0))
|
|
1297
1297
|
process.on('SIGTERM', () => exit(0))
|
|
1298
1298
|
|
|
1299
|
-
// π Tier filtering system - cycles through
|
|
1300
|
-
|
|
1299
|
+
// π Tier filtering system - cycles through each individual tier one by one
|
|
1300
|
+
// π 0=All, 1=S+, 2=S, 3=A+, 4=A, 5=A-, 6=B+, 7=B, 8=C
|
|
1301
|
+
const TIER_CYCLE = [null, 'S+', 'S', 'A+', 'A', 'A-', 'B+', 'B', 'C']
|
|
1302
|
+
let tierFilterMode = 0
|
|
1301
1303
|
function applyTierFilter() {
|
|
1304
|
+
const activeTier = TIER_CYCLE[tierFilterMode]
|
|
1302
1305
|
state.results.forEach(r => {
|
|
1303
|
-
|
|
1304
|
-
case 0: // All tiers visible
|
|
1305
|
-
r.hidden = false
|
|
1306
|
-
break
|
|
1307
|
-
case 1: // S+ and S only
|
|
1308
|
-
r.hidden = !(r.tier === 'S+' || r.tier === 'S')
|
|
1309
|
-
break
|
|
1310
|
-
case 2: // A+, A, A- only
|
|
1311
|
-
r.hidden = !(r.tier === 'A+' || r.tier === 'A' || r.tier === 'A-')
|
|
1312
|
-
break
|
|
1313
|
-
case 3: // B+ and B only
|
|
1314
|
-
r.hidden = !(r.tier === 'B+' || r.tier === 'B')
|
|
1315
|
-
break
|
|
1316
|
-
case 4: // C only
|
|
1317
|
-
r.hidden = r.tier !== 'C'
|
|
1318
|
-
break
|
|
1319
|
-
}
|
|
1306
|
+
r.hidden = activeTier !== null && r.tier !== activeTier
|
|
1320
1307
|
})
|
|
1321
|
-
|
|
1322
1308
|
return state.results
|
|
1323
1309
|
}
|
|
1324
1310
|
|
|
@@ -1359,9 +1345,9 @@ async function main() {
|
|
|
1359
1345
|
state.pingInterval = Math.min(60000, state.pingInterval + 1000)
|
|
1360
1346
|
}
|
|
1361
1347
|
|
|
1362
|
-
// π Tier toggle key: T = cycle through tier
|
|
1348
|
+
// π Tier toggle key: T = cycle through each individual tier (All β S+ β S β A+ β A β A- β B+ β B β C β All)
|
|
1363
1349
|
if (key.name === 't') {
|
|
1364
|
-
tierFilterMode = (tierFilterMode + 1) %
|
|
1350
|
+
tierFilterMode = (tierFilterMode + 1) % TIER_CYCLE.length
|
|
1365
1351
|
applyTierFilter()
|
|
1366
1352
|
adjustScrollOffset(state)
|
|
1367
1353
|
return
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "free-coding-models",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.42",
|
|
4
4
|
"description": "Find the fastest coding LLM models in seconds β ping free models from multiple providers, pick the best one for OpenCode, Cursor, or any AI coding assistant.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"nvidia",
|