Skip to content

designcrowd/CandidateTests.Agentic.Maker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Agentic Maker

A fullstack app that uses an AI agent to generate images from natural language prompts. Built with LangGraph (agent orchestration), FastAPI (backend), and Nuxt 4 (frontend).

Agentic Maker

Getting Started

Prerequisites

  • Python 3.12+
  • Node.js 20+
  • pnpm 9+
  • uv (Python package manager)
  • A Google AI API key — get one here

Setup

# 1. Install dependencies
pnpm install
cd backend && uv sync && cd ..

# 2. Configure your API key
cp .env.example .env
# Edit .env and set GOOGLE_API_KEY=your-key-here

# 3. Start the app
pnpm dev

Open http://localhost:3000 in your browser.

Running Tests

pnpm test                  # all tests
cd backend && uv run pytest -v   # backend only
cd frontend && npx vitest --run  # frontend only

How It Works

The backend uses a LangGraph state graph with a single agent node:

START → image_generator → END

A user submits a prompt and a number of variations (1–4). The image_generator node calls the Google Gemini API once per variation and returns the generated images.

API

POST /generate
Field Type Description
prompt string What to generate
variations int Number of image variations (1–4)

Response: { images: [base64...], revised_prompt: string }

Project Structure

├── backend/                    # Python — FastAPI + LangGraph
│   ├── app/
│   │   ├── agents/             # LangGraph graph + node definitions
│   │   ├── models/             # Pydantic request/response schemas + graph state
│   │   ├── prompts/            # Prompt templates
│   │   ├── routes/             # API endpoints
│   │   └── services/           # Gemini API wrapper
│   └── tests/
├── frontend/                   # TypeScript — Nuxt 4 + Vue 3 + Tailwind CSS
│   ├── app/
│   │   ├── components/         # PromptForm, ImagePreview, LoadingProgress
│   │   ├── composables/        # useImageGeneration
│   │   └── pages/              # index.vue
│   └── tests/
├── .env.example                # Environment template
├── package.json                # Monorepo scripts (pnpm workspaces)
└── pnpm-workspace.yaml

Tech Stack

Layer Technology
Agent orchestration LangGraph (Python)
Backend API FastAPI
AI model Google Gemini
Frontend Nuxt 4, Vue 3, Tailwind CSS v4
Monorepo pnpm workspaces
Python tooling uv

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors