DEV Community

Alex Spinov
Alex Spinov

Posted on

Val Town Has a Free Serverless Platform — Deploy Functions From Your Browser

The Problem With Serverless in 2026

AWS Lambda: 47 clicks to deploy a function. Vercel: needs a git repo. Cloudflare Workers: requires wrangler CLI setup.

You just want to run a function in the cloud. Right now.

Val Town: Functions as a Social Network

Val Town lets you write, run, and share serverless functions directly in your browser. No deploy step. No git. No CLI.

Free Tier

  • Unlimited vals (their name for functions)
  • 10 seconds max execution time
  • 10MB memory
  • Built-in key-value store (SQLite)
  • Cron scheduling included
  • HTTP endpoints with instant URLs

Write a Function in 30 Seconds

Open val.town, type this:

export default function(req: Request): Response {
  return Response.json({
    message: "Hello from Val Town!",
    timestamp: new Date().toISOString()
  })
}
Enter fullscreen mode Exit fullscreen mode

You immediately get a URL like https://username-functionname.web.val.run. Done. It is live.

Why Developers Love It

1. No Deploy Step

Save = Deploy. Every val gets an instant URL. Change the code, the URL serves the new version.

2. Built-in Persistence

import { sqlite } from "https://esm.town/v/std/sqlite"

await sqlite.execute(`CREATE TABLE IF NOT EXISTS visits (ts TEXT)`)
await sqlite.execute(`INSERT INTO visits VALUES (datetime('now'))`)
const count = await sqlite.execute(`SELECT count(*) FROM visits`)
Enter fullscreen mode Exit fullscreen mode

SQLite database included. No setup. No connection strings.

3. Cron Jobs

// This runs every hour automatically
export default async function() {
  const res = await fetch("https://api.example.com/health")
  if (!res.ok) {
    await email("you@email.com", "API is down!")
  }
}
Enter fullscreen mode Exit fullscreen mode

Schedule any val to run on a cron. Monitor APIs, send reports, sync data — all free.

4. Import Anyone's Code

import { fetchJSON } from "https://esm.town/v/stevekrouse/fetchJSON"
Enter fullscreen mode Exit fullscreen mode

Vals are public by default. Import functions from other users like npm packages, but simpler.

Real Use Cases

  • Webhook receivers: Catch Stripe/GitHub/Slack webhooks in 5 lines
  • API monitoring: Cron job that pings your API every 5 minutes
  • Data pipelines: Fetch data from API A, transform, push to API B
  • Prototyping: Test an API idea before building the full service
  • Personal dashboards: Aggregate data from multiple sources

The Limitations

  • 10-second execution limit on free tier
  • No WebSocket support
  • Cold starts (though usually fast)
  • Not for compute-heavy workloads

For quick automations, prototypes, and personal tools — Val Town is hard to beat.

Try It

Go to val.town, sign in with GitHub, and deploy your first function in 60 seconds.


Need to scrape data from websites? I maintain 88+ production scrapers on Apify — Reddit, Trustpilot, HN, Google News, and more. Email spinov001@gmail.com for custom scrapers delivered in 24h.

Top comments (0)