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/$2?q=api&page=19&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 17843 results for "api"(3394ms)

TownieuseProjects.tsx1 match

@KhadijahAleeyuA•Updated 1 day ago
1import { useState, useEffect } from "react";
2
3const ENDPOINT = "/api/projects-loader";
4
5export function useProjects() {

TownieuseCreateProject.tsx1 match

@KhadijahAleeyuA•Updated 1 day ago
1import { useState, useEffect } from "react";
2
3const ENDPOINT = "/api/create-project";
4
5export function useCreateProject() {

TownieuseCreateBranch.tsx1 match

@KhadijahAleeyuA•Updated 1 day ago
1import { useState, useEffect } from "react";
2
3const ENDPOINT = "/api/create-branch";
4
5export function useCreateBranch(projectId: string) {

TownieuseChatLogic.ts2 matches

@KhadijahAleeyuA•Updated 1 day ago
17 project,
18 branchId,
19 // anthropicApiKey,
20 // bearerToken,
21 selectedFiles,
39 status,
40 } = useChat({
41 api: "/api/send-message",
42 body: {
43 project,

TownieuseBranches.tsx1 match

@KhadijahAleeyuA•Updated 1 day ago
1import { useState, useEffect } from "react";
2
3const ENDPOINT = "/api/project-branches";
4
5export function useBranches (projectId: string) {

TowniesoundEffects.ts4 matches

@KhadijahAleeyuA•Updated 1 day ago
4
5/**
6 * Plays a bell sound notification using the Web Audio API
7 * @returns A Promise that resolves when the sound has started playing
8 */
13 const AudioContext = window.AudioContext || (window as any).webkitAudioContext;
14 if (!AudioContext) {
15 console.warn("Web Audio API not supported in this browser");
16 resolve();
17 return;
65
66/**
67 * Plays a simple notification sound using the Web Audio API
68 * This is a simpler, shorter bell sound
69 * @returns A Promise that resolves when the sound has started playing
75 const AudioContext = window.AudioContext || (window as any).webkitAudioContext;
76 if (!AudioContext) {
77 console.warn("Web Audio API not supported in this browser");
78 resolve();
79 return;

Towniesend-message.ts11 matches

@KhadijahAleeyuA•Updated 1 day ago
28 }
29
30 const { messages, project, branchId, anthropicApiKey, selectedFiles, images } = await c.req.json();
31
32 // do we want to allow user-provided tokens still
33 const apiKey = anthropicApiKey || Deno.env.get("ANTHROPIC_API_KEY");
34 const our_api_token = apiKey === Deno.env.get("ANTHROPIC_API_KEY");
35
36 if (our_api_token) {
37 if (await overLimit(bearerToken)) {
38 const user = await getUser(bearerToken);
59
60 const rowid = await startTrackingUsage({
61 our_api_token,
62 bearerToken, // will look up the userId from this
63 branch_id: branchId,
68
69 // Initialize PostHog client
70 const projectApiKey = Deno.env.get("POSTHOG_PROJECT_API_KEY");
71
72 let tracedModel;
73
74 if (projectApiKey) {
75 const phClient = new PostHog(projectApiKey, {
76 host: "https://us.i.posthog.com"
77 });
84 const traceId = `townie_${rowid}_${Date.now()}`;
85
86 const anthropic = createAnthropic({ apiKey });
87
88 // Wrap the Anthropic model with PostHog tracing
94 townie_branch_id: branchId,
95 townie_usage_id: rowid,
96 townie_our_api_token: our_api_token,
97 townie_num_images: images?.length || 0,
98 townie_selected_files_count: selectedFiles?.length || 0,
107 } else {
108 // Fallback to regular Anthropic call if PostHog is not configured
109 const anthropic = createAnthropic({ apiKey });
110 tracedModel = anthropic(model);
111 }

Townieschema.tsx2 matches

@KhadijahAleeyuA•Updated 1 day ago
19 finish_reason?: string;
20 num_images?: number;
21 our_api_token: boolean;
22}
23
44 finish_reason TEXT,
45 num_images INTEGER,
46 our_api_token INTEGER NOT NULL,
47 finish_timestamp INTEGER
48 )

Townierequests.ts4 matches

@KhadijahAleeyuA•Updated 1 day ago
17 finish_reason: string | null;
18 num_images: number | null;
19 our_api_token: number;
20}
21
57
58 // Fetch the inference calls data
59 fetch('/api/inference-calls?usage_id=' + usageId)
60 .then(response => response.json())
61 .then(data => {
192 <th>Finish</th>
193 <th>Images</th>
194 <th>Our API</th>
195 </tr>
196 </thead>
216 <td>${row.finish_reason || '-'}</td>
217 <td>${formatNumber(row.num_images)}</td>
218 <td>${formatBoolean(row.our_api_token)}</td>
219 </tr>
220 `).join("")}

TownieREADME.md1 match

@KhadijahAleeyuA•Updated 1 day ago
17Townie is fully open-source and itself runs on Val Town. Pull requests welcome!
18
19To get Townie running in your Val Town account, click the **Remix** button and then add your ANTHROPIC_API_KEY. You can leave all the other environment variables blank.
20
21Authentication in Townie is handled via Val Town Oauth. However, we have not yet opened up our OAuth to anyone else, which currently makes it very awkward to use your own Townie. Here is a temporary workaround:

dailyQuoteAPI

@Souky•Updated 21 hours ago

HTTP

@Ncharity•Updated 23 hours ago
Daily Quote API
apiry
Kapil01