1dynamic og image
2db
3react-query
HonoReactTailwindStarterREADME.md4 matches
1# React Hono Starter
23This app is a starter template for client-side React and server-side Hono.
45- **Remix** this starter template on the top right to get started.
7- The **entrypoint** is `/backend/index.ts`. That's the backend HTTP server, which also serves the all the frontend assets.
89- The **client-side entrypoint** is `/frontend/index.html`, which in turn imports `/frontend/index.tsx`, which in turn imports the React app from `/frontend/App.tsx`.
1011[React Hono Example](https://www.val.town/x/stevekrouse/reactHonoExample) is a fuller featured example project, with a SQLite database table, queries, client-side CSS and a favicon, and some shared code that runs on both client and server.
HonoReactTailwindStarterindex.tsx3 matches
1/** @jsxImportSource https://esm.sh/react@19 */
2import { createRoot } from "https://esm.sh/react-dom@19/client";
3import { BrowserRouter } from "https://esm.sh/react-router@7";
4import { App } from "./App.tsx";
5
4<meta charset="UTF-8">
5<meta name="viewport" content="width=device-width, initial-scale=1.0">
6<title>React Hono Val Town Starter</title>
7<!-- <link rel="stylesheet" href="/public/style.css"> -->
8<!-- <link rel="icon" href="/public/favicon.svg" sizes="any" type="image/svg+xml"> -->
HonoReactTailwindStarterExample.tsx3 matches
1/** @jsxImportSource https://esm.sh/react@19 */
2import { useState } from "https://esm.sh/react@19";
34export function Example() {
6return (
7<div class="p-4 ">
8<h1 class="text-3xl font-semibold mb-2">Val Town React + Hono Starter</h1>
9<div class="opacity-50 mb-4">Hello world...</div>
10<div class="my-10">
cloudAdjustermain.tsx4 matches
1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2import { createRoot } from "https://esm.sh/react-dom@18.2.0/client";
3import React, { useEffect, useRef, useState } from "https://esm.sh/react@18.2.0";
45// --- Vertex Shader (Simple pass-through) ---
139}
140141// --- React Component ---
142function App() {
143const canvasRef = useRef<HTMLCanvasElement>(null);
charBuildFewCLoudsmain.tsx4 matches
1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2import { createRoot } from "https://esm.sh/react-dom@18.2.0/client";
3import React, { useEffect, useRef } from "https://esm.sh/react@18.2.0";
45// --- Vertex Shader (Simple pass-through) ---
139`;
140141// --- React Component ---
142function App() {
143const canvasRef = useRef<HTMLCanvasElement>(null);
charBuildCloudsmain.tsx4 matches
1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2import { createRoot } from "https://esm.sh/react-dom@18.2.0/client";
3import React, { useEffect, useRef } from "https://esm.sh/react@18.2.0";
45// --- Vertex Shader (Simple pass-through) ---
140`;
141142// --- React Component ---
143function App() {
144const canvasRef = useRef<HTMLCanvasElement>(null);
o3AIVoiceVisualmain.tsx5 matches
1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2import { createRoot } from "https://esm.sh/react-dom@18.2.0/client";
3import React, { useEffect, useRef } from "https://esm.sh/react@18.2.0"; // Removed useState as amp state not used
45// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
7374// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
75// React component (Corrected render function scope)
76// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
77312}}
313>
314Radial Bloom (Mic Reactive) - Based on o3 example
315</div>
316</div>
geminiVoiceViz2main.tsx10 matches
1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2import { createRoot } from "https://esm.sh/react-dom@18.2.0/client";
3import React, { useEffect, useRef, useState } from "https://esm.sh/react@18.2.0";
45// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
14`;
1516// Fragment Shader: Tweaked "Reactive Starfield" with Radial Bloom & Color Emphasis
17const fragmentShaderSource = `
18// Visual Design: Gemini / Google AI
9596// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
97// React component (using o3's audio capture structure + inertia smoothing)
98// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
99192// --- Audio Processing Loop (with Inertia Smoothing) ---
193let lastSmoothedVolume = 0.0;
194const attackFactor = 0.35; // How quickly volume reacts going up (0-1)
195const decayFactor = 0.06; // How quickly volume reacts going down (0-1, lower=slower)
196const gain = 5.5; // Microphone sensitivity gain
197263// --- Cleanup ---
264return () => {
265console.log("Cleaning up Reactive Starfield Bloom...");
266if (webGLAnimFrameId) cancelAnimationFrame(webGLAnimFrameId);
267if (audioProcessorIdRef.current) cancelAnimationFrame(audioProcessorIdRef.current); // Stop audio loop too
296}}
297>
298Reactive Starfield Bloom by Gemini / Google AI <br /> (Mic Reactive w/ Inertia)
299</div>
300</div>
323<meta charset="UTF-8">
324<meta name="viewport" content="width=device-width, initial-scale=1.0">
325<title>Mic Reactive Starfield Bloom</title>
326<style>${css}</style>
327</head>