Val Town Code SearchReturn to Val Town

API Access

You can access search results via JSON API by adding format=json to your query:

https://codesearch.val.run/$%7Bart_info.art.src%7D?q=api&page=918&format=json

For typeahead suggestions, use the /typeahead endpoint:

https://codesearch.val.run/typeahead?q=api

Returns an array of strings in format "username" or "username/projectName"

Found 12831 results for "api"(2465ms)

moderateRoseReptilemain.tsx2 matches

@kamillydka•Updated 8 months ago
28type TwoLettersString = `${alfabet}${alfabet}`;
29
30type CapitalizeTwoLetterString<T extends string, U extends TwoLettersString> = T extends U ? Capitalize<T> : never;
31
32type fullName = `${CapitalizeTwoLetterString<"as", TwoLettersString>} ${CapitalizeTwoLetterString<
33 "df",
34 TwoLettersString

fork_Katemain.tsx2 matches

@hideokun•Updated 8 months ago
30type Test<T extends string = TwoLettersString> = T;
31
32type CapitalizeTwoLetterString<T extends string, U extends string = TwoLettersString> = T extends U ? Capitalize<T>
33 : never;
34
35type fullName = `${CapitalizeTwoLetterString<"a">} ${CapitalizeTwoLetterString<"df", TwoLettersString>}`;
36
37const fn: never = "1" as undefined as never;

moderateRoseReptilemain.tsx2 matches

@katarzynam1405•Updated 8 months ago
28type TwoLettersString = `${alfabet}${alfabet}`;
29
30type CapitalizeTwoLetterString<T extends string, U extends TwoLettersString> = T extends U ? Capitalize<T> : never;
31
32type fullName = `${CapitalizeTwoLetterString<"as", TwoLettersString>} ${CapitalizeTwoLetterString<
33 "df",
34 TwoLettersString

ghdbmain.tsx15 matches

@begoon•Updated 8 months ago
22};
23
24const GH = `https://api.github.com/repos`;
25const GH_STORAGE = "https://raw.githubusercontent.com";
26
27const now = () => new Date().toISOString().replace("T", " ").replace("Z", "");
28
29export class GitHubAPI {
30 #token: string | undefined;
31 #contents: string;
180}
181
182const GHDB_API_KEY = env.GHDB_API_KEY;
183if (!GHDB_API_KEY) throw new Error("GHDB_API_KEY is not defined");
184
185const gh = new GitHubAPI();
186
187const application = new Hono();
190
191application.get("/data/:path{.+$}", async (c) => {
192 const headers = c.req.header("GHDB_API_KEY");
193 if (headers !== GHDB_API_KEY) throw new HTTPException(403, { message: "forbidden" });
194
195 const path = c.req.param("path");
207
208application.get("/raw/:path{.+$}", async (c) => {
209 const headers = c.req.header("GHDB_API_KEY");
210 if (headers !== GHDB_API_KEY) throw new HTTPException(403, { message: "forbidden" });
211
212 const path = c.req.param("path");
223
224application.delete("/data/:path{.+$}", async (c) => {
225 const headers = c.req.header("GHDB_API_KEY");
226 if (headers !== GHDB_API_KEY) throw new HTTPException(403, { message: "forbidden" });
227
228 const path = c.req.param("path");
236
237application.post("/data/:path{.+$}", async (c) => {
238 const headers = c.req.header("GHDB_API_KEY");
239 if (headers !== GHDB_API_KEY) throw new HTTPException(403, { message: "forbidden" });
240
241 const path = c.req.param("path");
250
251application.put("/data/:path{.+$}", async (c) => {
252 const headers = c.req.header("GHDB_API_KEY");
253 if (headers !== GHDB_API_KEY) throw new HTTPException(403, { message: "forbidden" });
254
255 const path = c.req.param("path");

ghdbREADME.md3 matches

@begoon•Updated 8 months ago
3The key is a file path within a repository. The value is the file content.
4
5The val needs a GitHub token to access the GitHub API, the account name
6and the repository name.
7
8Also, the val needs GHDB_API_KEY variable. This value defines the exptected
9value of the GHDB_API_KEY header to allow access to the endpoints.
10
11Endpoints:

design32x32bitmapmain.tsx1 match

@chekos•Updated 8 months ago
461 <meta name="viewport" content="width=device-width, initial-scale=1.0">
462 <title>1-Bit Bitmap Editor</title>
463 <link href="https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap" rel="stylesheet">
464 <style>${css}</style>
465 </head>

browserbasePuppeteerExamplemain.tsx1 match

@ryer•Updated 8 months ago
2
3const browser = await puppeteer.connect({
4 browserWSEndpoint: `wss://connect.browserbase.com?apiKey=${Deno.env.get("BROWSERBASE_API_KEY")}`,
5});
6

blob_adminREADME.md1 match

@ianvph•Updated 8 months ago
9[![](https://stevekrouse-button.express.val.run/Install)](https://www.val.town/v/stevekrouse/blob_admin_app/fork)
10
11It uses [basic authentication](https://www.val.town/v/pomdtr/basicAuth) with your [Val Town API Token](https://www.val.town/settings/api) as the password (leave the username field blank).
12
13# TODO

blob_adminREADME.md1 match

@aymeeko•Updated 8 months ago
9[![](https://stevekrouse-button.express.val.run/Install)](https://www.val.town/v/stevekrouse/blob_admin_app/fork)
10
11It uses [basic authentication](https://www.val.town/v/pomdtr/basicAuth) with your [Val Town API Token](https://www.val.town/settings/api) as the password (leave the username field blank).
12
13# TODO

calculateTransitTimeValmain.tsx28 matches

@rochambeau314•Updated 8 months ago
1// This val calculates driving/transit time from given origins to the nearest grocery store, gym, FiDi, Roblox HQ, and Samsara in San Francisco.
2// It uses data from SF_Grocery and SF_Gyms blobs, and the Google Maps Directions API for travel times.
3// It also looks up the neighborhood based on the ZIP code using the SF_Neighborhood_ZIP blob.
4// Results are saved and displayed for each new address added, with options to delete individual results.
219 }
220
221 const apiKey = Deno.env.get("GOOGLE_MAPS_API_KEY");
222 if (!apiKey) {
223 console.error("API key is missing");
224 return new Response(JSON.stringify({ error: "API key is not configured" }), {
225 headers: { "Content-Type": "application/json" },
226 });
237
238 console.log("Finding nearest grocery");
239 const nearestGrocery = await findNearest(origin, groceries, apiKey);
240 console.log("Nearest grocery:", nearestGrocery);
241
242 console.log("Finding nearest gym");
243 const nearestGym = await findNearest(origin, gyms, apiKey);
244 console.log("Nearest gym:", nearestGym);
245
246 console.log("Calculating driving time to FiDi");
247 const fidiDestination = "548 Market St, San Francisco, CA 94104";
248 const fidiDrivingTime = await getDrivingTime(origin, fidiDestination, apiKey);
249 console.log("FiDi driving time:", fidiDrivingTime);
250
251 console.log("Calculating driving time to Roblox");
252 const robloxDestination = "910 Park Pl Ste 300, San Mateo, CA 94403";
253 const robloxDrivingTime = await getDrivingTime(origin, robloxDestination, apiKey, "09:00:00", "Tuesday");
254 console.log("Roblox driving time:", robloxDrivingTime);
255
256 console.log("Calculating transit time to Samsara");
257 const samsaraDestination = "1 De Haro St, San Francisco, CA 94103";
258 const samsaraTransitTime = await getTransitTime(origin, samsaraDestination, apiKey);
259 console.log("Samsara transit time:", samsaraTransitTime);
260
261 console.log("Extracting ZIP code and looking up neighborhood");
262 const zipCode = await getZipCode(origin, apiKey);
263 const neighborhoodZipMap = await blob.getJSON("SF_Neighborhood_ZIP");
264 const neighborhood = neighborhoodZipMap[zipCode] || "Unknown";
315}
316
317async function findNearest(origin: string, locations: any[], apiKey: string): Promise<any> {
318 console.log(`Finding nearest location among ${locations.length} options`);
319 const batchSize = 25; // Google Maps API typically allows up to 25 destinations per request
320 let nearestLocation = null;
321 let shortestTime = Infinity;
324 const batch = locations.slice(i, i + batchSize);
325 const destinations = batch.map(location => `${location.gps.lat},${location.gps.lng}`).join("|");
326 const distanceMatrixUrl = `https://maps.googleapis.com/maps/api/distancematrix/json?origins=${
327 encodeURIComponent(origin)
328 }&destinations=${encodeURIComponent(destinations)}&mode=driving&key=${apiKey}`;
329
330 console.log(`Fetching from Distance Matrix API for batch ${i / batchSize + 1}`);
331 const response = await fetch(distanceMatrixUrl);
332 const data = await response.json();
333 console.log("Distance Matrix API response status:", data.status);
334
335 if (data.status !== "OK") {
336 console.error("Distance Matrix API failed:", data);
337 throw new Error(`Distance Matrix API failed. Status: ${data.status}`);
338 }
339
362 origin: string,
363 destination: string,
364 apiKey: string,
365 arrivalTime?: string,
366 arrivalDay?: string,
367): Promise<string> {
368 let directionsUrl = `https://maps.googleapis.com/maps/api/directions/json?origin=${
369 encodeURIComponent(origin)
370 }&destination=${encodeURIComponent(destination)}&mode=driving&key=${apiKey}`;
371
372 if (arrivalTime && arrivalDay) {
388}
389
390async function getTransitTime(origin: string, destination: string, apiKey: string): Promise<string> {
391 const directionsUrl = `https://maps.googleapis.com/maps/api/directions/json?origin=${
392 encodeURIComponent(origin)
393 }&destination=${encodeURIComponent(destination)}&mode=transit&key=${apiKey}`;
394
395 const directionsResponse = await fetch(directionsUrl);
405}
406
407async function getZipCode(address: string, apiKey: string): Promise<string> {
408 const geocodeUrl = `https://maps.googleapis.com/maps/api/geocode/json?address=${
409 encodeURIComponent(address)
410 }&key=${apiKey}`;
411 const response = await fetch(geocodeUrl);
412 const data = await response.json();

vapi-minutes-db1 file match

@henrywilliams•Updated 1 day ago

vapi-minutes-db2 file matches

@henrywilliams•Updated 1 day ago
mux
Your friendly, neighborhood video API.
api