参加者や運営のコンテキスわかってる人向けの雑な版。 真面目なのは後で書く、かも。気分次第
https://www.cyberagent.co.jp/careers/students/career_event/detail/id=31182
https://github.com/CyberAgentHack/web-speed-hackathon-2025
真面目な解説書いた
{-# LANGUAGE OverloadedStrings #-} | |
{-# LANGUAGE ScopedTypeVariables #-} | |
{-# LANGUAGE DeriveGeneric #-} -- FromJSON と Show の自動導出に必要 | |
module Main (main) where | |
import qualified Network.HTTP.Req as Req | |
import qualified Data.Aeson as Aeson | |
import Control.Monad.IO.Class (liftIO) | |
import GHC.Generics (Generic) -- DeriveGeneric に必要 |
/** | |
* Usage | |
* $ deno run imagen.ts --prompt "Santa Claus driving a Cadillac" | |
* $ deno run imagen.ts --file prompt.txt | |
* $ deno run imagen.ts --file prompt.txt --out out.png | |
*/ | |
import { experimental_generateImage as generateImage, generateText } from "ai"; | |
import { openai } from "@ai-sdk/openai"; | |
import { printImageFromBase64 } from "@mizchi/imgcat"; | |
import { parseArgs } from "node:util"; |
// https://orm.drizzle.team/docs/guides/vector-similarity-search | |
import { PGlite } from "npm:@electric-sql/pglite"; | |
import { vector as pgVector } from "@electric-sql/pglite/vector"; | |
import { index, integer, pgTable, vector, text } from "drizzle-orm/pg-core"; | |
import { drizzle, type PgliteDatabase } from "drizzle-orm/pglite"; | |
import { openai } from "@ai-sdk/openai"; | |
import { embed } from "ai"; | |
import { cosineDistance, sql, desc, gt } from "drizzle-orm"; | |
// openai embedding |
/** | |
* $ npx tsx asset-cov.ts https://www.cnn.co.jp/fringe/35230901.html https://www.cnn.co.jp --filter '.css' | |
--- Final Coverage Report --- | |
--- CSS Files --- | |
File: https://www.cnn.co.jp/static/css/atlanta/responsive.css | |
Total size: 13000 bytes | |
Estimated used size (across pages): 3943 bytes |
const iterations = 1000000; // 試行回数 | |
const urlString = "https://example.com/path/to/resource?query=param#fragment"; | |
const domainToCheck = "https://example.com"; | |
console.log(`Benchmarking with ${iterations} iterations...\n`); | |
// --- new URL() benchmark --- | |
console.log(`1. Parsing URL with new URL("${urlString}")`); | |
const startNewUrl = performance.now(); | |
for (let i = 0; i < iterations; i++) { |
import { drizzle } from "npm:@mizchi/drizzle-orm/dist/node-sqlite/index.js"; | |
import { | |
integer, | |
sqliteTable, | |
text, | |
} from "npm:@mizchi/drizzle-orm/dist/sqlite-core/index.js"; | |
import { eq } from "npm:@mizchi/drizzle-orm/dist/index.js"; | |
// Define the schema | |
const users = sqliteTable("users", { |
import { drizzle } from "drizzle-orm/node-sqlite"; | |
import { sqliteTable, text, integer } from "drizzle-orm/sqlite-core"; | |
import { eq } from "drizzle-orm"; | |
// Define the schema | |
const users = sqliteTable("users", { | |
id: integer("id").primaryKey(), | |
name: text("name").notNull(), | |
}); |
import fs from "node:fs/promises"; | |
import { createReadStream } from "node:fs"; | |
import zlib from "node:zlib"; | |
import { pipeline } from "node:stream/promises"; | |
import { PGlite } from "@electric-sql/pglite"; | |
async function writePg(filePath: string, pglite: PGlite) { | |
await fs.writeFile(filePath, (await pglite.dumpDataDir("gzip")).stream()); | |
} | |
async function readPg(filePath: string) { |
参加者や運営のコンテキスわかってる人向けの雑な版。 真面目なのは後で書く、かも。気分次第
https://www.cyberagent.co.jp/careers/students/career_event/detail/id=31182
https://github.com/CyberAgentHack/web-speed-hackathon-2025
真面目な解説書いた
/** | |
* Usage | |
* deno run -A v0.ts https://google.com | |
*/ | |
import "core-js/proposals/explicit-resource-management.js"; | |
import puppeteer from "puppeteer"; | |
import { tool } from "ai"; | |
import { collectHighlight } from "./inject.ts"; | |
import { z } from "zod"; | |
// optional: show image on terminal |