github-weekly-reporter 0.2.9 → 0.3.0
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 +2 -0
- package/dist/cli/commands/render.d.ts.map +1 -1
- package/dist/cli/commands/render.js +13 -2
- package/dist/cli/commands/render.js.map +1 -1
- package/dist/deployer/index-page.d.ts +1 -1
- package/dist/deployer/index-page.d.ts.map +1 -1
- package/dist/deployer/index-page.js +21 -4
- package/dist/deployer/index-page.js.map +1 -1
- package/dist/renderer/og-image.d.ts +7 -0
- package/dist/renderer/og-image.d.ts.map +1 -1
- package/dist/renderer/og-image.js +102 -0
- package/dist/renderer/og-image.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
**Your GitHub activity, turned into a beautiful weekly report. Automatically.**
|
|
4
4
|
|
|
5
|
+
<video src="https://github.com/user-attachments/assets/96828826-d694-4338-89b9-974094b0950d" autoplay loop muted playsinline></video>
|
|
6
|
+
|
|
5
7
|
Every week, this tool looks at everything you did on GitHub (commits, pull requests, code reviews) and generates a polished, shareable report page with AI-written summaries. It runs as a GitHub Action, deploys to GitHub Pages, and costs nothing.
|
|
6
8
|
|
|
7
9
|
One command to set up. Zero maintenance after that.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/render.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/render.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmNpC,eAAO,MAAM,cAAc,GAAI,SAAS,OAAO,KAAG,IA+BjD,CAAC"}
|
|
@@ -6,7 +6,7 @@ import { renderReport } from "../../renderer/index.js";
|
|
|
6
6
|
import { renderIndexPage, buildReportEntry } from "../../deployer/index-page.js";
|
|
7
7
|
import { getWeekId } from "../../deployer/week.js";
|
|
8
8
|
import { parseLocalDate } from "../../collector/date-range.js";
|
|
9
|
-
import { generateOGImage } from "../../renderer/og-image.js";
|
|
9
|
+
import { generateOGImage, generateIndexOGImage } from "../../renderer/og-image.js";
|
|
10
10
|
const env = (key) => process.env[key];
|
|
11
11
|
const listReportDirs = async (dir) => {
|
|
12
12
|
const paths = [];
|
|
@@ -128,11 +128,22 @@ const run = async (options) => {
|
|
|
128
128
|
console.log(`OG image written to ${ogPath}`);
|
|
129
129
|
// Write index page with titles from each week's LLM data
|
|
130
130
|
const entries = await buildReportEntries(options.dataDir, allPaths);
|
|
131
|
-
const indexHtml = renderIndexPage(entries, { username: githubData.username, avatarUrl: githubData.avatarUrl, profile: githubData.profile }, options.language, options.siteTitle);
|
|
131
|
+
const indexHtml = renderIndexPage(entries, { username: githubData.username, avatarUrl: githubData.avatarUrl, profile: githubData.profile }, options.language, options.siteTitle, base);
|
|
132
132
|
const indexPath = join(options.outputDir, "index.html");
|
|
133
133
|
await mkdir(options.outputDir, { recursive: true });
|
|
134
134
|
await writeFile(indexPath, indexHtml, "utf-8");
|
|
135
135
|
console.log(`Index written to ${indexPath}`);
|
|
136
|
+
// Generate index OG image
|
|
137
|
+
const resolvedSiteTitle = (options.siteTitle ?? "Dev Pulse").replace(/\\n/g, " ");
|
|
138
|
+
const indexOGImage = await generateIndexOGImage({
|
|
139
|
+
siteTitle: resolvedSiteTitle,
|
|
140
|
+
username: githubData.username,
|
|
141
|
+
language: options.language,
|
|
142
|
+
reportCount: allPaths.length,
|
|
143
|
+
});
|
|
144
|
+
const indexOGPath = join(options.outputDir, "og.png");
|
|
145
|
+
await writeFile(indexOGPath, indexOGImage);
|
|
146
|
+
console.log(`Index OG image written to ${indexOGPath}`);
|
|
136
147
|
// Generate sitemap.xml
|
|
137
148
|
const sitemapEntries = allPaths
|
|
138
149
|
.map((p) => ` <url><loc>${base}/${p}/</loc></url>`)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../../src/cli/commands/render.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAGzE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAoB,MAAM,8BAA8B,CAAC;AACnG,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../../src/cli/commands/render.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,6 @@ export type ReportEntry = {
|
|
|
18
18
|
dateLabel: string;
|
|
19
19
|
stats?: ReportEntryStats;
|
|
20
20
|
};
|
|
21
|
-
export declare const renderIndexPage: (reports: ReportEntry[], pageData?: IndexPageData, language?: Language, siteTitle?: string) => string;
|
|
21
|
+
export declare const renderIndexPage: (reports: ReportEntry[], pageData?: IndexPageData, language?: Language, siteTitle?: string, baseUrl?: string) => string;
|
|
22
22
|
export declare const buildReportEntry: (path: string, title?: string, subtitle?: string, stats?: ReportEntryStats) => ReportEntry;
|
|
23
23
|
//# sourceMappingURL=index-page.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-page.d.ts","sourceRoot":"","sources":["../../src/deployer/index-page.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAIzD,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B,CAAC;
|
|
1
|
+
{"version":3,"file":"index-page.d.ts","sourceRoot":"","sources":["../../src/deployer/index-page.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAIzD,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B,CAAC;AA8aF,eAAO,MAAM,eAAe,GAC1B,SAAS,WAAW,EAAE,EACtB,WAAW,aAAa,EACxB,WAAU,QAAe,EACzB,YAAY,MAAM,EAClB,UAAU,MAAM,KACf,MA4BF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,MAAM,MAAM,EACZ,QAAQ,MAAM,EACd,WAAW,MAAM,EACjB,QAAQ,gBAAgB,KACvB,WAQD,CAAC"}
|
|
@@ -8,8 +8,19 @@ const TEMPLATE = `<!DOCTYPE html>
|
|
|
8
8
|
<title>{{siteTitle}}</title>
|
|
9
9
|
<meta charset="utf-8" />
|
|
10
10
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
11
|
-
<meta name="description" content="{{
|
|
11
|
+
<meta name="description" content="{{description}}" />
|
|
12
12
|
<meta name="view-transition" content="same-origin" />
|
|
13
|
+
<meta property="og:title" content="{{siteTitleInline}}" />
|
|
14
|
+
<meta property="og:description" content="{{description}}" />
|
|
15
|
+
<meta property="og:type" content="website" />
|
|
16
|
+
{{#if ogImageUrl}}<meta property="og:image" content="{{ogImageUrl}}" />
|
|
17
|
+
<meta property="og:image:width" content="1200" />
|
|
18
|
+
<meta property="og:image:height" content="630" />{{/if}}
|
|
19
|
+
{{#if baseUrl}}<meta property="og:url" content="{{baseUrl}}/" />{{/if}}
|
|
20
|
+
<meta name="twitter:card" content="summary_large_image" />
|
|
21
|
+
<meta name="twitter:title" content="{{siteTitleInline}}" />
|
|
22
|
+
<meta name="twitter:description" content="{{description}}" />
|
|
23
|
+
{{#if ogImageUrl}}<meta name="twitter:image" content="{{ogImageUrl}}" />{{/if}}
|
|
13
24
|
<style>{{{css}}}</style>
|
|
14
25
|
<style>
|
|
15
26
|
body { background: #050505; color: #e8e8e8; overflow-x: hidden; }
|
|
@@ -409,21 +420,27 @@ const groupByYear = (reports) => {
|
|
|
409
420
|
});
|
|
410
421
|
return [...groups.entries()].map(([year, reps]) => ({ year, reports: reps }));
|
|
411
422
|
};
|
|
412
|
-
export const renderIndexPage = (reports, pageData, language = "en", siteTitle) => {
|
|
423
|
+
export const renderIndexPage = (reports, pageData, language = "en", siteTitle, baseUrl) => {
|
|
413
424
|
const locale = getLocale(language);
|
|
414
425
|
const fontConfig = getFontConfig(language);
|
|
415
426
|
const resolvedSiteTitle = (siteTitle ?? "Dev\nPulse").replace(/\\n/g, "\n");
|
|
416
427
|
const siteTitleInline = resolvedSiteTitle.replace(/\n/g, " ");
|
|
428
|
+
const username = pageData?.username ?? "";
|
|
429
|
+
const description = `Weekly reports by @${username}`;
|
|
430
|
+
const ogImageUrl = baseUrl ? `${baseUrl}/og.png` : "og.png";
|
|
417
431
|
const template = Handlebars.compile(TEMPLATE);
|
|
418
432
|
return template({
|
|
419
433
|
yearGroups: groupByYear(reports),
|
|
420
434
|
css: buildCSS(language),
|
|
421
|
-
username
|
|
435
|
+
username,
|
|
422
436
|
avatarUrl: pageData?.avatarUrl,
|
|
423
437
|
profile: pageData?.profile,
|
|
424
|
-
displayName: pageData?.profile?.name ??
|
|
438
|
+
displayName: pageData?.profile?.name ?? username,
|
|
425
439
|
siteTitle: resolvedSiteTitle,
|
|
426
440
|
siteTitleInline,
|
|
441
|
+
description,
|
|
442
|
+
ogImageUrl,
|
|
443
|
+
baseUrl,
|
|
427
444
|
lang: language,
|
|
428
445
|
weeklyReports: locale.weeklyReports,
|
|
429
446
|
poweredBy: locale.poweredBy,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-page.js","sourceRoot":"","sources":["../../src/deployer/index-page.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAE1D,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AA6BjD,MAAM,QAAQ,GAAG
|
|
1
|
+
{"version":3,"file":"index-page.js","sourceRoot":"","sources":["../../src/deployer/index-page.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,4 +12,11 @@ export type OGImageData = {
|
|
|
12
12
|
};
|
|
13
13
|
};
|
|
14
14
|
export declare const generateOGImage: (data: OGImageData) => Promise<Buffer>;
|
|
15
|
+
export type IndexOGImageData = {
|
|
16
|
+
siteTitle: string;
|
|
17
|
+
username: string;
|
|
18
|
+
language: Language;
|
|
19
|
+
reportCount: number;
|
|
20
|
+
};
|
|
21
|
+
export declare const generateIndexOGImage: (data: IndexOGImageData) => Promise<Buffer>;
|
|
15
22
|
//# sourceMappingURL=og-image.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"og-image.d.ts","sourceRoot":"","sources":["../../src/renderer/og-image.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA2B5C,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1D,CAAC;AA8HF,eAAO,MAAM,eAAe,GAAU,MAAM,WAAW,KAAG,OAAO,CAAC,MAAM,CAIvE,CAAC"}
|
|
1
|
+
{"version":3,"file":"og-image.d.ts","sourceRoot":"","sources":["../../src/renderer/og-image.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA2B5C,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1D,CAAC;AA8HF,eAAO,MAAM,eAAe,GAAU,MAAM,WAAW,KAAG,OAAO,CAAC,MAAM,CAIvE,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAwGF,eAAO,MAAM,oBAAoB,GAC/B,MAAM,gBAAgB,KACrB,OAAO,CAAC,MAAM,CAIhB,CAAC"}
|
|
@@ -149,4 +149,106 @@ export const generateOGImage = async (data) => {
|
|
|
149
149
|
const svg = await buildSVG(data, font);
|
|
150
150
|
return sharp(Buffer.from(svg)).png().toBuffer();
|
|
151
151
|
};
|
|
152
|
+
const buildIndexSVG = async (data, font) => {
|
|
153
|
+
const element = {
|
|
154
|
+
type: "div",
|
|
155
|
+
props: {
|
|
156
|
+
style: {
|
|
157
|
+
display: "flex",
|
|
158
|
+
flexDirection: "column",
|
|
159
|
+
justifyContent: "space-between",
|
|
160
|
+
width: "100%",
|
|
161
|
+
height: "100%",
|
|
162
|
+
padding: "80px 90px",
|
|
163
|
+
background: "linear-gradient(135deg, #0a0a0a 0%, #1a1a2e 100%)",
|
|
164
|
+
color: "#e0e0e0",
|
|
165
|
+
fontFamily: "OGFont",
|
|
166
|
+
},
|
|
167
|
+
children: [
|
|
168
|
+
{
|
|
169
|
+
type: "div",
|
|
170
|
+
props: {
|
|
171
|
+
style: { display: "flex", flexDirection: "column", gap: "24px" },
|
|
172
|
+
children: [
|
|
173
|
+
{
|
|
174
|
+
type: "div",
|
|
175
|
+
props: {
|
|
176
|
+
style: {
|
|
177
|
+
fontSize: "96px",
|
|
178
|
+
fontWeight: 600,
|
|
179
|
+
lineHeight: 1.1,
|
|
180
|
+
letterSpacing: "-0.03em",
|
|
181
|
+
color: "#ffffff",
|
|
182
|
+
},
|
|
183
|
+
children: data.siteTitle.replace(/\n/g, " "),
|
|
184
|
+
},
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
type: "div",
|
|
188
|
+
props: {
|
|
189
|
+
style: {
|
|
190
|
+
fontSize: "40px",
|
|
191
|
+
color: "rgba(255,255,255,0.5)",
|
|
192
|
+
},
|
|
193
|
+
children: `Weekly reports by @${data.username}`,
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
],
|
|
197
|
+
},
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
type: "div",
|
|
201
|
+
props: {
|
|
202
|
+
style: {
|
|
203
|
+
display: "flex",
|
|
204
|
+
justifyContent: "space-between",
|
|
205
|
+
alignItems: "flex-end",
|
|
206
|
+
},
|
|
207
|
+
children: [
|
|
208
|
+
{
|
|
209
|
+
type: "div",
|
|
210
|
+
props: {
|
|
211
|
+
style: { display: "flex", gap: "8px", alignItems: "baseline" },
|
|
212
|
+
children: [
|
|
213
|
+
{
|
|
214
|
+
type: "span",
|
|
215
|
+
props: {
|
|
216
|
+
style: { color: "#39d353", fontWeight: 600, fontSize: "36px" },
|
|
217
|
+
children: String(data.reportCount),
|
|
218
|
+
},
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
type: "span",
|
|
222
|
+
props: {
|
|
223
|
+
style: { color: "rgba(255,255,255,0.4)", fontSize: "30px" },
|
|
224
|
+
children: data.reportCount === 1 ? "report" : "reports",
|
|
225
|
+
},
|
|
226
|
+
},
|
|
227
|
+
],
|
|
228
|
+
},
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
type: "div",
|
|
232
|
+
props: {
|
|
233
|
+
style: { fontSize: "28px", color: "rgba(255,255,255,0.3)" },
|
|
234
|
+
children: "github-weekly-reporter",
|
|
235
|
+
},
|
|
236
|
+
},
|
|
237
|
+
],
|
|
238
|
+
},
|
|
239
|
+
},
|
|
240
|
+
],
|
|
241
|
+
},
|
|
242
|
+
};
|
|
243
|
+
return satori(element, {
|
|
244
|
+
width: 1200,
|
|
245
|
+
height: 630,
|
|
246
|
+
fonts: [{ name: "OGFont", data: font, weight: 600, style: "normal" }],
|
|
247
|
+
});
|
|
248
|
+
};
|
|
249
|
+
export const generateIndexOGImage = async (data) => {
|
|
250
|
+
const font = loadFont(data.language);
|
|
251
|
+
const svg = await buildIndexSVG(data, font);
|
|
252
|
+
return sharp(Buffer.from(svg)).png().toBuffer();
|
|
253
|
+
};
|
|
152
254
|
//# sourceMappingURL=og-image.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"og-image.js","sourceRoot":"","sources":["../../src/renderer/og-image.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"og-image.js","sourceRoot":"","sources":["../../src/renderer/og-image.ts"],"names":[],"mappings":"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"}
|