Afina

Download app

AppleWindows
EN

Built-in SQLite databases & a mini SQL editor

Create unlimited local SQLite databases, query them in a built-in editor, and feed results straight into RPA flows. Your data layer lives where your automation lives — no external server, no devops.

Built-in SQLite databases & a mini SQL editor
SQLite • Mini SQL editor • RPA blocks

SQL where you need it, when you need it

Multi-account automations want data: account ledgers, campaign tables, scraping outputs, vendor pricelists. Afina ships embedded SQLite, a mini SQL editor (think tiny TablePlus inside the desktop) and a database block for RPA flows. Create as many .db files as your workflow needs, query them inline — no DB server, no glue scripts.

Mini SQL editor (built-in IDE)

Mini SQL editor (built-in IDE)

Pick a database, write a query, see results — column types, NULLs, row counts, paginated browse. Edit cells inline or run mutation queries with explicit confirmation. Save snippets and reuse them across flows.

Unlimited local databases

Unlimited local databases

Create as many SQLite databases as your workflow needs — one per project, per client, per scraping target. Zero-config, file-based, stored next to Afina. No host/port/credentials to wrangle, no devops on call. Use them across scripts and flows.

Use directly in RPA flows

Use directly in RPA flows

A database block runs a parameterised SQL query against a saved database, returns rows to the flow, and lets next steps loop over them. Combine with modules for ORM-style work or with the local API for cross-tool pipelines.

Local by design, zero network surface

Local by design, zero network surface

SQLite is embedded — no database server to expose, no port to firewall, no remote credentials to leak. Files live in Afina's app data and inherit OS-level disk encryption when you turn it on. Backup is a file copy.

FAQs

Have questions? We're here to help.

Online Support Available

SQLite is the right fit for browser-automation workloads — account ledgers, campaign tables, scraping outputs, pricelists. It's embedded, zero-config, fully transactional, ships with Afina, and needs no devops. For workloads that genuinely require Postgres-class concurrency, run that database elsewhere and reach it from a Node.js module.

A small built-in IDE for working with your data without leaving Afina. Write queries, browse tables with type-aware result grids, edit rows inline, save queries as snippets you can reuse across flows and scripts.

Yes — drop the database block, pick a saved database, write a parameterised SQL string and bind variables from earlier steps. The block returns rows that the next loop block iterates over. Mutations (INSERT/UPDATE/DELETE) are allowed but explicitly opt-in.

In your local Afina app-data directory, alongside profiles and scripts. Each database is a single .db file you can copy, back up or move. There are no credentials — there's no remote server.

Use the mini SQL editor to import/export CSV. From RPA flows, executeModule with a Node.js module gives you Excel/CSV/JSON read/write, HTTP fetches, S3 uploads, etc. The database block also accepts values from previous steps so you can chain HTTP fetch → JSON parse → SQL insert in one flow.

SQLite databases are files. Back them up via the OS, sync them via Dropbox/Drive, or rely on Afina cloud sync (Team plans) which keeps the workspace consistent across machines and teammates.

Run SQL alongside your automations

Spin up a SQLite database, write a query, drop the result into a flow. No external client, no glue scripts.

Databases in Afina let you connect to PostgreSQL, MySQL, SQLite, MongoDB and Redis straight from RPA flows and modules. Run queries, write results, pipe rows into automation — no external orchestrator, no glue scripts. A built-in mini-IDE with autocomplete and query history makes it usable, not just possible.

Why automation needs first-class database access

Most browser automation eventually needs a database — to remember which accounts ran today, to store scraped data, to dedupe URLs, to coordinate parallel flows. Without it teams glue Google Sheets and CSV files together until something breaks. Afina makes the database a primitive, queryable from any flow.

What's inside the database manager

1. Mini-IDE with autocomplete

Schema browser, SQL editor with syntax highlighting and autocomplete, query history, result preview. Test the query in the UI, drop it into an RPA block or a module with one copy.

2. Supported engines

PostgreSQL, MySQL / MariaDB, SQLite, MongoDB, Redis. Bring your own — local, cloud, or a tunnelled connection through a proxy. Connections are reusable across flows.

3. Use inside RPA flow blocks

Dedicated DB blocks: query, insert, update, upsert, iterate rows. Plug results into ${variable} placeholders that downstream blocks consume.

4. Secure connections

Connection strings sealed in the zero-knowledge vault alongside per-profile passwords. TLS-only by default, SSH tunnels supported. Nothing in cleartext on disk.

5. AI-friendly via MCP

The MCP server exposes database CRUD tools so an LLM can read schema, run queries and drive flows end-to-end. "Show me the accounts that haven't run in 3 days" turns into a working SELECT without touching the SQL.

Where databases fit into Afina flows

Affiliate teams track which creatives have run on which accounts. SEO teams store scraped SERP rankings per keyword over time. Airdrop farms dedupe wallets and track claim status. Multi-accounting ops queue work and coordinate worker pools. Data scraping writes rows directly into Postgres. Without an integrated DB the whole stack becomes a glue mess; Afina ships it as a first-class citizen.