jonkeane.com valid
dittodb
dittodb is a package that makes testing against databases easy. When writing code that relies on interactions with databases, testing has been difficult without recreating test databases in your continuous integration (aka CI) environment, or resorting to using SQLite databases
Their llms.txt
The beginning of the file, from our validated copy saved 2026-10-24T18:40:21.105Z. Cached copy · Source on jonkeane.com
# dittodb
`dittodb` is a package that makes testing against databases easy. When
writing code that relies on interactions with databases, testing has
been difficult without recreating test databases in your continuous
integration (aka CI) environment, or resorting to using SQLite databases
instead of the database engines you have in production. Both have their
downsides: recreating database infrastructure is slow, error prone, and
hard to iterate with. Using SQLite works well, right up until you use a
feature (like [a full outer join](https://www.sqlite.org/omitted.html))
or has [quirks](https://www.sqlite.org/quirks.html) that might differ
from your production database. `dittodb` solves this by recording
database interactions, saving them as mocks, and then replaying them
seamlessly during testing. This means that if you can get a query from
your database, you can record the response and reliably reproduce that
response in tests.
`dittodb` is heavily inspired by
[{httptest}](https://CRAN.R-project.org/package=httptest), if you’ve
used {httptest} before, you’ll find many of the interactions similar.
## A quick example
Say we have a database with some
[{nycflights}](https://CRAN.R-project.org/package=nycflights13) data in
it and we are writing functions that query this data that we want to
test.
For example, we have the simple function that retrieves one airline:
``` r
get_an_airline <- function(con) {
return(dbGetQuery(con, "SELECT carrier, name FROM airlines LIMIT 1"))
}
```
But we want to make sure that this function returns what we expect. To
do this, we first record the response we get from the production
database:
##
- RMariaDB
- RPostgres
- RSQLite
``` r
start_db_capturing()
con <- DBI::dbConnect(
RMariaDB::MariaDB(),
dbname = "nycflights"
)
get_an_airline(con)
DBI::dbDisconnect(con)
stop_db_capturing()
```
…
Related sites
Similar publisher descriptions and documentation. Similarity does not imply affiliation or equivalent capabilities.
| Domain | Title | Category | Country | Authority | llms.txt | llms-full.txt | Save |
|---|---|---|---|---|---|---|---|
| duckdb.org | DuckDB | documentation Data and analytics Databases +1 | — | 61 | ✓ | ||
| r-dbi.org | RPostgres | documentation Databases Open source projects | US | 46 | ✓ | ||
| dbxio.com | DBX | documentation Data and analytics Developer tools +1 | — | 54 | ✓ | ✓ | |
| jodd.org | Jodd Db | documentation Developer tools Data and analytics | — | 46 | ✓ | ✓ | |
| turso.tech | Turso | documentation Databases | US | 58 | ✓ | ✓ | |
| runsql.com | RunSQL | documentation Data and analytics Developer tools +1 | — | 46 | ✓ | ||
| aifordatabase.com | AI for Database | interface AI and machine learning Data and analytics +2 | — | 48 | ✓ | ✓ | |
| questdb.com | QuestDB | documentation Data and analytics Databases | US | 62 | ✓ | ✓ |
Machine-readable: GET /v1/resolve?q=jonkeane.com · GET /v1/domain/jonkeane.com · this page as Accept: application/json or text/markdown · MCP lookup_domain
Automatically discovered from public files. Inclusion does not imply endorsement or publisher participation.
Own or manage this website?
If you own or manage jonkeane.com, you can update its listing and review file health, discovery activity and score history.
Manage this listing — optional
What verification unlocks
See how your site is discovered—and control what agents see.
- See your website in the map
Review your indexed topics, nearby publishers sharing headings, measured listing exposure and map snapshots in a private report for your website.
- Control what agents see
Edit your listing description, tags, public contact details and additional llms.txt paths. Publish your terms for automated access, attribution and pricing.
- Make your profile eligible for search
A valid, listed, unblocked, verified profile can appear in our publisher sitemap and become eligible for search-engine visibility. Search engines decide what to index and rank.
- Appear in our llms-full.txt
Eligible verified publishers are listed by name, with their file links and summaries, in the service overview agents can read.
Free. No account registration, backlink or payment required. Public discovery remains available without verification.
Let your coding agent verify it
If your coding agent is authorized to manage this website, paste these instructions into it.
Claim my listing on Agent Web Map for jonkeane.com:
1. POST https://agentwebmap.com/v1/sites/jonkeane.com/claims and keep claim_id and claim_secret private.
2. Publish the verification line "AgentWebMap verification: <token>" (token from step 1) in https://jonkeane.com/llms.txt, or use the DNS, meta-tag or well-known method the response describes. This only verifies the listing; your website and domain remain yours.
3. POST https://agentwebmap.com/v1/sites/jonkeane.com/verify with {"claim_id": "...", "claim_secret": "..."}.
4. Save the api_key from the answer; it manages the listing (PATCH https://agentwebmap.com/v1/sites/jonkeane.com).
MCP equivalent: tools begin_ownership_claim, then verify_domain, at https://agentwebmap.com/mcp. Docs: https://agentwebmap.com/docs#verifyCorrections or removal requests: contact the directory.