Search

Results include substring matches and semantically similar vals. Learn more
bladesquad avatar
expositionAgencyPage
@bladesquad
@jsxImportSource https://esm.sh/react
HTTP
[key: string]: string | null;
function ExpolineParticipationForm() {
const [step, setStep] = useState(0);
</div>
function client() {
createRoot(document.getElementById("root")).render(<ExpolineParticipationForm />);
width: 100%;
export default async function server(request: Request): Promise<Response> {
return new Response(`
scottmcclung avatar
myApi
@scottmcclung
An interactive, runnable TypeScript val by scottmcclung
Script
export function myApi(name) {
return "hi " + name;
karkowg avatar
isAaronAtTheBadPlaceYet
@karkowg
Is Aaron Francis at the bad place yet? Periodically check if Aaron Francis has created his account on bsky!
Cron
export default async function () {
const handles = [
"aaronfrancis.com",
saolsen avatar
display_mermaid
@saolsen
Display Mermaid Takes a mermaid document (as a string) and returns an http handler that renders it. Example https://www.val.town/v/saolsen/display_mermaid_example import { displayMermaid } from "https://esm.town/v/saolsen/display_mermaid"; const mermaid = ` sequenceDiagram Alice->>John: Hello John, how are you? John-->>Alice: Great! Alice-)John: See you later! `; export default displayMermaid(mermaid);
Script
/// Create a handler function that displays the mermaid diagram.
export function displayMermaid(mermaid: string): (req: Request) => Response {
function handler(req: Request): Response {
return new Response(
janpaul123 avatar
valle_tmp_543915460990811923753769386621215
@janpaul123
// Initialize sample stories and store them in blob storage
HTTP
// Initialize sample stories and store them in blob storage
const SAMPLE_STORIES_KEY = "hn_realistic_sample_stories";
async function initializeSampleStories() {
const existingStories = await blob.getJSON(SAMPLE_STORIES_KEY);
if (!existingStories) {
dhvanil avatar
web_jvEOd6FdXL
@dhvanil
An interactive, runnable TypeScript val by dhvanil
HTTP
export async function web_jvEOd6FdXL(req) {
return new Response(`<!DOCTYPE html>
<html>
jxyz avatar
myApi
@jxyz
An interactive, runnable TypeScript val by jxyz
Script
export function myApi(name, age) {
return `Hi ${name}, I think you are ${age} years old!`;
dhvanil avatar
web_CtANb5nSp3
@dhvanil
An interactive, runnable TypeScript val by dhvanil
HTTP
export async function web_CtANb5nSp3(req) {
return new Response(`<!DOCTYPE html>
<html>
document.body.appendChild(bubble);
// Add click event for extra pop
document.querySelector('.button').addEventListener('click', function() {
this.style.transform = 'scale(1.5)';
setTimeout(() => this.style.transform = 'scale(1)', 200);
nbbaier avatar
cronLogger
@nbbaier
Log your cron evaluations to sqlite import { cronEvalLogger as logger } from "https://esm.town/v/nbbaier/cronLogger"; const run = async (interval: Interval) => { console.log("your code goes here"); }; export default logger(run);
Script
import { fetchJSON } from "https://esm.town/v/stevekrouse/fetchJSON?v=45";
import { refs } from "https://esm.town/v/stevekrouse/refs?v=11";
type CronFunction = (interval: Interval) => Promise<void>;
export const cronEvalLogger = (cron: CronFunction): CronFunction => {
let interval: Interval;
const cronProxy = new Proxy(cron, {
dhvanil avatar
val_PzOfvxe8Gb
@dhvanil
An interactive, runnable TypeScript val by dhvanil
HTTP
export default async function handler(req) {
try {
const result = await (async () => {
dhvanil avatar
val_A2hBhiEmpp
@dhvanil
An interactive, runnable TypeScript val by dhvanil
HTTP
export default async function handler(req) {
try {
const result = await (async () => {
function fibonacci() {
let a = 0, b = 1;
let result = [];
toowired avatar
logicalIvoryWren
@toowired
@jsxImportSource https://esm.sh/react@18.2.0
Script
import { setupDatabase } from './db';
import { App } from './App';
export default async function server(request) {
await setupDatabase();
const url = new URL(request.url);
ridge avatar
myApi
@ridge
An interactive, runnable TypeScript val by ridge
Script
export function myApi(name) {
return "hi " + name;
toowired avatar
tangibleBrownPtarmigan
@toowired
An interactive, runnable TypeScript val by toowired
Script
import { blob } from '@val.town/utils';
export async function windsurfIDE(args) {
const { type, ...params } = args;
return { error: error.message };
async function handleStartGoal(goal) {
const state = await blob.get('windsurf_state') || {
nextAction: await handleAutoNext()
async function handleCompleteTask(taskId) {
const state = await blob.get('windsurf_state');
nextAction: await handleAutoNext()
async function handleAutoNext() {
const state = await blob.get('windsurf_state');
appliedRules: rules.map(r => r.name)
async function loadMemory(memoryId) {
const state = await blob.get('windsurf_state');
context: state.memories
async function applyRule(rule, target, state) {
// Rule application logic
return { override: false };
function prioritizeTask(task, state, criteria) {
// Task prioritization logic based on rules
rodrigotello avatar
valForm
@rodrigotello
An interactive, runnable TypeScript val by rodrigotello
Script
export function valForm(functionIWantIntoAForm) {
let inputFields = "";
for (let i = 0; i < functionIWantIntoAForm.length; i++) {
inputFields += `<input type="text" id="input${i}" name="input${i}"><br>`;
<script>
document.getElementById('myForm').addEventListener('submit', function(event) {
event.preventDefault();
const args = Array.from(formData.values()).map(Number);
fetch('https://api.val.town/v1/run/rodrigotello.multiplicationFunctionTest', {
method: 'POST',