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/image-url.jpg%20%22Optional%20title%22?q=fetch&page=7&format=json

For typeahead suggestions, use the /typeahead endpoint:

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

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

Found 15603 results for "fetch"(5886ms)

Townieindex.ts1 match

@boots•Updated 1 day ago
218});
219
220export default app.fetch;

Townieindex.ts1 match

@boots•Updated 1 day ago
27
28// This is the entry point for HTTP vals
29export default app.fetch;
30

Townieindex.ts2 matches

@boots•Updated 1 day ago
1import { makeChangeValTypeTool } from "./change-val-type.ts";
2import { makeFetchTool } from "./fetch.ts";
3import { makeTextEditorTool } from "./text-editor.ts";
4import { makeTracesTool } from "./traces.ts";
8 makeTextEditorTool,
9 makeChangeValTypeTool,
10 makeFetchTool,
11 makeTracesTool,
12 thinkTool,

Towniefetch.ts5 matches

@boots•Updated 1 day ago
11 * Creates a tool for making HTTP requests to vals in a Val Town project
12 */
13export const makeFetchTool = (
14 { bearerToken, project, branch_id }: { bearerToken?: string; project?: any; branch_id?: string } = {},
15) =>
16 tool({
17 name: "fetch",
18 description:
19 "Make an HTTP request to a Val Town val and return the response. Useful for testing HTTP vals. The HTTP response body will be truncated to 5000 characters.",
69 return {
70 type: "error",
71 message: `Error fetching val at path '${valPath}': ${error.message}`,
72 };
73 }
84 return {
85 type: "error",
86 message: `The val at path '${valPath}' is not an HTTP val. Only HTTP vals can be called with fetch.`,
87 };
88 }
115 let response;
116 try {
117 response = await fetch(valEndpoint + normalizedURLPath, options);
118 } catch (error: any) {
119 // Return error information

Townie.cursorrules3 matches

@boots•Updated 1 day ago
239
240 // Inject data to avoid extra round-trips
241 const initialData = await fetchInitialData();
242 const dataScript = `<script>
243 window.__INITIAL_DATA__ = ${JSON.stringify(initialData)};
286
2875. **API Design:**
288 - `fetch` handler is the entry point for HTTP vals
289 - Run the Hono app with `export default app.fetch // This is the entry point for HTTP vals`
290
291

TownieCreditBalance.tsx5 matches

@boots•Updated 1 day ago
7 const [loading, setLoading] = useState(true);
8
9 const fetchBalance = async () => {
10 try {
11 const response = await fetch("/api/credit-balance");
12 if (response.ok) {
13 const data = await response.json();
15 setBalance(data.balance);
16 } else {
17 console.error("Failed to fetch balance");
18 }
19 } catch (err) {
20 console.error("Error fetching balance:", err);
21 } finally {
22 setLoading(false);
25
26 useEffect(() => {
27 fetchBalance();
28 }, []);
29

TownieChatRouteSingleColumn.tsx13 matches

@boots•Updated 1 day ago
51 files={project.data?.files}
52 branchId={branchId}
53 refetch={project.refetch}
54 />
55 </ProjectContext.Provider>
61 files,
62 branchId,
63 refetch,
64}: {
65 project: any;
66 files: any[];
67 branchId: string;
68 refetch: () => void;
69}) {
70 const [images, setImages] = useState<(string|null)[]>([]);
71 const [selectedFiles, setSelectedFiles] = useState<string[]>([]);
72 const { audio, user } = useContext(AppContext);
73 const { balance, loading: balanceLoading, refetch: refetchBalance } = useCreditBalance();
74
75 const {
94 useLoadingFavicon(running);
95
96 // Track when requests end and refetch balance
97 const prevRunning = useRef(running);
98 useEffect(() => {
99 // If running changed from true to false, request just ended
100 if (prevRunning.current === true && running === false) {
101 refetchBalance();
102 }
103 prevRunning.current = running;
104 }, [running, refetchBalance]);
105
106 // Auto-poll balance every 4 seconds when credits are insufficient
110 if (hasInsufficientCredits) {
111 const intervalId = setInterval(() => {
112 refetchBalance();
113 }, 4000); // 4 seconds
114
115 return () => clearInterval(intervalId);
116 }
117 }, [balanceLoading, balance, refetchBalance]);
118
119 useEffect(() => {
120 if (!messages?.length) return;
121 let last = messages.at(-1);
122 if (shouldRefetch(last)) {
123 refetch();
124 }
125 }, [messages]);
196 <button
197 onClick={() => {
198 refetchBalance();
199 }}
200 className="icon-button"
227}
228
229function shouldRefetch (message) {
230 for (let i = 0; i < message?.parts?.length; i++) {
231 let part = message.parts[i];

TownieBranchSelect.tsx1 match

@boots•Updated 1 day ago
32 return;
33 }
34 branches.refetch();
35 if (res?.branch?.id) {
36 navigate(`/chat/${projectId}/branch/${res.branch.id}`);

noirmain.tsx4 matches

@join•Updated 1 day ago
182 const killerName = "Alistair Finch";
183
184 async function fetchNextCredit() {
185 try {
186 const response = await fetch(API_URL, {
187 method: 'POST',
188 headers: { 'Content-Type': 'application/json' },
200 return data;
201 } catch (error) {
202 console.error("Fetch error:", error);
203 return {
204 type: 'credit',
237
238 async function sequence() {
239 const credit = await fetchNextCredit();
240 displayCredit(credit);
241

rushmain.tsx1 match

@join•Updated 1 day ago
329 }
330 } catch (error) {
331 console.error("Failed to fetch from OpenAI, using fallback data.", error);
332 }
333

manual-fetcher

@miz•Updated 1 day ago

fake-https1 file match

@blazemcworld•Updated 1 week ago
simple proxy to fetch http urls using https