Maxun: Turning Websites Into Structured APIs
The Problem
Web scraping sucks. Either you waste hours hacking together Python scripts with BeautifulSoup, or you're stuck Googling "selenium headless Chrome keeps crashing" at 2 AM. And if you're scaling beyond a one-off task? Good luck managing brittle code, rate limits, and the endless list of edge cases. Maxun tries to fix this with a no-code platform that turns websites into structured data with minimal hassle.
What This Does
Maxun organizes its functionality into "robots" that do the heavy lifting for web scraping, crawling, and data extraction. The browser/ directory houses the frontend server (browser/server.ts) that powers the Recorder Mode, where you can click through a website and let Maxun generate reusable extraction workflows. The backend (Dockerfile.backend) handles AI-driven tasks like parsing natural language prompts to figure out what data you need.
Want to scrape entire websites? There's a legacy/ folder (yeah, naming could be better) packed with React components (legacy/src/Canvas.tsx, legacy/src/LeftSidePanel.tsx) for defining crawling scopes and conditions. It’s like a visual IDE for data scraping. The docker-compose.yml sets up your environment—good for local testing or self-hosting.
Bonus: There's an SDK (docs/self-hosting-docker.md) if you want to integrate scraping workflows directly into your own apps. Think cron jobs for web data.
Real-World Use
Say you need the top 50 movies from IMDb with their names, ratings, and durations. In Recorder Mode, you click through the site to build an extraction script. Or, use AI Mode—type "Get top 50 movie names, ratings, and durations from IMDb"—and let Maxun automate the whole thing. The extracted data gets output as JSON, ready to feed into your app. For larger jobs like crawling Airbnb for property listings, you’d use the Crawl robot to define site-wide rules in the visual editor.
The Bottom Line
Maxun is cool for anyone who needs structured web data without fiddling with code. It's fantastic for non-coders and teams automating repetitive tasks. But if you're a developer scraping a single page once, this is overkill. Setup feels heavy (Docker, multiple servers), and the legacy/ folder screams tech debt. Still, for scaling complex workflows? Worth a look.