Skip to content
hodovaniPublic

About

React and TypeScript engineering workbench. Current project: a streaming Gemini chat prototype built with Next.js, with error handling, retry, and browser-managed API keys. Work in progress.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

30 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Workbench

A portfolio of small, working examples for deliberate TypeScript, systems, and product practice.

Open the prototype · More projects & case studies · LinkedIn / contact

The first interactive project is a guest-first AI chat. Visitors can try it without creating an account; Google sign-in saves separate conversations to Firestore. The static frontend calls a small Cloudflare Worker so a Gemini key does not ship to browsers. The chat UI uses semantic HTML and browser defaults; there is no authored CSS.

The meta/ folder is a learning inventory and service blueprint collection. It may include overlapping topics and is intentionally kept separate from the implemented product scope.

Run locally

pnpm install --frozen-lockfile
pnpm dev

pnpm dev starts both the frontend and local Worker. See the Worker setup for a local-only Gemini key. Run the checks in TESTING.md.

For GitHub Pages, configure repository variables NEXT_PUBLIC_FIREBASE_API_KEY, NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN, NEXT_PUBLIC_FIREBASE_PROJECT_ID, NEXT_PUBLIC_FIREBASE_APP_ID, and NEXT_PUBLIC_CHAT_API_URL. Configure the Worker's GEMINI_API_KEY secret and ALLOWED_ORIGIN separately in Cloudflare. The deploy workflow builds the static app from those public Firebase and Worker URLs; it never receives the Gemini secret.

See the architecture notes for why each pattern is used. This is an independent project. It does not contain an implementation or data from a previous employer.

About

React and TypeScript engineering workbench. Current project: a streaming Gemini chat prototype built with Next.js, with error handling, retry, and browser-managed API keys. Work in progress.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages