Val Town is a social website to write and deploy JavaScript.
Build APIs and schedule functions from your browser.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
/**
* This val creates an interactive tech stack wizard that generates a video game-style inventory screen.
* It uses React for the UI, leverages emoji and Unicode symbols for a visually rich experience, and
* incorporates Tailwind CSS for elegant, grayscale styling.
* The wizard allows users to select tools, libraries, and APIs, then displays them in a shareable format.
*/
/** @jsxImportSource https://esm.sh/react */
import React, { useState } from "https://esm.sh/react";
import { createRoot } from "https://esm.sh/react-dom/client";
// Define tech options with emojis or Unicode symbols as icons
const techOptions = [
{ name: "React", icon: "โ๏ธ" },
{ name: "Vue", icon: "๐" },
{ name: "Angular", icon: "๐
ฐ๏ธ" },
{ name: "Node.js", icon: "๐ข" },
{ name: "Python", icon: "๐" },
{ name: "TypeScript", icon: "๐ท" },
{ name: "GraphQL", icon: "โป๏ธ" },
{ name: "Docker", icon: "๐ณ" },
{ name: "AWS", icon: "โ๏ธ" },
{ name: "Firebase", icon: "๐ฅ" },
{ name: "D3.js", icon: "๐" },
{ name: "Supabase", icon: "โก" },
{ name: "Fly.io", icon: "๐ชฐ" },
{ name: "Val.town", icon: "๐๏ธ" },
{ name: "OpenAI", icon: "๐ง " },
{ name: "SQLite", icon: "๐๏ธ" },
{ name: "Commander", icon: "๐๏ธ" },
{ name: "Blessed", icon: "๐" },
{ name: "Express", icon: "๐" },
{ name: "MongoDB", icon: "๐" },
{ name: "Redis", icon: "๐ด" },
{ name: "PostgreSQL", icon: "๐" },
{ name: "Kubernetes", icon: "โธ๏ธ" },
{ name: "TensorFlow", icon: "๐งฎ" },
{ name: "Rust", icon: "๐ฆ" },
{ name: "Go", icon: "๐น" },
{ name: "Ruby", icon: "๐" },
{ name: "Rails", icon: "๐ค๏ธ" },
{ name: "Laravel", icon: "๐ช" },
{ name: "Django", icon: "๐ธ" },
{ name: "Flask", icon: "๐งช" },
{ name: "Spring", icon: "๐" },
{ name: "Kotlin", icon: "๐ฏ" },
{ name: "Swift", icon: "๐๏ธ" },
{ name: "Flutter", icon: "๐ฆ" },
{ name: "React Native", icon: "๐ฑ" },
{ name: "Electron", icon: "๐ฌ" },
{ name: "Webpack", icon: "๐ฆ" },
{ name: "Babel", icon: "๐ผ" },
{ name: "Jest", icon: "๐" },
{ name: "Mocha", icon: "โ" },
{ name: "Cypress", icon: "๐ฒ" },
{ name: "Svelte", icon: "๐ฅ" },
{ name: "Next.js", icon: "โญ๏ธ" },
{ name: "Nuxt.js", icon: "๐" },
{ name: "Tailwind CSS", icon: "๐จ" },
{ name: "Bootstrap", icon: "๐ฆ" },
{ name: "Sass", icon: "๐" },
{ name: "Less", icon: "๐" },
{ name: "Styled Components", icon: "๐
" },
{ name: "Gatsby", icon: "๐" },
{ name: "Vite", icon: "โก" },
{ name: "Parcel", icon: "๐ฆ" },
{ name: "Grunt", icon: "๐" },
{ name: "Gulp", icon: "๐ฅค" },
{ name: "Rollup", icon: "๐" },
{ name: "JQuery", icon: "๐ก" },
{ name: "Three.js", icon: "๐" },
{ name: "Phaser", icon: "๐พ" },
{ name: "WebAssembly", icon: "๐ธ๏ธ" },
{ name: "Webpack", icon: "๐ฆ" },
{ name: "Babel", icon: "๐" },
{ name: "Prettier", icon: "โจ" },
{ name: "ESLint", icon: "๐งน" },
{ name: "Hugo", icon: "๐๏ธ" },
{ name: "Jekyll", icon: "๐" },
{ name: "Terraform", icon: "๐๏ธ" },
{ name: "Ansible", icon: "๐" },
{ name: "Chef", icon: "๐จโ๐ณ" },
{ name: "Puppet", icon: "๐งโโ๏ธ" },
{ name: "Vagrant", icon: "๐ฆ" },
{ name: "Prometheus", icon: "๐" },
{ name: "Grafana", icon: "๐" },
{ name: "ElasticSearch", icon: "๐" },
{ name: "Logstash", icon: "๐" },
{ name: "Kibana", icon: "๐" },
{ name: "Jenkins", icon: "๐ ๏ธ" },
{ name: "Travis CI", icon: "๐ง" },
{ name: "CircleCI", icon: "๐" },
{ name: "GitLab CI", icon: "๐ง" },
{ name: "Azure", icon: "๐" },
{ name: "DigitalOcean", icon: "๐ง" },
{ name: "Heroku", icon: "๐" },
{ name: "Netlify", icon: "๐๏ธ" },
{ name: "Vercel", icon: "๐" },
{ name: "Caddy", icon: "๐ชต" },
{ name: "NGINX", icon: "๐ฆ" },