Namebro is an LLM-powered intelligent agent that generates creative startup name suggestions based on context and customizable style parameters. Built with LangChain, Pydantic, and featuring a beautiful neo-brutalist Streamlit interface.
- 🤖 LLM-Powered: Uses ChatGPT (OpenAI) or Claude (Anthropic) for intelligent name generation
- 📝 Context Input: Accept context from files or pasted text
- 🎨 Style Parameters: Generate names in various styles (GenZ, abstract artistic, professional, etc.)
- ✨ Name Variations: Automatically generates creative variations of suggested names
- 📊 Name Evaluation: Comprehensive evaluation across 12 parameters (memorability, pronounceability, etc.)
- 🌐 Domain Availability: Real-time domain checking via GoDaddy Domains API with creative variations (get.app, app.ai, etc.)
- 🔍 Google Search Insights: Searches Google to find existing applications, competing domains, and market categories
- 💬 Neo-Brutalist UI: Beautiful, bold Streamlit interface with high-contrast design
- 📚 Rulebook Integration: Uses proven naming principles and evaluation frameworks
- 🔧 Extensible: Ready for additional custom tools (trademark search, etc.)
# Clone or navigate to the project directory
cd namebro
# Install dependencies
pip install -r requirements.txt
# Set up environment variables
# Create a .env file with your API keys:
# OPENAI_API_KEY=your_key_here
# or
# ANTHROPIC_API_KEY=your_key_herepython3 -m streamlit run app.pyThis will launch a web interface where you can:
- Select your LLM provider (OpenAI or Anthropic)
- Choose model and style preferences
- Enter startup context
- Generate and view name suggestions interactively
from startup_name_agent import StartupNameAgent, NameStyle
# Initialize agent with OpenAI (ChatGPT)
agent = StartupNameAgent(llm_provider="openai", model_name="gpt-4-turbo-preview")
# Or use Anthropic (Claude)
# agent = StartupNameAgent(llm_provider="anthropic", model_name="claude-3-opus-20240229")
# Load context
agent.load_context_from_text("""
We're building a platform for remote team collaboration.
It's modern, intuitive, and designed for distributed teams.
""")
# Set style parameters
agent.set_style_parameters([NameStyle.GENZ, NameStyle.TECH_MODERN])
# Generate name suggestions
suggestions = agent.generate_names(num_suggestions=10)
# Display results
for suggestion in suggestions:
print(f"Name: {suggestion.name}")
print(f"Style: {suggestion.style}")
print(f"Variations: {', '.join(suggestion.variations)}")
print(f"Reasoning: {suggestion.reasoning}")
print()agent = StartupNameAgent(llm_provider="openai")
# All-in-one method
suggestions = agent.brainstorm(
context="Your startup description here...",
styles=["genz", "tech_modern"],
num_suggestions=15
)Available style options:
genz- GenZ-friendly names with trendy suffixesabstract_artistic- Poetic and abstract combinationsprofessional- Clean, business-oriented namesplayful- Fun and creative namestech_modern- Modern tech startup names (io, labs, ai suffixes)minimalist- Short, clean, minimal namesbold_edgy- Bold and edgy namesclassic- Traditional, timeless names
Create a .env file in the project root:
# OpenAI API Key (for ChatGPT)
OPENAI_API_KEY=your_openai_api_key_here
# Anthropic API Key (for Claude)
ANTHROPIC_API_KEY=your_anthropic_api_key_here
# GoDaddy API Credentials (for domain availability checking)
GODADDY_API_KEY=your_godaddy_api_key_here
GODADDY_API_SECRET=your_godaddy_api_secret_here
GODADDY_USE_OTE=true # Set to false for production
# Google Custom Search API (for competitive research)
GOOGLE_API_KEY=your_google_api_key_here
GOOGLE_SEARCH_ENGINE_ID=your_search_engine_id_hereNote:
- You only need one LLM API key (OpenAI or Anthropic), depending on which provider you want to use.
- GoDaddy API credentials are optional but recommended for real-time domain availability checking.
- Google Custom Search API is optional but recommended for competitive insights. Falls back to alternative search if not configured.
from startup_name_agent import StartupNameAgent, NameStyle
# Initialize with OpenAI
agent = StartupNameAgent(llm_provider="openai", model_name="gpt-4-turbo-preview")
context = """
We're building an AI-powered fitness app that personalizes workouts
based on user goals and provides real-time form feedback using computer vision.
Target audience: Gen Z and millennials who want tech-driven fitness solutions.
"""
agent.load_context_from_text(context)
agent.set_style_parameters([NameStyle.GENZ, NameStyle.TECH_MODERN])
suggestions = agent.generate_names(num_suggestions=5)
for i, suggestion in enumerate(suggestions, 1):
print(f"{i}. {suggestion.name} ({suggestion.style})")
print(f" Variations: {', '.join(suggestion.variations[:3])}")
print(f" Reasoning: {suggestion.reasoning}")The agent is built with modern Python tools:
- LangChain: LLM integration and prompt management
- Pydantic: Data validation and structured outputs
- Streamlit: Interactive web UI
- Structured Outputs: Uses Pydantic models for reliable parsing
StartupNameAgent: Main agent class with LLM integrationNameSuggestion: Pydantic model for name suggestionsNameEvaluation: Pydantic model for name evaluationsNameStyle: Enum for style parametersapp.py: Streamlit neo-brutalist UI interfacerulebook.txt: Naming principles and guidelinesevaluation_rulebook.txt: Comprehensive evaluation framework
- Models:
gpt-4-turbo-preview,gpt-4,gpt-3.5-turbo - Requires:
OPENAI_API_KEYenvironment variable
- Models:
claude-3-opus-20240229,claude-3-sonnet-20240229,claude-3-haiku-20240307 - Requires:
ANTHROPIC_API_KEYenvironment variable
- Context-aware name suggestions based on your startup description
- Multiple style options (GenZ, abstract artistic, professional, etc.)
- Automatic name variations for each suggestion
- Integration with proven naming rulebooks
- Comprehensive 12-parameter evaluation framework
- Scores for memorability, pronounceability, spelling simplicity, and more
- Strengths and weaknesses analysis
- Comparative analysis across multiple names
- Total score out of 120 points
Namebro now includes real-time domain availability checking via the GoDaddy Domains API. When evaluating names, the system:
-
Generates Creative Domain Variations: Automatically creates variations like:
name.com,name.io,name.app,name.aigetname.com,tryname.com,usename.comnameapp.com,nameai.com,namehub.comgetnameapp.com,trynameai.com, and more
-
Checks Availability: Uses GoDaddy API to check which domains are actually available
-
Scores Domain Potential: Calculates a domain availability score (1-10) based on:
- Number of available domains
- Quality of TLDs (prioritizes .com, .io, .app, .ai)
- Domain length (shorter is better)
-
Displays Results: Shows top available domains in the evaluation results
- Sign in to your GoDaddy account and go to API Key Management
- Create a new API key (choose OTE for testing or Production for live use)
- Copy your API Key and Secret
- Add them to your
.envfile:GODADDY_API_KEY=your_key_here GODADDY_API_SECRET=your_secret_here GODADDY_USE_OTE=true # Use false for production
The domain checker works automatically when API credentials are configured. If not configured, the system will still evaluate names but use LLM-estimated domain availability scores.
Namebro includes Google search integration to provide competitive insights when evaluating startup names. The system:
-
Searches for Existing Applications: Queries Google for the startup name to find:
- Existing companies/applications with similar names
- Competing domains and websites
- Market categories and areas where the name is used
-
Analyzes Competition:
- Counts number of competing results
- Identifies domains using similar names
- Categorizes the competitive landscape (Software/App, AI/ML, E-commerce, etc.)
-
Updates Evaluation Scores:
- Adjusts originality score based on competition level
- Adds competitive insights to strengths/weaknesses
- Includes search findings in recommendations
-
Displays Results: Shows search insights, competing domains, and categories in evaluation results
- Go to Google Cloud Console
- Create a new project or select an existing one
- Enable the "Custom Search API"
- Create credentials (API Key)
- Set up a Custom Search Engine at Google Custom Search
- Choose "Search the entire web"
- Copy your Search Engine ID
- Add to your
.envfile:GOOGLE_API_KEY=your_api_key_here GOOGLE_SEARCH_ENGINE_ID=your_search_engine_id_here
Note: Google Custom Search API provides 100 free queries per day. The system will use a fallback search method if the API is not configured, though results may be less comprehensive.
- ✅ LLM integration for intelligent name generation
- ✅ Name evaluation framework
- ✅ Neo-brutalist UI design
- ✅ Rulebook integration
- ✅ Domain availability checking with GoDaddy API
- ✅ Google search insights for competitive analysis
- 🔄 Trademark search integration
- 🔄 Social media handle availability
- 🔄 Multi-language support
- 🔄 Batch processing for multiple startups
MIT