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//%22$%7Burl%7D/%22?q=image&page=8&format=json

For typeahead suggestions, use the /typeahead endpoint:

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

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

Found 12753 results for "image"(1748ms)

Townie.cursorrules2 matches

@SkywalkerUpdated 8 hours ago
178
179- **Redirects:** Use `return new Response(null, { status: 302, headers: { Location: "/place/to/redirect" }})` instead of `Response.redirect` which is broken
180- **Images:** Avoid external images or base64 images. Use emojis, unicode symbols, or icon fonts/libraries instead
181- **AI Image:** To inline generate an AI image use: `<img src="https://maxm-imggenurl.web.val.run/the-description-of-your-image" />`
182- **Storage:** DO NOT use the Deno KV module for storage
183- **Browser APIs:** DO NOT use the `alert()`, `prompt()`, or `confirm()` methods

TownieChatRouteSingleColumn.tsx15 matches

@SkywalkerUpdated 8 hours ago
10import { useCreditBalance } from "../hooks/useCreditBalance.tsx";
11import { Messages } from "./Messages.tsx";
12import { InputBox, ImageDropContainer } from "./InputBox.tsx";
13import { PreviewFrame } from "./PreviewFrame.tsx";
14import { BranchSelect } from "./BranchSelect.tsx";
68 refetch: () => void;
69}) {
70 const [images, setImages] = useState<(string|null)[]>([]);
71 const [selectedFiles, setSelectedFiles] = useState<string[]>([]);
72 const { audio, user } = useContext(AppContext);
88 branchId,
89 selectedFiles,
90 images,
91 soundEnabled: audio,
92 });
137
138 return (
139 <ImageDropContainer
140 running={running}
141 images={images}
142 setImages={setImages}>
143 <div className="single-column-container">
144 <div className="single-sticky-header">
148 rel="norefferer"
149 className="block-link text-link lockup">
150 {project.imageUrl ? (
151 <img src={project.imageUrl} className="image-thumbnail" />
152 ) : user?.profileImageUrl ? (
153 <img
154 src={user.profileImageUrl}
155 className="avatar"
156 alt={user.username}
159 />
160 ) : (
161 <div className="image-placeholder" />
162 )}
163 <div>{project.name}</div>
211 onSubmit={e => {
212 handleSubmit(e);
213 setImages([]);
214 }}
215 onCancel={handleStop}
216 running={running}
217 error={error}
218 images={images}
219 setImages={setImages}
220 />
221 )}
223 </div>
224 </div>
225 </ImageDropContainer>
226 );
227}

vtEditorFilesAGENTS.md2 matches

