author: Unstacked Labs summary: Complete setup guide for building modern AI applications with Google's cutting-edge technologies id: docs categories: AI,Development,Google Cloud,Genkit,Agent Development Kit environments: Web status: Published feedback link: https://github.com/unstacked/unstacked-onboarding-workshop/issues analytics account:
Welcome to Build with AI by Unstacked Labs! This setup guide will prepare your development environment for building modern AI applications with Google's cutting-edge technologies.
Get ready to create incredible AI applications using three powerful Google AI technologies:
🔥 Genkit (TypeScript) - Build conversational AI chatbots, content generators, and intelligent workflows
- Example: AI-powered story writer that creates personalized narratives
- Example: Smart customer service bot with context awareness
- Example: Content summarizer for documents and articles
🐍 Agent Development Kit (Python) - Create sophisticated AI agents and automation systems
- Example: Intelligent data analysis agent that generates insights from spreadsheets
- Example: Multi-step research assistant that gathers and synthesizes information
- Example: Smart scheduling agent that coordinates meetings across timezones
☁️ Google Cloud Vertex AI - Deploy and scale your AI models in the cloud
- Example: Image recognition system for product categorization
- Example: Real-time sentiment analysis for social media monitoring
- Example: Predictive analytics dashboard for business intelligence
This guide focuses on environment setup only. The actual coding tutorials, step-by-step projects, and hands-on codelabs will be provided during the workshop sessions.
Your goal: Complete this setup to be ready for an incredible learning experience!
For detailed schedule information and registration, visit: Build with AI Workshop
- Operating System: Windows 10+ (ends October 14, 2025), macOS 12+ (Monterey or later), or Ubuntu 20.04+ LTS (Ubuntu 18.04 ended standard support June 2023)
- RAM: 8GB minimum, 16GB recommended
- Storage: 10GB free space
- Internet: Stable broadband connection
- Browser: Chrome, Firefox, Safari, or Edge (latest versions)
This workshop provides setup instructions for:
- 🪟 Windows 10/11 (with WSL2 support)
- 🍎 macOS (Intel and Apple Silicon)
- 🐧 Linux (Ubuntu, Debian, CentOS, Fedora)
Don't have a powerful machine or facing installation issues? We've got you covered with cloud-based alternatives:
-
🔥 Firebase Studio - Cloud-based development environment with zero setup required
- Perfect for Genkit development without local Node.js installation
- Access from any device with a browser
- Pre-configured templates ready to use
-
💻 GitHub Codespaces - Full VS Code environment in the cloud
- Works for all three platforms (Genkit, ADK, Vertex AI)
- Free tier includes 60 hours per month
- No local installation needed
-
💬 Discord Community - Join our support server for:
- Real-time help with setup issues
- Community troubleshooting
- Collaboration and project sharing
- Join our Discord
These alternatives ensure everyone can participate regardless of their hardware limitations!
- Choose your operating system section below
- Follow the setup instructions for each platform
- Verify your installation with the provided tests
- Join our community for support and discussions
What is Genkit? Google's AI application framework for TypeScript developers. Perfect for building conversational AI, content generators, and intelligent workflows.
What you'll build: AI-powered applications like chatbots, content creators, and smart automation tools.
Before starting, ensure you have:
- Administrator/sudo access on your machine
- A Google account for Firebase access
- A code editor (VS Code recommended)
- Gemini API key from Google AI Studio (free with quota limits)
Option A: Using Official Installer (Recommended)
# Download and install from https://nodejs.org/
# Choose the LTS version (Long Term Support)
# This will include npm automaticallyOption B: Using Chocolatey
# First install Chocolatey if you haven't already
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
# Then install Node.js
choco install nodejsOption C: Using Winget
winget install OpenJS.NodeJS# Enable WSL and install Ubuntu
wsl --install
# Restart your computer when prompted
# Follow Linux setup instructions within WSLnode --version
npm --version
# Should show version numbers (Node.js v20+ and npm 10+ recommended)/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Option A: Using Homebrew (Recommended)
brew install nodeOption B: Using Official Installer
# Download from https://nodejs.org/
# Choose the macOS installer for your chip (Intel or Apple Silicon)Option C: Using Node Version Manager (for multiple Node versions)
# Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
# Restart terminal or run:
source ~/.bashrc
# Install latest LTS Node.js
nvm install --lts
nvm use --ltsnode --version
npm --versionOption A: Using Package Manager
# Update package index
sudo apt update
# Install Node.js and npm
sudo apt install nodejs npm
# For latest version, use NodeSource repository
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejsOption B: Using Snap
sudo snap install node --classic# For CentOS/RHEL
sudo yum install nodejs npm
# For Fedora
sudo dnf install nodejs npm
# Or use NodeSource for latest version
curl -fsSL https://rpm.nodesource.com/setup_lts.x | sudo bash -
sudo yum install nodejssudo pacman -S nodejs npmBefore you begin, ensure your environment meets these requirements:
- Node.js v20 or later
- npm
# Install Genkit CLI globally
npm install -g @genkit-ai/cli
# Verify installation
genkit --versionCreate a new Node.js project and configure TypeScript:
# Create a new directory for your project
mkdir my-genkit-app
cd my-genkit-app
# Initialize npm project
npm init -y
# Set up source directory
mkdir src
touch src/index.ts
# Install and configure TypeScript
npm install -D typescript tsx
npx tsc --init# Install core Genkit packages
npm install genkit @genkit-ai/google-genai
# Optional: Install additional model providers
# npm install @genkit-ai/openai
# npm install @genkit-ai/anthropicGet your free Gemini API key:
- Visit Google AI Studio
- Sign in with your Google account
- Click "Create API Key"
- Copy your API key (keep it secure!)
Set as environment variable:
# For current session
export GEMINI_API_KEY=<your-api-key>
# To make permanent, add to your shell profile:
# ~/.bashrc, ~/.zshrc, or ~/.bash_profile
echo 'export GEMINI_API_KEY=<your-api-key>' >> ~/.bashrcTest your Genkit installation:
# Verify Genkit CLI is working
genkit --version
# Create a simple test project
mkdir genkit-test && cd genkit-test
npm init -y
npm install genkit @genkit-ai/google-genai
# Start the Developer UI to confirm everything works
genkit startYou should see:
- Genkit CLI version displayed
- Developer UI opens at
http://localhost:4000 - No installation errors
🎉 Setup Complete! Your Genkit environment is ready for the workshop.
With Genkit set up, you'll be able to build:
- AI story generators and content creators
- Intelligent chatbots with memory
- Document analysis and summarization tools
- Multi-step AI workflows and automation
📚 Resources for Reference:
Skip the local setup complexity! For this workshop, we highly recommend using Firebase Studio instead of local development. It will save you time and let you focus on learning Genkit rather than troubleshooting environment issues.
🚀 Quick Start: Create New Genkit Project (one-click setup!)
👉 Or jump directly to the Firebase Studio section below for detailed instructions.
Firebase Studio is the fastest and easiest way to get started with Genkit! It's a cloud-based development environment that eliminates the need for complex local setup. We strongly encourage all workshop participants to use Firebase Studio for the best learning experience.
- Zero Setup Time - No Node.js, npm, or local environment configuration needed
- Pre-configured Templates - Genkit projects ready to use in seconds
- Cloud-based Development - Access your projects from anywhere
- Automatic Updates - Always running the latest Genkit version
- Built-in Collaboration - Easy sharing and pair programming
- No Installation Issues - Bypass common local setup problems
Option A: Create New Project from Template ⭐ Most Popular
- Direct Link: Visit Firebase Studio - New Genkit Project
- Sign in with your Google account
- Your Genkit project will be automatically created and configured
- You're ready to code! - Start building with Genkit immediately
Alternative: You can also visit Firebase Studio and manually select the Genkit template.
Option B: Import Existing Genkit Project
- Go to Firebase Studio
- Choose "Import Project"
- Connect your GitHub repository or upload your project files
- Firebase Studio automatically detects and configures your Genkit setup
- Start developing immediately!
- Save time - Skip environment troubleshooting
- Focus on learning Genkit - Not on setup issues
- Share projects easily - Great for getting help and collaboration
- Works on any device - Tablets, Chromebooks, any laptop with a browser
# Start Genkit development server
genkit start
# This will open:
# - Genkit Developer UI (usually http://localhost:4000)
# - Your application serverCreate a simple AI flow to test your setup:
// src/flows/hello.ts
import { defineFlow } from '@genkit-ai/flow';
import { gemini15Flash } from '@genkit-ai/googleai';
export const helloFlow = defineFlow(
{
name: 'helloFlow',
inputSchema: z.object({
name: z.string(),
}),
outputSchema: z.string(),
},
async (input) => {
const response = await gemini15Flash.generate({
prompt: `Say hello to ${input.name} in a creative way!`,
});
return response.text();
},
);# Start the Genkit UI with your application
genkit start -- npx tsx --watch src/index.ts
# Or automatically open in browser
genkit start -o -- npx tsx --watch src/index.ts- After running the command above, the Developer UI will automatically start
- Open your browser to
http://localhost:4000(or it opens automatically with-oflag) - You should see the Genkit Developer UI
- Navigate to Flows and test your flows interactively
- Verify Node.js and npm are installed correctly
- Create and run a simple Genkit project
- Access Genkit UI successfully
- Test a simple flow with Gemini API
What is ADK? Google's Agent Development Kit for Python - perfect for building sophisticated AI agents that can perform complex, multi-step tasks.
What you'll build: Intelligent agents that analyze data, conduct research, automate workflows, and make decisions based on complex reasoning.
- Python 3.9+ installed (Python 3.8 reached end of life in October 2024)
- Basic understanding of Python virtual environments
- Code editor with Python support
Option A: Microsoft Store (Recommended for Windows 11)
# Search for "Python" in Microsoft Store and install Python 3.9+Option B: Official Python Installer
# Download from https://python.org
# ⚠️ IMPORTANT: Check "Add Python to PATH" during installationOption C: Using Chocolatey
choco install pythonOption D: Using Winget
winget install Python.Python.3.12python --version
pip --version
# If "python" doesn't work, try "python3" or "py"# Some packages require compilation
# Install Microsoft C++ Build Tools
# Download from: https://visualstudio.microsoft.com/visual-cpp-build-tools/Option A: Using Homebrew (Recommended)
# Install Homebrew if you haven't already
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install Python
brew install python@3.11Option B: Using pyenv (for multiple Python versions)
# Install pyenv
brew install pyenv
# Add to your shell configuration (~/.zshrc or ~/.bash_profile)
echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
source ~/.zshrc
# Install Python
pyenv install 3.11.5
pyenv global 3.11.5Option C: Official Installer
# Download from https://python.org
# Choose the macOS installerxcode-select --install# Update package list
sudo apt update
# Install Python and pip
sudo apt install python3 python3-pip python3-venv
# Install build essentials
sudo apt install build-essential python3-dev
# Create symlink for python command (optional)
sudo ln -s /usr/bin/python3 /usr/bin/python# For CentOS/RHEL 8+
sudo dnf install python3 python3-pip
# For older versions
sudo yum install python3 python3-pip
# For Fedora
sudo dnf install python3 python3-pip python3-devel
# Install development tools
sudo dnf groupinstall "Development Tools"sudo pacman -S python python-pipmkdir ai-agent-workspace
cd ai-agent-workspace
mkdir projects venvs# Create virtual environment
python -m venv venvs/adk-env
# Activate virtual environment
# On Windows:
venvs\adk-env\Scripts\activate
# On macOS/Linux:
source venvs/adk-env/bin/activate
# Verify activation (should show virtual env path)
which python# Install Miniconda first
# Download from: https://docs.conda.io/en/latest/miniconda.html
# Create environment
conda create -n adk-env python=3.11
conda activate adk-env# Install virtualenv
pip install virtualenv
# Create environment
virtualenv venvs/adk-env
# Activate (same as venv method above)# Make sure your virtual environment is activated
# Install Google's Agent Development Kit and related packages
pip install google-genai-agents google-cloud-aiplatform
pip install langchain openai anthropic
pip install jupyter streamlit # For development and demos
# Verify installation
python -c "from google.genai import agents; print('ADK installed successfully!')"# Quick installation test
python -c "
from google.genai import agents
print('✅ ADK is ready!')
"🎉 Setup Complete! Your Python ADK environment is ready for the workshop.
With ADK set up, you'll be able to build:
- Multi-step research agents that gather and synthesize information
- Data analysis assistants that process spreadsheets and generate insights
- Task automation agents that handle complex workflows
- Conversational AI systems with memory and context awareness
Your ADK project should look like this:
my-first-agent/
├── agents/
│ ├── __init__.py
│ └── base_agent.py
├── tools/
│ ├── __init__.py
│ └── basic_tools.py
├── config/
│ ├── settings.py
│ └── prompts.py
├── tests/
│ └── test_agents.py
├── requirements.txt
├── .env.example
└── main.py
# Copy environment template
cp .env.example .env
# Edit .env file with your API keys
# OPENAI_API_KEY=your_openai_key
# ANTHROPIC_API_KEY=your_anthropic_key
# GOOGLE_CLOUD_PROJECT=your_project_id# agents/hello_agent.py
from google.genai import agents
from typing import Dict, Any
from datetime import datetime
class HelloAgent:
def __init__(self):
self.name = "hello_agent"
self.description = "A friendly agent that greets users"
def greet_user(self, name: str) -> str:
"""Greet a user by name."""
return f"Hello, {name}! How can I help you today?"
def get_time(self) -> str:
"""Get the current time."""
return datetime.now().strftime("%Y-%m-%d %H:%M:%S")
async def process(self, message: str) -> str:
# Simple processing logic
if "time" in message.lower():
return self.get_time()
elif "hello" in message.lower():
return self.greet_user("there")
else:
return "I can greet you or tell you the time. What would you like?"# main.py
import asyncio
from agents.hello_agent import HelloAgent
async def main():
agent = HelloAgent()
print("Hello Agent is ready! Type 'quit' to exit.")
while True:
user_input = input("\nYou: ")
if user_input.lower() == 'quit':
break
response = await agent.process(user_input)
print(f"Agent: {response}")
if __name__ == "__main__":
asyncio.run(main())# Run your agent
python main.py
# Try these inputs:
# "Hello"
# "What time is it?"
# "quit"# Install Jupyter kernel for your virtual environment
pip install ipykernel
python -m ipykernel install --user --name=adk-env --display-name "ADK Environment"
# Start Jupyter
jupyter notebookFor VS Code:
# Install Python extension
# Select interpreter: Ctrl+Shift+P -> "Python: Select Interpreter"
# Choose your virtual environment interpreterFor PyCharm:
- Go to Settings > Project > Python Interpreter
- Click gear icon > Add > Existing environment
- Select your virtual environment's python executable
# Create setup.cfg for code quality tools
cat > setup.cfg << EOF
[flake8]
max-line-length = 88
extend-ignore = E203, W503
[isort]
profile = black
multi_line_output = 3
[tool:pytest]
testpaths = tests
python_files = test_*.py
python_classes = Test*
python_functions = test_*
EOF- Set up Python virtual environment
- Install ADK and dependencies
- Create and run the hello agent
- Test agent with basic tools
What is Vertex AI? Google's enterprise-grade ML platform for deploying, managing, and scaling AI models in production.
What you'll build: Production-ready AI systems with model deployment, monitoring, and scaling capabilities.
- Google account (required for Google Cloud)
- Credit card for GCP billing (workshop credits will be provided)
- Basic understanding of cloud concepts
- Create Account: Visit Google Cloud Console and sign in
- Create Project: Click "New Project" and name it (e.g., "Vertex AI Workshop")
- Enable Billing: Required for Vertex AI (workshop credits provided)
- Install CLI: Install Google Cloud CLI for your OS
- Authenticate: Run
gcloud initandgcloud auth application-default login - Enable APIs: Enable Vertex AI, Storage, and Compute APIs
- Install SDK:
pip install google-cloud-aiplatform
Test your setup:
gcloud config list
gcloud services list --enabled
python -c "from google.cloud import aiplatform; print('✅ Vertex AI SDK installed')"With Vertex AI set up, you'll be able to create production ML systems:
- Custom Model Training: Train and deploy your own ML models on real data
- AutoML Solutions: Use Google's automated machine learning for quick model development
- MLOps Pipelines: Automated training, deployment, and monitoring workflows
- Model Endpoints: Real-time prediction APIs with auto-scaling
- Integration: Connect Vertex AI with your Genkit and ADK applications for complete AI solutions
Once all three platforms are set up, you can combine them to build complete AI applications. This is where everything comes together to create production-ready systems.
Multi-Platform Architecture:
- Connect Genkit frontend with ADK backend
- Add Vertex AI custom models to your agents
- Build real-time AI workflows
Production Deployment:
- Deploy complete AI applications
- Implement monitoring and scaling
- Create robust, scalable systems
- AI Customer Service: Genkit chat UI → ADK conversation agent → Vertex AI models
- Content Pipeline: Automated content generation and analysis system
- Smart Dashboard: Real-time data analysis with AI insights
Before you can build integrated applications, ensure you have:
- Node.js and TypeScript environment
- Firebase project configured
- Basic Genkit application running
- Genkit CLI working properly
- Python virtual environment
- Agent Development Kit installed
- Simple agent created and tested
- Required Python packages installed
- Google Cloud project and billing
- Vertex AI APIs enabled
- CLI and SDK authentication working
- Project permissions configured
- All three platforms working independently
- Basic understanding of each framework
- Development environment fully configured
Congratulations! You're now ready to start building production AI applications.
With your environment configured, you can:
- Connect Everything: Integrate Genkit, ADK, and Vertex AI into unified applications
- Deploy at Scale: Launch your AI systems to production environments
- Monitor & Optimize: Ensure your applications perform reliably in the real world
With your development environment fully configured, you're prepared to:
- Build Real Applications: Create AI solutions using all three platforms
- Deploy to Production: Launch your applications with confidence
- Join the Community: Connect with other developers building the future of AI
Genkit Issues:
- Command not found? →
npm install -g @genkit-ai/cli - Firebase errors? →
firebase loginandfirebase use --add - TypeScript errors? → Ensure Node.js 18+ and
npm install
ADK Issues:
- Import errors? → Activate virtual environment:
source venv/bin/activate - Package missing? →
pip install google-genai-agents - Python version? → Ensure Python 3.9+
Vertex AI Issues:
- Authentication errors? →
gcloud auth application-default login - API not enabled? →
gcloud services enable aiplatform.googleapis.com - Project issues? → Verify project ID and billing enabled
- 💬 Discord Community: Join our Discord server for:
- Real-time help with setup issues
- Community troubleshooting and support
- Project collaboration and code sharing
- Direct access to instructors and mentors
- 📚 Office Hours: Regular Q&A sessions with instructors
- 📖 Documentation: Each platform's official docs for deep troubleshooting
Congratulations! You're ready to start building the future of AI applications!
With all three platforms properly configured, you now have the foundation to build sophisticated AI applications that leverage the best of Google's AI technologies.
- Start Building: Use your configured environment to create amazing AI applications
- Join the Community: Connect with other developers and continue learning
- Share Your Work: Contribute back and help others in the community
- Keep Learning: Explore advanced topics like MLOps, AI safety, and model optimization
- Get Certified: Consider Google Cloud AI/ML certifications to validate your skills
Happy coding! 🚀