Skip to content

docs: reorganize docs to highlight tools and drivers#4525

Open
amoeba wants to merge 89 commits into
apache:mainfrom
amoeba:docs/docs-rework
Open

docs: reorganize docs to highlight tools and drivers#4525
amoeba wants to merge 89 commits into
apache:mainfrom
amoeba:docs/docs-rework

Conversation

@amoeba

@amoeba amoeba commented Jul 14, 2026

Copy link
Copy Markdown
Member

This is a major reorganization and rethinking of the ADBC docs to catch them up with what's happening across the ADBC ecosystem.

The key changes are:

  • New, simpler landing page focusing on the core questions users will have (what drivers are available, how do I connect with one, how do I write a new driver)
  • New sidebar structure that starts by grouping pages into one of two major categories: Connecting or Writing Drivers
  • New Drivers page that covers the third-party driver ecosystem which has grown quite a lot. Includes talking about dbc, the ADBC Driver Foundry, third-party drivers offered by Columnar
  • New Tools & Integrations page covering the cool ecosystem stuff like pandas/polars/R/etc
  • Now uses the term "Client Library" over Driver Manager in many places as this is conceptually more simple. No packages were renamed so the term Driver Manager is still valid and used in the docs.
  • Language-specific docs now more consistently load drivers by manifest rather than driver-specific packages.
  • New page on Writing Drivers
  • New page on Connection Profiles
  • A small but updated C# page
  • Updated Glossary

Closes #4233

@amoeba
amoeba force-pushed the docs/docs-rework branch from cdc7bec to b287363 Compare July 14, 2026 23:20
Comment thread docs/source/driver/authoring.rst Outdated
Comment thread docs/source/driver/authoring.rst Outdated
Comment thread docs/source/python/quickstart.rst Outdated
Installing Drivers
==================

You'll need to install an ADBC driver for the database you want to connect to. The easiest way is using `dbc <https://docs.columnar.tech/dbc>`_:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should make it clear that this is a third party, and perhaps mention that drivers developed by us are still distributed on PyPI, with other drivers distributed by the third party

Comment thread docs/source/csharp/quickstart.rst Outdated
Installing Drivers
==================

You'll need to install an ADBC driver for the database you want to connect to. The easiest way is using `dbc <https://docs.columnar.tech/dbc>`_:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this is repeated a lot, is there a way we can put this in a separate file and include it wherever we use it?

@amoeba amoeba Jul 17, 2026

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I said this elsewhere but now all quickstarts should be following this kind of pattern,

Installing Drivers
------------------

See Installing Drivers for instructions on installing ADBC drivers for the
database you want to connect to. For the example below, you could install dbc
and run dbc install postgresql.

Comment thread docs/source/java/quickstart.rst Outdated
==========

Here we'll briefly tour basic features of ADBC with the PostgreSQL driver for Java.
Here we'll briefly tour basic features of ADBC with Java using the PostgreSQL driver.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The current example does appear to use the JDBC adapter; maybe it should be switched to use the JNI adapter?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in f7b12cd.

Comment thread docs/source/client_libraries.rst
Comment thread docs/source/integrations.rst
amoeba and others added 2 commits July 14, 2026 17:58
Co-authored-by: David Li <li.davidm96@gmail.com>
Co-authored-by: David Li <li.davidm96@gmail.com>
Comment thread docs/source/client_libraries.rst Outdated
Comment thread docs/source/driver/alt1.rst Outdated
Comment thread docs/source/integrations.rst Outdated
Comment thread docs/source/integrations.rst
Comment thread docs/source/integrations.rst
Comment thread docs/source/index.rst
Comment thread docs/source/index.rst Outdated
Comment thread docs/source/index.rst
Comment thread docs/source/driver/index.rst
Comment thread docs/source/index.rst Outdated
Comment thread docs/source/connection_profiles.rst
Comment thread docs/source/driver/authoring.rst Outdated
Comment thread docs/source/integrations.rst Outdated

----

dplyr

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch. Added in 7db4ac6

Comment thread docs/source/cpp/recipe/quickstart.cc Outdated
Comment on lines +45 to +46
/// # Install dbc
/// curl -fsSL https://dbc.sh | sh

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hrm... I know the recipe needs this. Could we avoid telling users how to install dbc by moving this into cpp_recipe.sh and just showing running dbc install sqlite?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, this is the incorrect install command. Should be:

curl -LsSf https://dbc.columnar.tech/install.sh | sh

But it's probably better to just say:

See the `dbc documentation <https://docs.columnar.tech/dbc>`_ for how to install dbc.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep. This should be gone now. Anywhere we need to tell users to install a driver with dbc should use this language:

Installing Drivers
------------------

See :ref:`driver-table-install` for instructions on installing ADBC drivers for
the database you want to connect to. For the example below, you could install
`dbc <https://docs.columnar.tech/dbc>`__ and run ``dbc install postgresql``.

and we can easily tweak it everywhere if we want something different.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@amoeba how's this? cea2d11

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, sorry, I can revert my commit. But I'm confused; how is it gone if I'm still seeing it here?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, I think your fixes missed the C++ one.

Maybe it's better to keep it my way just for the C++ one, since --level user is needed to avoid installing the driver in the conda environment.

@amoeba

amoeba commented Jul 17, 2026

Copy link
Copy Markdown
Member Author

Updated OP, TODO copied here for posterity,

TODO:

  • IAN - Reconcile driver/authoring.rst with https://docs.adbc-drivers.org/building-drivers/.
  • BRYCE - Replace driver/index.rst with the alt3 version.
  • IAN - On connection_profiles.rst, show one or more examples of TOML connection profiles.
  • IAN - On connection_profiles.rst, consider using a tabbed interface showing multiple languages (not just C++).
  • Review each language quickstart for consistency with the changes made here.
  • IAN - Update glossary to clarify "client library" vs. "driver manager" consistent with client_libraries.rst.
  • IAN - Rework or remove Old Content on index.rst.
  • IAN - Incorporate Java-based Flight SQL driver into alt3 version of drivers page.
  • Address items in TODO file.
  • Remove TODO file.
  • Remove alt1, alt2, alt4 files.
  • Alphabetize items on Tools & Integrations page

@amoeba
amoeba marked this pull request as ready for review July 17, 2026 04:12
@amoeba
amoeba requested review from kou and zeroshade as code owners July 17, 2026 04:12
@amoeba
amoeba requested a review from CurtHagenlocher July 17, 2026 04:12
Comment on lines +45 to +47
The easiest way to get it is with `dbc <https://docs.columnar.tech/dbc/>`__,
which installs prebuilt driver binaries from Columnar's `ADBC driver registry
<https://dbc-cdn.columnar.tech>`__:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this is a JavaScript example and it already requires npm, any objections to suggesting this here?

npm install -g @columnar-tech/dbc

Comment on lines +34 to +36
See :ref:`driver-table-install` for instructions on installing ADBC drivers for
the database you want to connect to. For the example below, you could install
`dbc <https://docs.columnar.tech/dbc>`__ and run ``dbc install sqlite``.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this is a Python example and it already requires pip, any objections to suggesting this here?

pipx install dbc

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs: document third-party ecosystem (tools, drivers)

4 participants