About

Why 3D Thunder exists

3D Thunder is an experimental project by Enes K, built on a simple belief: an idea should be able to strike like lightning and become a visible 3D figure — without a complicated modeling workflow.

Fast as lightning. Simple by design.

The name says it: 3D for the form, Thunder for the speed. The best creative tool gets out of your way and lets imagination win. 3D Thunder pairs an AI assistant (Thunder Bot) with an in-browser studio so you can describe, generate, refine, and export a model in one place.

What you can do

  • Generate a 3D model from a plain-language description.
  • Preview and inspect it interactively in your browser.
  • Edit the surface, smooth details, and control dimensions.
  • Save models to a personal collection.
  • Export STL files ready for 3D printing.

Built to experiment

I built 3D Thunder to experiment with 3D agents. A deliberate goal was to separate the 3D agent — the part that holds all the know-how of 3D mesh generation, AI, and post-processing — from the web tool itself. That separation keeps each side cleaner, safer, and more reliable, and it lets the tool stay modern, responsive, and easy to scale.

Under the hood, the agent combines GPT-driven image generation with a modern 3D generation model to produce the meshes. It runs as its own Python service — the FastAPI server the frontend knows as Thunder Bot — and after generation it applies post-processing adjustments to the mesh to encourage a stable, dependable result.

Under the hood

Web studio
Next.js, React, and TypeScript with a Material UI interface.
3D canvas
Three.js, rendered live in your browser for preview and editing.
Data & accounts
PostgreSQL with Prisma, NextAuth sign-in, and Stripe for tokens.
Thunder Bot agent
A separate Python FastAPI service using GPT image generation and Python 3D mesh libraries.

Currently in testing

3D Thunder is in active testing. Results can vary, and every generation helps make the experience more reliable. Guest access lets you try it instantly — no account required.