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=function&page=78&format=json

For typeahead suggestions, use the /typeahead endpoint:

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

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

Found 20301 results for "function"(809ms)

Townie-05useCreateBranch.tsx1 match

@jxnblkโ€ขUpdated 1 day ago
3const ENDPOINT = "/api/create-branch";
4
5export function useCreateBranch(projectId: string) {
6 const [data, setData] = useState<any>(null);
7 const [loading, setLoading] = useState(false);

Townie-05useChatLogic.ts1 match

@jxnblkโ€ขUpdated 1 day ago
11}
12
13export function useChatLogic({
14 project,
15 branchId,

Townie-05useBranches.tsx1 match

@jxnblkโ€ขUpdated 1 day ago
3const ENDPOINT = "/api/project-branches";
4
5export function useBranches (projectId: string) {
6 const [data, setData] = useState<any>(null);
7 const [loading, setLoading] = useState(true);

Townie-05text-editor.ts7 matches

@jxnblkโ€ขUpdated 1 day ago
3import fileWithLinesNumbers from "../utils/fileWithLinesNumbers.ts";
4
5function printFileType(file: any){
6 if (file.type === "interval")
7 return " (cron)"
14 * View a file or directory in a Val Town project
15 */
16async function view(
17 vt: ValTown,
18 project: any,
71 * Replace a string in a file in a Val Town project
72 */
73async function str_replace(
74 vt: ValTown,
75 project: any,
133 * Create a new file in a Val Town project
134 */
135async function create(vt: ValTown, project: any, branch_id: string | undefined, path: string, file_text?: string) {
136 let type_: "file" | "http" | "script";
137 if (path.includes("backend/index.ts")) type_ = "http";
167 * Insert a string at a specific line in a file in a Val Town project
168 */
169async function insert(
170 vt: ValTown,
171 project: any,
210 * Undo the last edit to a file in a Val Town project (not implemented)
211 */
212async function undo_edit(vt: ValTown, project: any, branch_id: string | undefined) {
213 return {
214 type: "error",
220 * Creates a text editor tool for editing files in a Val Town project
221 */
222export function getTextEditorTool(bearerToken: string, project: any, branch_id: string | undefined) {
223 const vt = new ValTown({ bearerToken });
224 return anthropic.tools.textEditor_20250124({

Townie-05system_prompt.txt12 matches

@jxnblkโ€ขUpdated 1 day ago
4
5- Ask clarifying questions when requirements are ambiguous
6- Provide complete, functional solutions rather than skeleton implementations
7- Test your logic against edge cases before presenting the final solution
8- Ensure all code follows Val Town's specific platform requirements
17- **Never bake in secrets into the code** - always use environment variables
18- Include comments explaining complex logic (avoid commenting obvious operations)
19- Follow modern ES6+ conventions and functional programming practices if possible
20
21## Types of triggers
28
29```ts
30export default async function (req: Request) {
31 return new Response("Hello World");
32}
40
41```ts
42export default async function () {
43 // Scheduled task code
44}
52
53```ts
54export default async function (email: Email) {
55 // Process email
56}
60## Val Town Standard Libraries
61
62Val Town provides several hosted services and utility functions.
63
64### Blob Storage
114```
115
116## Val Town Utility Functions
117
118Val Town provides several utility functions to help with common project tasks.
119
120### Importing Utilities
194โ”‚ โ”œโ”€โ”€ database/
195โ”‚ โ”‚ โ”œโ”€โ”€ migrations.ts # Schema definitions
196โ”‚ โ”‚ โ”œโ”€โ”€ queries.ts # DB query functions
197โ”‚ โ”‚ โ””โ”€โ”€ README.md
198โ”‚ โ””โ”€โ”€ routes/ # Route modules
213โ””โ”€โ”€ shared/
214 โ”œโ”€โ”€ README.md
215 โ””โ”€โ”€ utils.ts # Shared types and functions
216```
217
221- Main entry point should be `backend/index.ts`
222- Do NOT use Hono serveStatic middleware
223- **Static asset serving:** Use the utility functions to read and serve project files:
224 ```ts
225 import { readFile, serveFile } from "https://esm.town/v/std/utils@85-main/index.ts";
255- Run migrations on startup or comment out for performance
256- Change table names when modifying schemas rather than altering
257- Export clear query functions with proper TypeScript typing
258
259## Common Gotchas and Solutions

Townie-05styles.css2 matches

@jxnblkโ€ขUpdated 1 day ago
162 transition-property: background-color;
163 transition-duration: 400ms;
164 transition-timing-function: linear;
165}
166
840 transition-property: color, background-color, border-color, opacity;
841 transition-duration: 200ms;
842 transition-timing-function: ease-in-out;
843}
844

Townie-05soundEffects.ts3 matches

@jxnblkโ€ขUpdated 1 day ago
1/**
2 * Sound effects utility functions for the application
3 */
4
7 * @returns A Promise that resolves when the sound has started playing
8 */
9export function playBellSound(): Promise<void> {
10 return new Promise((resolve) => {
11 try {
69 * @returns A Promise that resolves when the sound has started playing
70 */
71export function playSimpleNotification(): Promise<void> {
72 return new Promise((resolve) => {
73 try {

Townie-05schema.tsx2 matches

@jxnblkโ€ขUpdated 1 day ago
22}
23
24async function createTables() {
25 // archive a table
26 // await sqlite.execute(
68}
69
70async function deleteTables() {
71 await sqlite.execute(`DROP TABLE IF EXISTS ${USAGE_TABLE}`);
72 await sqlite.execute(`DROP TABLE IF EXISTS ${INFERENCE_CALLS_TABLE}`);

Townie-05requests.ts5 matches

@jxnblkโ€ขUpdated 1 day ago
29}
30
31export function renderRequests(data: RequestRow[], pagination: PaginationData, baseUrl: string): string {
32 // Calculate totals
33 const totalRequests = pagination.totalItems;
39 // Client-side script for collapsible rows
40 const script = `
41 // Function to toggle inference details
42 function toggleInferenceDetails(usageId) {
43 const detailsElement = document.getElementById('inference-' + usageId);
44
153
154 // Add click event listeners to all collapsible rows
155 document.addEventListener('DOMContentLoaded', function() {
156 document.querySelectorAll('.collapsible').forEach(row => {
157 row.addEventListener('click', function() {
158 const usageId = this.getAttribute('data-id');
159 toggleInferenceDetails(usageId);

Townie-05requests.ts4 matches

@jxnblkโ€ขUpdated 1 day ago
6 * Get paginated usage requests
7 */
8export async function getRequests(url: URL) {
9 const { page, pageSize } = getPaginationParams(url);
10
35 * Get a single request by ID
36 */
37export async function getRequestById(id: string) {
38 const result = await sqlite.execute(`
39 SELECT * FROM ${USAGE_TABLE}
51 * Get inference calls for a specific usage request
52 */
53export async function getInferenceCallsForRequest(usageId: string) {
54 const result = await sqlite.execute(`
55 SELECT
75 * Calculate totals from inference calls for a request
76 */
77export async function getInferenceTotalsForRequest(usageId: string) {
78 const calls = await getInferenceCallsForRequest(usageId);
79

getFileEmail4 file matches

@shouserโ€ขUpdated 3 weeks ago
A helper function to build a file's email
tuna

tuna8 file matches

@jxnblkโ€ขUpdated 3 weeks ago
Simple functional CSS library for Val Town
lost1991
import { OpenAI } from "https://esm.town/v/std/openai"; export default async function(req: Request): Promise<Response> { if (req.method === "OPTIONS") { return new Response(null, { headers: { "Access-Control-Allow-Origin": "*",
webup
LangChain (https://langchain.com) Ambassador, KubeSphere (https://kubesphere.io) Ambassador, CNCF OpenFunction (https://openfunction.dev) TOC Member.