quackscore 0.1.2 → 0.1.3
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/README.md +8 -2
- package/dist/commands/leaderboard.d.ts.map +1 -1
- package/dist/commands/leaderboard.js +3 -2
- package/dist/commands/leaderboard.js.map +1 -1
- package/dist/report/generate.d.ts.map +1 -1
- package/dist/report/generate.js +366 -89
- package/dist/report/generate.js.map +1 -1
- package/dist/report/leaderboard.d.ts +2 -2
- package/dist/report/leaderboard.d.ts.map +1 -1
- package/dist/report/leaderboard.js +580 -43
- package/dist/report/leaderboard.js.map +1 -1
- package/dist/shared/types.d.ts +20 -0
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/storage/index.d.ts +1 -1
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +1 -1
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/leaderboard.d.ts +2 -2
- package/dist/storage/leaderboard.d.ts.map +1 -1
- package/dist/storage/leaderboard.js +77 -38
- package/dist/storage/leaderboard.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -25,8 +25,8 @@ That's it. Quack.
|
|
|
25
25
|
## Requirements
|
|
26
26
|
|
|
27
27
|
- Node.js 18+
|
|
28
|
-
- `QUACKSCORE_GH_TOKEN` — a GitHub personal access token
|
|
29
|
-
- `QUACKSCORE_LLM_API_KEY` — API key for your chosen LLM provider (
|
|
28
|
+
- `QUACKSCORE_GH_TOKEN` — a GitHub personal access token. See [GitHub fine-grained token setup](./docs/github-fine-grained-pat.md)
|
|
29
|
+
- `QUACKSCORE_LLM_API_KEY` — API key for your chosen LLM provider. See [LLM provider setup](./docs/llm-provider-setup.md). Not required for Ollama or unauthenticated LiteLLM proxies.
|
|
30
30
|
|
|
31
31
|
---
|
|
32
32
|
|
|
@@ -58,12 +58,16 @@ npx quackscore --help
|
|
|
58
58
|
|
|
59
59
|
All remote providers use `QUACKSCORE_LLM_API_KEY`. Ollama needs no key. LiteLLM's key is optional (only needed if your proxy requires auth).
|
|
60
60
|
|
|
61
|
+
Need setup help? See [LLM provider setup](./docs/llm-provider-setup.md).
|
|
62
|
+
|
|
61
63
|
---
|
|
62
64
|
|
|
63
65
|
## Quick start
|
|
64
66
|
|
|
65
67
|
### 1. Set environment variables
|
|
66
68
|
|
|
69
|
+
Need a GitHub token first? Follow [GitHub fine-grained token setup](./docs/github-fine-grained-pat.md).
|
|
70
|
+
|
|
67
71
|
```bash
|
|
68
72
|
export QUACKSCORE_GH_TOKEN=<your-github-token>
|
|
69
73
|
export QUACKSCORE_LLM_API_KEY=<your-llm-api-key>
|
|
@@ -71,6 +75,8 @@ export QUACKSCORE_LLM_API_KEY=<your-llm-api-key>
|
|
|
71
75
|
|
|
72
76
|
### 2. Pick your LLM provider
|
|
73
77
|
|
|
78
|
+
Need help choosing or configuring a provider? See [LLM provider setup](./docs/llm-provider-setup.md).
|
|
79
|
+
|
|
74
80
|
```bash
|
|
75
81
|
quackscore init --provider anthropic --model claude-haiku-4-5-20251001
|
|
76
82
|
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leaderboard.d.ts","sourceRoot":"","sources":["../../src/commands/leaderboard.ts"],"names":[],"mappings":"AAOA,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"leaderboard.d.ts","sourceRoot":"","sources":["../../src/commands/leaderboard.ts"],"names":[],"mappings":"AAOA,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAuCpD"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { loadLeaderboard, saveLeaderboardReport } from '../storage/index.js';
|
|
1
|
+
import { loadLeaderboard, loadLeaderboardProfiles, saveLeaderboardReport } from '../storage/index.js';
|
|
2
2
|
import { generateLeaderboardHTML } from '../report/index.js';
|
|
3
3
|
import { rpgHeader, rpgInfo, rpgSuccess, rpgLog } from '../shared/ui.js';
|
|
4
4
|
import { diagLog } from '../shared/diagnostics.js';
|
|
5
5
|
import chalk from 'chalk';
|
|
6
6
|
import open from 'open';
|
|
7
7
|
export async function runLeaderboard() {
|
|
8
|
+
const profiles = loadLeaderboardProfiles();
|
|
8
9
|
const entries = loadLeaderboard();
|
|
9
10
|
diagLog('Loaded leaderboard entries', {
|
|
10
11
|
entryCount: entries.length,
|
|
@@ -15,7 +16,7 @@ export async function runLeaderboard() {
|
|
|
15
16
|
rpgInfo('No players yet. Run quackscore create {user} to get started!');
|
|
16
17
|
return;
|
|
17
18
|
}
|
|
18
|
-
const leaderboardPath = saveLeaderboardReport(generateLeaderboardHTML(
|
|
19
|
+
const leaderboardPath = saveLeaderboardReport(generateLeaderboardHTML(profiles));
|
|
19
20
|
const medals = ['🥇', '🥈', '🥉'];
|
|
20
21
|
console.log(chalk.dim('─'.repeat(60)));
|
|
21
22
|
console.log(chalk.bold(`${'#'.padEnd(4)} ${'Username'.padEnd(30)} ${'Points'.padStart(10)} ${'Level'.padStart(8)}`));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leaderboard.js","sourceRoot":"","sources":["../../src/commands/leaderboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"leaderboard.js","sourceRoot":"","sources":["../../src/commands/leaderboard.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/report/generate.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAU,QAAQ,
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/report/generate.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAU,QAAQ,EAAsB,MAAM,oBAAoB,CAAC;AAue/E,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAi5CnD"}
|