Search

Results include substring matches and semantically similar vals. Learn more
maxm avatar
sqlite_explorer
@maxm
An interactive, runnable TypeScript val by maxm
HTTP (deprecated)
export { default } from "https://esm.town/v/nbbaier/sqliteExplorerApp?v=86";
lawrencewu avatar
myApi
@lawrencewu
An interactive, runnable TypeScript val by lawrencewu
Script
export function myApi(name) {
return "hi " + name;
ray1214 avatar
uuid
@ray1214
// Forked from @yieldray.uuid
Script
export async function uuid(req: express.Request, res: express.Response) {
res.send(crypto.randomUUID());
// Forked from @yieldray.uuid
gueejla avatar
castspell
@gueejla
Temporary way of adding new mathemagic spells
Script
Temporary way of adding new mathemagic spells
// Clear spells
const spells = {
"square root": {
"url": "https://gueejla-squareroot.web.val.run/",
"emoji": "U+1FADA",
"arithmetic series": {
"url": "https://gueejla-arithmeticseries.web.val.run/",
"emoji": "U+2795",
for (const spell in spells) {
igor avatar
consoleEmailEx
@igor
An interactive, runnable TypeScript val by igor
Script
export let consoleEmailEx = (() => {
//console.email("message"); // any JSON object can be the message
console.email({ html: "<h1>hello html emails!</h1>" }); // you can send HTML emails
// console.email({ hi: "there" }, "Subject Line"); // optional second arg is the subject line
// console.email({ html: "<b>hi!</b>", subject: "Subject accepted here too" });
return "return";
console.log(this);
ajax avatar
emailResume
@ajax
An interactive, runnable TypeScript val by ajax
Script
import { resume } from "https://esm.town/v/ajax/resume";
export const emailResume = console.email(resume);
stevekrouse avatar
expressContentTypeTest
@stevekrouse
An interactive, runnable TypeScript val by stevekrouse
Script
export function expressContentTypeTest(req, res) {
res.send(req.body.a.b);
stevekrouse avatar
awesome
@stevekrouse
Awesome Val Town An curated list of useful community vals. Feel free to create your own awesome list! Apps @pomdtr/blob_editor @nbbaier/sqliteExplorerApp View and interact with your Val Town SQLite data. @pomdtr/http_client Attach a postman-like http client to your vals VS Code Extension vt Chrome Extension Tooling Authentication @pomdtr/basicAuth @pomdtr/email_auth @pomdtr/password_auth Sqlite @sqlite/db @pomdtr/sql @pomdtr/kv @postpostscript/sqliteUniverse Blob @stevekrouse/blobAdmin @pomdtr/lowdb Middleware @andreterron/codeOnValTown Testing @pomdtr/test_explorer Api @pomdtr/api @pomdtr/trpc Other @vladimyr/valshot @pomdtr/mdx @pomdtr/serve_readme OpenAI @pomdtr/ask_ai Web Components Val Town Playground CodeMirror
HTTP (deprecated)
# Awesome Val Town
An curated list of useful community vals. Feel free to create your own awesome list!
## Apps
- @pomdtr/blob_editor
- @nbbaier/sqliteExplorerApp View and interact with your Val Town SQLite data.
- @pomdtr/http_client Attach a postman-like http client to your vals
- [VS Code Extension](https://github.com/pomdtr/val-town-vscode)
- [vt](https://github.com/pomdtr/vt)
const { author, name } = await extractValInfo(import.meta.url);
export default serveReadme({ val: { author, name } });
vladimyr avatar
appendFragment_example
@vladimyr
An interactive, runnable TypeScript val by vladimyr
HTTP (deprecated)
const { author, name } = extractValInfo(import.meta.url);
const html = `<html>
<head>
<title>test</title>
</head>
<body>
<p><code>@vladimyr/appendFragment</code> test</p>
</body>
</html>
`.trim();
onemanwenttomow avatar
getGithubTeamCommitHistories
@onemanwenttomow
An interactive, runnable TypeScript val by onemanwenttomow
Script
export const getGithubTeamCommitHistories = async (members) => {
const { Octokit } = await import("npm:@octokit/core");
const octokit = new Octokit({
auth: process.env.githubToken,
const memberEvents = await Promise.all(
members.map((member) => octokit.request(`GET /users/${member}/events`)),
const memberCommits = memberEvents.map(({ url, data }) => {
const commits = data.filter((event) => event.type === "PushEvent")
.map((event) => ({
repo: event.repo.name,
healeycodes avatar
hnTopStoryLatest
@healeycodes
// set by healeycodes.untitled_q2nnNUYi at 2023-04-20T13:58:41.058Z
Script
// set by healeycodes.untitled_q2nnNUYi at 2023-04-20T13:58:41.058Z
export let hnTopStoryLatest = {
"foo": "bar"
sdan avatar
weatherDescription
@sdan
// Forked from @csshsh.weatherDescription
Script
import { fetch } from "https://esm.town/v/std/fetch";
export const weatherDescription = async (
params: string[],
): Promise<unknown> => {
let data = await fetch(`https://wttr.in/${params["city"]}?format=j1`);
let jsonData = await data.json();
return `${params["city"]}: ${
jsonData["current_condition"][0]["FeelsLikeC"]
}, ${jsonData["current_condition"][0]["weatherDesc"][0]["value"]}`;
// Forked from @csshsh.weatherDescription
stevekrouse avatar
exampleHTTP
@stevekrouse
An interactive, runnable TypeScript val by stevekrouse
HTTP (deprecated)
export function handler(request: Request) {
return Response.json({ ok: true });
abc3354 avatar
counter
@abc3354
An interactive, runnable TypeScript val by abc3354
Script
import { state as state2 } from "https://esm.town/v/abc3354/state";
export const counter = async function () {
const [state, setState] = await state2("abc3354/counter", {
count: 0,
state.count++;
setState(state);
return state.count;
stevekrouse avatar
exampleNanoId
@stevekrouse
An interactive, runnable TypeScript val by stevekrouse
Script
import { nanoid } from "https://esm.town/v/stevekrouse/nanoid";
export let exampleNanoId = nanoid();