• Built w## Inspiration As a data science student, I constantly waste time manually browsing 10+ websites just to compare developer tools. I wanted an AI agent that could do this research automatically and return structured, reliable results — like having a senior engineer do the research for you.

What it does

ERA (Engineering Research Assistant) is an AI agent that takes a developer query like "best Firebase alternatives" and automatically:

  • Searches and scrapes the web using Firecrawl
  • Extracts the top relevant tools from articles
  • Researches each tool's official website
  • Returns structured cards with pricing, tech stack, language support, API availability
  • Generates an expert recommendation at the end

How we built it

  • LangGraph — stateful 3-node workflow: extract tools → research each tool → analyze and recommend
  • Firecrawl — web search and page scraping, returns clean markdown
  • OpenAI gpt-4o-mini — LLM with Pydantic structured outputs to prevent hallucination
  • Pydantic — enforces structured data schema from every LLM response
  • Streamlit — minimal developer-focused UI inspired by Linear and Vercel Dashboard

Challenges we ran into

  • Getting the LLM to return consistent structured output across wildly different tools
  • Preventing hallucination by grounding every response in actual scraped content
  • Designing a UI that feels like a developer tool, not an AI startup landing page
  • Handling cases where Firecrawl returns incomplete or irrelevant content

Accomplishments that we're proud of

  • Built a fully stateful multi-step agent from scratch using LangGraph
  • Achieved structured, reliable output using Pydantic even for messy web content
  • Designed a clean minimal UI that genuinely looks like a professional developer tool
  • The agent correctly identifies pricing models, open source status, and integrations purely from scraped homepage content

What we learned

  • How stateful LangGraph workflows differ from simple chatbot loops
  • How Pydantic enforces structured LLM outputs and prevents hallucination
  • How Firecrawl returns clean LLM-ready markdown from any webpage
  • How to design developer tools that prioritize information density over aesthetics

What's next for ERA — Developer Tools Research Agent

  • GitHub repository analyzer — paste a repo URL and get tool recommendations based on your actual codebase
  • Stack compatibility checker — flags when recommended tools don't integrate well together
  • Side-by-side comparison table — compare all researched tools in one view
  • Markdown export — download the full research report
  • Search history — save and revisit previous research sessions

Built With

  • firecrawl
  • langchain
  • langgraph
  • openai
  • pydantic
  • python
  • streamlit
Share this project:

Updates

Submission history