Maxun: The No-Code Scraper That Treats Web Automation Like a Runtime
A deep dive into the interpreter, browser heuristics, and self-hosted infrastructure that turn fragile scraping scripts into a platform.
- Maxun’s real product is a runtime that compiles visual intent into executable browser workflows.
- Its edge comes from layering validation, browser heuristics, and job orchestration around Playwright instead of exposing Playwright directly.
- The platform treats scraping as an operational system, with pooling, queues, and object storage built in from the start.
- Compared with code-first and API-first rivals, Maxun targets people who want control without writing the automation stack themselves.
Most scraping tools promise speed. Maxun promises something more interesting: a way to make web automation feel structured, inspectable, and durable. That shift matters because the hard part of scraping is rarely the first run. It is the hundredth run, after the site changes, the selector breaks, or the job needs to run unattended.
The big idea: scraping as a runtime
Maxun does not ask users to write a Playwright script and then babysit it. It asks them to describe intent through a visual workflow, then turns that workflow into an execution plan. That makes the product feel closer to a browser VM for non-programmers than a traditional scraper.
Maxun is the web access layer for AI.We make it easy to turn websites into structured data — without writing code, maintaining brittle scripts, or dealing with complex scraping infrastructure.
That framing is not marketing fluff. In the codebase, the center of gravity sits in maxun-core, where a workflow file is interpreted step by step. The UI is the front door. The runtime is the product.
{
"workflow": [
{ "where": "url matches", "what": "click login" },
{ "where": "selector exists", "what": "extract list" }
]
}
Inside the workflow interpreter
The core abstraction is simple and powerful: a sequence of Where / What pairs. The interpreter reads a workflow file, checks the current browser state, and executes the next action only when the conditions are satisfied. That gives Maxun a declarative feel. You describe the goal, and the runtime decides when each step is safe to run.
That structure also explains why abort handling and concurrency matter here. A scraper that cannot stop cleanly is a liability. A workflow engine that cannot manage a browser session predictably is just a nicer way to lose track of failures.
Why no-code scraping usually breaks
Traditional scraping fails for boring reasons. Static selectors drift. Pagination changes shape. Login states introduce branches. Infinite scroll hides content behind timing problems. The first extraction succeeds, then the site changes by one class name and the whole thing falls apart.
| Failure mode | Selector script | Maxun approach |
|---|---|---|
| Layout shift | Hard-coded CSS breaks | Workflow and structural heuristics can re-anchor the step |
| Pagination | Manual looping logic | Interpreter can manage step order and execution state |
| Login flow | Custom code for each site | Browser session and runtime controls keep state together |
| Long-running jobs | Ad hoc retries | Queue, storage, and browser pooling handle persistence |
That comparison is the real context for Maxun. It is not trying to make scraping prettier. It is trying to make it survive contact with the web.
It’s surprising that in 2024, scraping data is still more complicated than actually using it. The last time I tried existing providers, I realized they mostly cater to technical users or big corporations with too much $ in the bank.
The browser-side trick that makes it smarter than a recorder
The clever part is not that Maxun can click buttons. It is that the injected browser-side logic tries to infer which elements matter by combining DOM structure with visual cues like size and repeated patterns. That is a very different mental model from “record the selector I clicked.”
In practice, this means repeated cards on a page can be treated as a cluster rather than isolated elements. The system is not only asking, “What selector did the user touch?” It is also asking, “What shape does the page itself suggest is data?”
How Maxun keeps the system from falling apart
Maxun’s reliability story is infrastructure-heavy in the best way. The workflow passes through validation before it reaches the browser. Parameters get injected cleanly. Browser instances are pooled. Jobs are queued. Outputs land in object storage and PostgreSQL instead of vanishing into process memory.
| Layer | What it does | Why it matters |
|---|---|---|
| Preprocessor | Validates workflow schema and injects parameters | Prevents malformed instructions from reaching execution |
| BrowserPool | Reuses browser resources across jobs | Cuts overhead without giving up isolation |
| pg-boss | Schedules and manages jobs in Postgres | Makes long-running work more durable |
| MinIO | Stores screenshots and HTML artifacts | Keeps large outputs portable and scalable |
This is why Maxun reads as a platform instead of a helper library. The system is built to absorb failure, not just expose an API.
Maxun’s place in the scraping landscape
Maxun sits in an awkward but useful middle. Compared with Playwright, it removes code and gives you a visual control layer. Compared with Firecrawl and Crawl4AI, it gives you more explicit runtime control and a self-hosted operating model. Compared with brittle custom scripts, it gives you validation, pooling, and a cleaner path from intent to execution.
| Project | Best for | Trade-off |
|---|---|---|
| Playwright | Code-first browser automation | You own the scripting and the maintenance |
| Firecrawl | API-first AI scraping | Less visual control and less runtime transparency |
| Crawl4AI | LLM-oriented crawling | More developer-facing than workflow-facing |
| Maxun | Visual, self-hosted web automation | You trade some raw code flexibility for a higher-level runtime |
That position is specific enough to matter. Maxun is not trying to out-library Playwright or out-API Firecrawl. It is trying to own the middle layer where non-technical users, ops-heavy teams, and fast-moving builders all want the same thing: structured web data without building the whole machine.
Why this matters
Maxun reflects a broader shift in web automation. The winning abstraction is no longer just a selector or a script. It is a layered system that validates intent, interprets execution, inspects the page structurally, and keeps the job alive long enough to finish.
That is the real story here. Maxun makes scraping feel less like brittle automation and more like software infrastructure. If that idea keeps spreading, the next generation of web extraction tools will look less like snippets and more like runtimes.





