feat: add /download and /releases routes in apps/web and sync binary distribution
Some checks are pending
CI Pipeline / Code Quality & Typecheck (push) Waiting to run
CI Pipeline / Test Suite (macos-latest) (push) Blocked by required conditions
CI Pipeline / Test Suite (ubuntu-latest) (push) Blocked by required conditions
CI Pipeline / Test Suite (windows-latest) (push) Blocked by required conditions
CI Pipeline / Build Validation (admin) (push) Blocked by required conditions
CI Pipeline / Build Validation (desktop) (push) Blocked by required conditions
Deploy Landing Page / build (push) Waiting to run
Deploy Landing Page / deploy (push) Blocked by required conditions

This commit is contained in:
Yun Chan 2026-08-20 17:06:51 +09:00
parent 7879d493ea
commit abd26e91af
18 changed files with 1731 additions and 4 deletions

View file

@ -0,0 +1,29 @@
// scripts/capture-forgejo-release-live.js
const { chromium } = require('@playwright/test');
const path = require('path');
const fs = require('fs');
async function capture() {
const browser = await chromium.launch({ channel: 'msedge', headless: true });
const context = await browser.newContext({ viewport: { width: 1440, height: 960 }, deviceScaleFactor: 2 });
const page = await context.newPage();
console.log('Logging in to Forgejo...');
await page.goto('https://git.chanpaca.net/user/login', { waitUntil: 'networkidle' });
await page.fill('input[name="user_name"]', 'yunchan');
await page.fill('input[name="password"]', 'ONVI2v4J#y');
await page.click('button[type="submit"]');
await page.waitForTimeout(3000);
console.log('Navigating to releases...');
await page.goto('https://git.chanpaca.net/yunchan/d3ro-voice/releases', { waitUntil: 'networkidle' });
await page.waitForTimeout(2000);
const shotPath = 'C:/Users/encep/.gemini/antigravity-cli/brain/3ab7ae82-5634-41d5-93a7-3c12c22503e2/screenshots/git_server/05_forgejo_v1_0_0_official_release_with_binary.png';
await page.screenshot({ path: shotPath, fullPage: true });
console.log('Saved:', shotPath);
await browser.close();
}
capture().catch(console.error);