Skip to content

A collection of sample apps and recipes built with the TinyFish web agent. Open-source examples for you to learn & build!

License

Notifications You must be signed in to change notification settings

tinyfish-io/tinyfish-cookbook

Repository files navigation

The TinyFish Cookbook

Tinyfish Accelerator banner

⛊    The TinyFish Accelerator is now accepting applications    ⛊

$2M investment seed pool💰9-week programFree creditsEngineering supportBusiness mentorship


Website | Docs | Discord | License | X | LinkedIn | Threads | Instagram

About This Repository

Welcome to the TinyFish Cookbook! This is a growing collection of recipes, demos, and automations built with TinyFish.

🏆 Were SOTA! — we just scored 90% on Mind2Web benchmark, outperforming Gemini by 21 points, OpenAI by 29, and Anthropic by 34. We ran all 300 tasks in parallel and published every single run publicly. Read our benchmark results → | View all runs →

What is TinyFish?

SOTA web agents in an API that lets you treat real websites like programmable surfaces. Instead of juggling headless browsers, selectors, proxies, and weird edge cases, you call a single API with a goal and some URLs and get back clean JSON. It handles navigation, forms, filters, dynamic content, proxies, and multi-step flows across many sites at once.

The same infrastructure and agents used by big enterpises (like google, doordash and classpass), now for everyone!

Why TinyFish?

  • 🕸️ Fully managed browser and agent infra in one API
  • 🌐 Any website → API — Turn sites without APIs into programmable data sources
  • 💬 Natural language goals — Send a URL + plain English, get structured JSON back
  • 🤖 Real browser automation — Multi-step flows, forms, filters, calendars, dynamic content
  • 🥷 Built-in stealth mode — Rotating proxies + stealth profiles included (no extra cost)
  • 📊 Production-grade logs — Full observability and debugging for every run
  • 🔌 Flexible integration — HTTP API, visual Playground, or MCP server for Claude/Cursor

The Recipes

Each folder in this repo is a standalone project. Dive in to see how to solve real-world problems.

Recipe Description
anime-watch-hub Helps you find sites to read/watch your favorite manga/anime for free
bestbet Sports betting odds comparison tool
competitor-analysis Live competitive pricing intelligence dashboard
fast-qa No-code QA testing platform with parallel test execution and live browser previews
loan-decision-copilot AI-powered loan comparison tool across banks and regions
logistics-sentry Logistics intelligence platform for port congestion and carrier risk tracking
Manga-Availability-Finder Searches multiple reading platforms for manga/webtoon availability
openbox-deals Real-time open-box and refurbished deal aggregator across 8 retailers
research-sentry Voice-first academic research co-pilot scanning ArXiv, PubMed, and more
scholarship-finder AI-powered scholarship discovery system pulling live data from official websites
stay-scout-hub Searches across all sites for places to stay when traveling for conventions or events
summer-school-finder Discover and compare summer school programs from universities around the world
tinyskills Multi-source AI skill guide generator

More recipes added weekly!

Getting Started with the API

You don't need to install heavy SDKs. TinyFish works with standard HTTP requests.

1. Get your API Key

Sign up on tinyfish.ai and grab your API key.

2. Run a Command

Here is how to run a simple automation agent:

cURL

curl -N -X POST https://agent.tinyfish.ai/v1/automation/run-sse \
  -H "X-API-Key: $TINYFISH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://agentql.com",
    "goal": "Find all AgentQL subscription plans and their prices. Return result in json format"
  }'

Python

import json
import os
import requests

response = requests.post(
    "https://agent.tinyfish.ai/v1/automation/run-sse",
    headers={
        "X-API-Key": os.getenv("TINYFISH_API_KEY"),
        "Content-Type": "application/json",
    },
    json={
        "url": "https://agentql.com",
        "goal": "Find all AgentQL subscription plans and their prices. Return result in json format",
    },
    stream=True,
)

for line in response.iter_lines():
    if line:
        line_str = line.decode("utf-8")
        if line_str.startswith("data: "):
            event = json.loads(line_str[6:])
            print(event)

TypeScript

const response = await fetch("https://agent.tinyfish.ai/v1/automation/run-sse", {
  method: "POST",
  headers: {
    "X-API-Key": process.env.TINYFISH_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    url: "https://agentql.com",
    goal: "Find all AgentQL subscription plans and their prices. Return result in json format",
  }),
});

const reader = response.body.getReader();
const decoder = new TextDecoder();

while (true) {
  const { done, value } = await reader.read();
  if (done) break;
  console.log(decoder.decode(value));
}

By the way! if you want to expose your project on localhost to your friends to show them a demo, you can now use the tinyfi.sh by us! Completly free and easy to use!

Star History

Star History Chart

Contributors

Got something cool you built with TinyFish? We want it in here! Check out our Contributing Guide for the full rundown on how to submit your project.

Community & Support

Legal Disclaimer

This repository is a community-driven space for sharing derivatives, code samples, and best practices related to Tiny Fish products. By using the materials in this repository, you acknowledge and agree to the following:

  • "As-Is" Basis: All code, scripts, and documentation shared here are provided "AS IS" and "AS AVAILABLE." TinyFish makes no warranties of any kind, whether express or implied, regarding the accuracy, reliability, or security of community-contributed content.
  • No Obligation to Maintain: Tiny Fish is under no obligation to monitor, update, or fix bugs, errors, or security vulnerabilities found in community-contributed derivatives.
  • User Responsibility: You are solely responsible for vetting and testing any code before implementing it in a production environment. Use of these derivatives is at your own risk.
  • Limitation of Liability: In no event shall Tiny Fish be held liable for any claim, damages, or other liability—including but not limited to system failures, data loss, or security breaches—arising from the use of or inability to use the contents of this repository.

Note: Contributions from the community do not represent the official views or supported products of Tiny Fish.


About

A collection of sample apps and recipes built with the TinyFish web agent. Open-source examples for you to learn & build!

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 14