Skip to content
Back to all projects

AI

RetroChatbot

A themed (GeoCities-90s / 2030-cyberpunk) chatbot that believes it's living in a different decade, powered by the Gemini API.

Demo

LIVEOpen the live site

The deployed project opens in a new tab.

May be asleep

Problem

Experiments with giving an LLM a strong persona and era theme for a playful, differentiated chat experience.

Highlights

  • Two switchable UI themes (90s GeoCities pastiche vs. 2030 cyberpunk)
  • Three.js-rendered 3D hologram figure in the 2030 mode
  • Server-side mode switching; current factual answers delivered in period style

Architecture and notes

A FastAPI backend talks to the Gemini API and serves a static HTML/CSS/JS front end. The mode (1996 or 2030) is switched on the server, current factual answers are delivered in the style of the chosen era, and the 2030 theme renders a Three.js 3D hologram figure.

Live from GitHub

Stars
0
Forks
0
Last updated

Languages

  • Python53.3%
  • JavaScript17.5%
  • CSS15%
  • HTML14.2%

Fetched from the public GitHub API and refreshed hourly.

From the README

Zaman Makinesi — kendini bazen 1996'da, bazen 2030'da sanan bir sohbet botu. Gemini API ile konuşuyor, arayüz FastAPI + düz HTML/CSS/JS üzerine kurulu.

Ne var ne yok

  • 1996 modu: GeoCities esintili, yanıp sönen başlık, "best viewed 800x600" rozetleri, dial-up modem havası. Bot kendini gerçekten o dönemde sanıyor ama güncel bir şey sorulduğunda bilgiyi doğru veriyor, sadece 90'lar üslubuyla anlatıyor.
  • 2030 modu: Neon/cyberpunk tema ve gerçek bir 3D hologram (Three.js ile, tavandan projekte edilen bir insan figürü). Bot bu modda ileri teknoloji diliyle konuşuyor.
  • İki mod arasında geçiş yapan bir buton var, seçim sunucu tarafında saklanıyor (sayfa yenilense de kalıyor).
  • Misafir defteri ve ziyaretçi sayacı — dönemin ruhuna uygun küçük eklentiler.
  • Gemini modeli geçici olarak yoğunluk (503) verirse, otomatik olarak başka bir modele geçip tekrar deniyor.

Kurulum

python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt

.env.example dosyasını .env olarak kopyala ve kendi Gemini API anahtarını gir:

GEMINI_API_KEY=senin-api-anahtarin
GEMINI_MODEL=gemini-3.8-flash

Ardından çalıştır:

uvicorn app.main:app --reload

http://127.0.0.1:8000 üzerinden açılıyor.

Testler

pytest

Kullanılan teknolojiler

FastAPI, Jinja2, google-genai (Gemini API), vanilla JavaScript/CSS, Three.js (sadece 2030 modundaki hologram sahnesi için, CDN üzerinden).

Read the full README on GitHub (opens in a new tab)

Technologies

  • Python
  • FastAPI
  • Gemini API
  • Three.js
  • HTML/CSS/JS