@jrmann100Updated 9 hours ago
178
179- **Redirects:** Use `return new Response(null, { status: 302, headers: { Location: "/place/to/redirect" }})` instead of `Response.redirect` which is broken
180- **Images:** Avoid external images or base64 images. Use emojis, unicode symbols, or icon fonts/libraries instead
181- **AI Image:** To inline generate an AI image use: `<img src="https://maxm-imggenurl.web.val.run/the-description-of-your-image" />`
182- **Storage:** DO NOT use the Deno KV module for storage
183- **Browser APIs:** DO NOT use the `alert()`, `prompt()`, or `confirm()` methods
157 <div>
158 <label class="block text-sm font-medium text-gray-700 mb-1">
159 Banner Image URL
160 </label>
161 <input type="url" name="banner1_image" id="banner1_image"
162 placeholder="https://example.com/header-banner.jpg"
163 class="w-full px-3 py-2 border border-gray-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-blue-500"
188 <div>
189 <label class="block text-sm font-medium text-gray-700 mb-1">
190 Banner Image URL
191 </label>
192 <input type="url" name="banner2_image" id="banner2_image"
193 placeholder="https://example.com/mid-banner.jpg"
194 class="w-full px-3 py-2 border border-gray-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-green-500"
217 <div>
218 <label class="block text-sm font-medium text-gray-700 mb-1">
219 Banner Image URL
220 </label>
221 <input type="url" name="banner3_image" id="banner3_image"
222 placeholder="https://example.com/pre-footer-banner.jpg"
223 class="w-full px-3 py-2 border border-gray-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-purple-500"
246 <div>
247 <label class="block text-sm font-medium text-gray-700 mb-1">
248 Banner Image URL
249 </label>
250 <input type="url" name="banner4_image" id="banner4_image"
251 placeholder="https://example.com/footer-banner.jpg"
252 class="w-full px-3 py-2 border border-gray-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-orange-500"
389 // Banner preview functionality
390 function updateBannerPreview(bannerNumber) {
391 const imageUrl = document.getElementById(`banner${bannerNumber}_image`).value;
392 const clickUrl = document.getElementById(`banner${bannerNumber}_url`).value;
393 const preview = document.getElementById(`banner${bannerNumber}_preview`);
394
395 if (imageUrl || clickUrl) {
396 let previewHtml = '<div class="border-2 border-dashed border-gray-300 p-3 rounded bg-white">';
397
398 if (imageUrl) {
399 previewHtml += `
400 <img src="${imageUrl}" alt="Banner Preview"
401 class="max-w-full h-16 object-contain mx-auto mb-2 rounded"
402 onerror="this.style.display='none'; this.nextElementSibling.style.display='block';">
403 <div style="display:none;" class="text-gray-500 text-xs text-center">⚠️ Image failed to load</div>
404 `;
405 }
407 if (clickUrl) {
408 previewHtml += `<p class="text-xs text-blue-600 text-center mt-1">🔗 Links to: ${clickUrl}</p>`;
409 } else if (imageUrl) {
410 previewHtml += `<p class="text-xs text-gray-500 text-center mt-1">💡 Add a click URL to make this banner clickable</p>`;
411 }
440 const banners = [];
441 for (let i = 1; i <= 4; i++) {
442 const imageUrl = formData.get(`banner${i}_image`);
443 const clickUrl = formData.get(`banner${i}_url`);
444 if (imageUrl || clickUrl) {
445 banners.push({
446 position: i,
447 imageUrl: imageUrl || '',
448 clickUrl: clickUrl || '',
449 id: `banner_${i}`

spotymain.ts1 match

@skirtownerUpdated 11 hours ago
77 uri: pl.uri,
78 id: pl.id,
79 image: pl.images && pl.images.length > 0 ? pl.images[0].url : null,
80 };
81 }
233 {
234 id: string,
235 type: "paragraph" | "heading_1" | "heading_2" | "heading_3" | "bulleted_list_item" | "numbered_list_item" | "to_do" | "toggle" | "child_page" | "child_database" | "embed" | "image" | "video" | "file" | "pdf" | "bookmark" | "callout" | "quote" | "equation" | "divider" | "table_of_contents" | "column" | "column_list" | "link_preview" | "synced_block" | "template" | "link_to_page" | "table" | "table_row" | "unsupported",
236 created_time: string,
237 last_edited_time: string,

eventsCalendarREADME.md1 match

@roopUpdated 13 hours ago
9ability to munge an arbitrary event webpage → structured data → Notion db.
10
11![seq6.png](https://imagedelivery.net/iHX6Ovru0O7AjmyT5yZRoA/a3ae2e63-e781-4d81-835b-42ae1ba30700/public)
12
13[(source)](https://mermaid.live/edit#pako:eNplkt1um0AQRl9lNFetAm4cjKGoddWfqGqkJpFi9aLiZg1jTMPukN2hbmr53bsbnLSN2Qt24TtzZgQ7rLgmLNDR3UCmok-taqzSpQF_fWC-1crediTxYnHyTXWw5K0p4PP5El69G2z39o1jTUA_yQhsadWrhhYj_JgO5EVrlKdIQDYEnoOKjQRGOQiG2gdHLERjz8R_bV8PgSdozXZUHpuuejLvv3jX9TJOY6MMw7aVDbh7J6Sht6x7gZNDx_-rR_aZ3IkdKhks1VArUfDi4ubqEnj1Y6wrrXQUhZGi8N5vSaqXx31dsrTsy7XGkRV_E4bz0IODejXGx8gzvSU3dMdz_pPouDmkwNd0d10rVBqMsLFtjYVvnyLUZLUKR9yFWiX676CpxMJva1qr4MDS7D3WK_OdWT-Slodmg8Vadc6fhj4MefhJnp5aMjXZjzwYwWI2faiBxQ5_YTGdzydJliZJOsv9Ss7yCO-xyLNJPpumZ8k8y7PXp_l8H-HvB-vpJM_S_R_n7te3)

TopTenVideosoutput-generator.js5 matches

@pmapowerUpdated 14 hours ago
147 */
148 generateBasicAd(ad) {
149 if (!ad.imageUrl && !ad.clickUrl && !ad.title) return '';
150
151 const wrapperStart = ad.clickUrl ?
166 <div class="text-center">
167 ${ad.title ? `<h3 class="text-xl font-semibold text-gray-800 mb-4">${ad.title}</h3>` : ''}
168 ${ad.imageUrl ? `
169 <div class="mb-4">
170 <img src="${ad.imageUrl}"
171 alt="${ad.title || 'Advertisement'}"
172 class="max-w-full h-48 object-contain mx-auto rounded-lg shadow-sm"
405 <div class="text-center">
406 \${ad.title ? \`<h3 class="text-xl font-semibold text-gray-800 mb-4">\${ad.title}</h3>\` : ''}
407 \${ad.imageUrl ? \`
408 <div class="mb-4">
409 <img src="\${ad.imageUrl}"
410 alt="\${ad.title || 'Advertisement'}"
411 class="max-w-full h-48 object-contain mx-auto rounded-lg shadow-sm"

TopTenVideospremium-input-iframe.html7 matches

@pmapowerUpdated 14 hours ago
165 <div class="grid grid-cols-1 md:grid-cols-2 gap-3">
166 <div>
167 <label class="block text-xs font-medium text-gray-700 mb-1">Image URL</label>
168 <input type="url" name="adImageUrl_1" class="ad-image-input w-full px-2 py-1 border border-gray-300 rounded text-sm focus:outline-none focus:ring-1 focus:ring-purple-500"
169 placeholder="https://example.com/ad.jpg">
170 </div>
344 <div class="grid grid-cols-1 md:grid-cols-2 gap-3">
345 <div>
346 <label class="block text-xs font-medium text-gray-700 mb-1">Image URL</label>
347 <input type="url" name="adImageUrl_${slotNumber}" class="w-full px-2 py-1 border border-gray-300 rounded text-sm focus:outline-none focus:ring-1 focus:ring-purple-500" placeholder="https://example.com/ad.jpg">
348 </div>
349 <div>
404 document.querySelectorAll('.ad-slot').forEach(slot => {
405 const slotNumber = slot.dataset.slot;
406 const imageUrl = formData.get(`adImageUrl_${slotNumber}`);
407 const clickUrl = formData.get(`adClickUrl_${slotNumber}`);
408 const title = formData.get(`adTitle_${slotNumber}`);
409 const weight = parseInt(formData.get(`adWeight_${slotNumber}`)) || 5;
410
411 if (imageUrl || clickUrl || title) {
412 adSlots.push({
413 id: `ad_${slotNumber}`,
414 imageUrl, clickUrl, title, weight, slotNumber
415 });
416 }

TopTenVideosfree-input-iframe.html5 matches

@pmapowerUpdated 14 hours ago
97 <div class="space-y-3">
98 <div>
99 <label for="adImageUrl" class="block text-sm font-medium text-gray-700 mb-1">
100 Advertisement Image URL
101 </label>
102 <input type="url" id="adImageUrl" name="adImageUrl"
103 placeholder="https://example.com/ad-banner.jpg"
104 class="w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500">
231 const subNiche = formData.get('subNiche');
232 const customSubNiche = formData.get('customSubNiche');
233 const adImageUrl = formData.get('adImageUrl');
234 const adClickUrl = formData.get('adClickUrl');
235 const adTitle = formData.get('adTitle');
244 subNiche: finalSubNiche,
245 advertisement: {
246 imageUrl: adImageUrl,
247 clickUrl: adClickUrl,
248 title: adTitle

ImageThing

@refactorizedUpdated 2 days ago

Gemini-Image-Banana-012 file matches

@aibotcommanderUpdated 3 days ago
Chrimage
Atiq
"Focal Lens with Atig Wazir" "Welcome to my photography journey! I'm Atiq Wazir, a passionate photographer capturing life's beauty one frame at a time. Explore my gallery for stunning images, behind-the-scenes stories, and tips & tricks to enhance your own