89 .voice-select {
90 @apply appearance-none border border-gray-300 rounded-md shadow-sm pl-3 pr-10 py-2 text-base focus:outline-none focus:ring-blue-500 focus:border-blue-500 sm:text-sm;
91 background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
92 background-position: right 0.5rem center;
93 background-repeat: no-repeat;
24
25redirects.set("/avatar", "https://jxnblk-avatar.web.val.run/");
26redirects.set("/images/avatar.png", "https://jxnblk-avatar.web.val.run/");
27redirects.set("/avatar.png", "https://jxnblk-avatar.web.val.run/");
28
10 href="/public/favicon.svg"
11 sizes="any"
12 type="image/svg+xml"
13 >
14 </head>
1# Timeline
2
3
4
5An online version of a simple game. You start with a deck of cards - each card is a historical event. Everyone picks a card and has to arrange it in chronological order. For two players and up!
7 <script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>
8 <script src="https://esm.town/v/std/catch"></script>
9 <link rel="icon" href="/public/favicon.svg" type="image/svg+xml">
10 <link rel="preconnect" href="https://fonts.googleapis.com">
11 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
1# Timeline
2
3
4
5An online version of a simple game. You start with a deck of cards - each card is a historical event. Everyone picks a card and has to arrange it in chronological order. For two players and up!
7 <script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>
8 <script src="https://esm.town/v/std/catch"></script>
9 <link rel="icon" href="/public/favicon.svg" type="image/svg+xml">
10 <link rel="preconnect" href="https://fonts.googleapis.com">
11 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9 bearerToken: string;
10 selectedFiles: string[];
11 images: (string | null)[];
12 soundEnabled: boolean;
13}
19 bearerToken,
20 selectedFiles,
21 images,
22 soundEnabled,
23}: UseChatLogicProps) {
41 anthropicApiKey,
42 selectedFiles,
43 images: images
44 .filter((img): img is string => {
45 const isValid = typeof img === "string" && img.startsWith("data:");
46 if (!isValid && img !== null) {
47 console.warn("Invalid image format:", img?.substring(0, 50) + "...");
48 }
49 return isValid;
20 - [x] File write as a code embed
21 - [x] str_replace as a diff view
22- [x] make image drop area invisible and bigger
23- [x] Give it all the code (except maybe .txt files) as initial context (like cursor sonnet max)
24- [x] I seem to have lost the delete file tool and instructions, try to find them back in history or re-create?
12- If a section of code that you're working on is getting too complex, consider refactoring it into subcomponents
13
14## Image Handling
15
16- When users upload images, carefully analyze them to understand their content
17- Reference specific details from the images in your responses
18- If multiple images are uploaded, consider their relationship to each other
19- For code-related images (screenshots, diagrams), extract relevant information and incorporate it into your solutions
20- For UI mockups or design images, use them as reference for layout and design, use the colors from the image
21- When images contain text or code, transcribe relevant portions as needed
22- If image content is unclear, ask clarifying questions about what the user wants you to focus on
23
24## Technical Requirements
95## Val Town Platform Specifics
96- **Redirects:** Use `return new Response(null, { status: 302, headers: { Location: "/place/to/redirect" }})` instead of `Response.redirect` which is broken
97- **Images:** Avoid external images or base64 images. Use emojis, unicode symbols, or icon fonts/libraries instead
98- For AI-generated images, use: `https://maxm-imggenurl.web.val.run/the-description-of-your-image`
99- **Storage:** DO NOT use the Deno KV module for storage
100- **Browser APIs:** DO NOT use the `alert()`, `prompt()`, or `confirm()` methods