Search

Results include substring matches and semantically similar vals. Learn more
hbd avatar
myApi
@hbd
An interactive, runnable TypeScript val by hbd
Script
export function myApi(name) {
return "hi " + name;
stevekrouse avatar
runAllTests2
@stevekrouse
An interactive, runnable TypeScript val by stevekrouse
Script
import { TEST_API } from "https://esm.town/v/stevekrouse/TEST_API";
import { fetchJSON } from "https://esm.town/v/stevekrouse/fetchJSON";
export async function runAllTests2({ names }: { names: string[] }) {
return names.map((name) =>
fetchJSON(`${TEST_API}/eval/@stevekrouse.${name}()`)
dnbrwstr avatar
myApi
@dnbrwstr
An interactive, runnable TypeScript val by dnbrwstr
Script
export function myApi(name) {
return "hi " + name;
johndturn avatar
quotableApiProxy
@johndturn
Quotable API Proxy Small HTTP proxy to the Quotable API ( https://api.quotable.io ). I built this due to some DNSSEC issues that the Quotable API is currently experiencing. See this Github issue here for more information.
HTTP
import { fetch } from "https://esm.town/v/std/fetch";
export default async function proxy(req: Request) {
const resp = await fetch(
"http://api.quotable.io/quotes/random?limit=1",
fdurham avatar
myApi
@fdurham
An interactive, runnable TypeScript val by fdurham
Script
export function myApi(name) {
return "hi " + name;
speepo avatar
myApi
@speepo
An interactive, runnable TypeScript val by speepo
Script
export function myApi(name) {
return "hi " + name;
neverstew avatar
raw
@neverstew
// Forked from @pomdtr.raw
Script
import { fetchJSON } from "https://esm.town/v/stevekrouse/fetchJSON?v=41";
export async function raw(val: `@${string}.${string}`) {
const [owner, name] = val.slice(1).split(".") as string[];
return fetchJSON(
cyrilos avatar
tronpickLoop
@cyrilos
// handle incoming requests
Script
const VAL_URL = "https://cyrilos-tronpickloop.web.val.run";
// handle incoming requests
export default async function(req) {
const PLATFORM = "tronpick.io";
// const cookies = await blob.getJSON("platforms");
tehmantra avatar
kaiterra_prometheus
@tehmantra
// Fetches air quality sensor data from Kaiterra in prometheus line format
Script
import { fetch } from "https://esm.town/v/std/fetch";
// Fetches air quality sensor data from Kaiterra in prometheus line format
export async function kaiterra_prometheus(
req: express.Request,
res: express.Response,
let prometheus_data = kiosk_data.indoor.flatMap((indoor_data) =>
indoor_data.data.flatMap((data) =>
data.points.flatMap(function (point) {
let timestamp = new Date(point.ts).getTime();
let param_name = data.param.replace("-", "_");
maxm avatar
hnhiringStats
@maxm
Scrapes hnhiring.com for the total count of job postings in every Who's Hiring post on Hacker News: 194 jobs, january 2025 337 jobs, december 2024 325 jobs, november 2024 342 jobs, october 2024 311 jobs, september 2024 328 jobs, august 2024 384 jobs, july 2024 351 jobs, june 2024 418 jobs, may 2024 306 jobs, april 2024 313 jobs, march 2024 356 jobs, february 2024 294 jobs, january 2024 337 jobs, december 2023 388 jobs, november 2023 353 jobs, october 2023 318 jobs, september 2023 367 jobs, august 2023 342 jobs, july 2023 358 jobs, june 2023 423 jobs, may 2023 380 jobs, april 2023 434 jobs, march 2023 465 jobs, february 2023 386 jobs, january 2023 505 jobs, december 2022 544 jobs, november 2022 481 jobs, october 2022 529 jobs, september 2022 664 jobs, august 2022 556 jobs, july 2022 753 jobs, june 2022 792 jobs, may 2022 771 jobs, april 2022 829 jobs, march 2022 841 jobs, february 2022 686 jobs, january 2022 788 jobs, december 2021 993 jobs, november 2021 816 jobs, october 2021 958 jobs, september 2021 882 jobs, august 2021 921 jobs, july 2021 1022 jobs, june 2021 888 jobs, may 2021 918 jobs, april 2021 945 jobs, march 2021 979 jobs, february 2021
Script
import cheerio from "https://esm.sh/cheerio@1.0.0-rc.12";
async function fetchJobCount(url: string): Promise<{ count: number; month: string; year: string } | null> {
try {
return null;
function* generateUrls(startDate: Date): Generator<string, void, unknown> {
const months = [
currentDate.setMonth(currentDate.getMonth() - 1);
export default async function scrapeHNHiring() {
const startDate = new Date(2025, 0); // January 2025
dhvanil avatar
val_9knOr9vyzB
@dhvanil
An interactive, runnable TypeScript val by dhvanil
HTTP
export async function val_9knOr9vyzB(req) {
try {
// Execute the code directly and capture its result
yieldray avatar
translate
@yieldray
Translator using a public deepl api
HTTP
if (import.meta.main) Deno.serve(translate);
export async function translate(req: Request) {
if (req.method === "POST") {
translation: "",
translate = async function () {
this.setState({ loading: true, translation: "" });
}.bind(this);
swap = function () {
if (this.state.source_lang.toLowerCase() === "auto") {
}.bind(this);
handleShortcut = function (e) {
if (this.state.loading !== true && e.ctrlKey && e.key === "Enter") {
render(html\`<\${App} page="All" />\`, document.body);
async function translate({ text, source_lang, target_lang }) {
const Options = z.object({
stevekrouse avatar
hello_world
@stevekrouse
An interactive, runnable TypeScript val by stevekrouse
HTTP
export default async function(req: Request): Promise<Response> {
return Response.json("hello world!");
fdterr avatar
myApi
@fdterr
An interactive, runnable TypeScript val by fdterr
Script
export function myApi(name) {
return "hi " + name;
moschan avatar
myApi
@moschan
An interactive, runnable TypeScript val by moschan
Script
export function myApi(name) {
return "hi " + name;