From 25f7d14761dd589449b57489c70805e8b606fdde Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 3 Oct 2025 21:14:15 +0200 Subject: [PATCH 01/12] Connect: Refactor section about "MCP" to "Integrations" --- docs/connect/index.md | 2 +- docs/{connect => integrate}/mcp/community.md | 0 docs/{connect => integrate}/mcp/cratedb-mcp.md | 0 docs/{connect => integrate}/mcp/index.md | 0 4 files changed, 1 insertion(+), 1 deletion(-) rename docs/{connect => integrate}/mcp/community.md (100%) rename docs/{connect => integrate}/mcp/cratedb-mcp.md (100%) rename docs/{connect => integrate}/mcp/index.md (100%) diff --git a/docs/connect/index.md b/docs/connect/index.md index 63bfe3d9..525053a1 100644 --- a/docs/connect/index.md +++ b/docs/connect/index.md @@ -114,7 +114,7 @@ CLI programs ide Drivers DataFrame libraries -mcp/index +../integrate/mcp/index ORM libraries ``` diff --git a/docs/connect/mcp/community.md b/docs/integrate/mcp/community.md similarity index 100% rename from docs/connect/mcp/community.md rename to docs/integrate/mcp/community.md diff --git a/docs/connect/mcp/cratedb-mcp.md b/docs/integrate/mcp/cratedb-mcp.md similarity index 100% rename from docs/connect/mcp/cratedb-mcp.md rename to docs/integrate/mcp/cratedb-mcp.md diff --git a/docs/connect/mcp/index.md b/docs/integrate/mcp/index.md similarity index 100% rename from docs/connect/mcp/index.md rename to docs/integrate/mcp/index.md From 538794f754251e4fa003de4579bdc009433e841a Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 3 Oct 2025 21:19:29 +0200 Subject: [PATCH 02/12] Connect: Rename "Configure" to "General information" --- docs/connect/{configure.md => general.md} | 3 ++- docs/connect/index.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) rename docs/connect/{configure.md => general.md} (98%) diff --git a/docs/connect/configure.md b/docs/connect/general.md similarity index 98% rename from docs/connect/configure.md rename to docs/connect/general.md index 6c1d2516..890fdf78 100644 --- a/docs/connect/configure.md +++ b/docs/connect/general.md @@ -1,5 +1,6 @@ (connect-configure)= -# Configure +(connect-general)= +# General information :::{include} /_include/links.md ::: diff --git a/docs/connect/index.md b/docs/connect/index.md index 525053a1..c992f8a1 100644 --- a/docs/connect/index.md +++ b/docs/connect/index.md @@ -108,7 +108,7 @@ Database driver connection examples. :maxdepth: 1 :hidden: -configure +general connect CLI programs ide From 01432a032a03c35e20a5def6c70a6a36670d2e92 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 3 Oct 2025 21:21:21 +0200 Subject: [PATCH 03/12] Connect/Applications: Rename "Connect to CrateDB" to "Applications" --- docs/connect/{connect.md => application.md} | 3 ++- docs/connect/index.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) rename docs/connect/{connect.md => application.md} (98%) diff --git a/docs/connect/connect.md b/docs/connect/application.md similarity index 98% rename from docs/connect/connect.md rename to docs/connect/application.md index 0be7f992..86cf7e7a 100644 --- a/docs/connect/connect.md +++ b/docs/connect/application.md @@ -1,5 +1,6 @@ (start-connect)= -# Connect to CrateDB +(connect-applications)= +# Applications :::{include} /_include/links.md ::: diff --git a/docs/connect/index.md b/docs/connect/index.md index c992f8a1..d1a43674 100644 --- a/docs/connect/index.md +++ b/docs/connect/index.md @@ -109,7 +109,7 @@ Database driver connection examples. :hidden: general -connect +application CLI programs ide Drivers From b566a0c07236d681aa2160a1e8d349d6b6dd4f0f Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 3 Oct 2025 21:27:49 +0200 Subject: [PATCH 04/12] Connect/Applications: Absorb dedicated pages about "CLI" and "IDEs" --- docs/connect/application.md | 207 ++++++++++++++++++++++++++++++++++-- docs/connect/cli.md | 183 ------------------------------- docs/connect/ide.md | 14 --- docs/connect/index.md | 2 - 4 files changed, 199 insertions(+), 207 deletions(-) delete mode 100644 docs/connect/cli.md delete mode 100644 docs/connect/ide.md diff --git a/docs/connect/application.md b/docs/connect/application.md index 86cf7e7a..10984017 100644 --- a/docs/connect/application.md +++ b/docs/connect/application.md @@ -6,12 +6,12 @@ ::: :::{div} sd-text-muted -Start interacting with the database for the first time. +Connect to CrateDB from database shells and IDEs. ::: (use-admin-ui)= -## Admin UI +## CrateDB Admin UI :::{div} CrateDB ships with a browser-based administration interface called [Admin UI]. @@ -47,11 +47,202 @@ about it, please refer to its documentation at {ref}`crate-crash:index`. ![crash default screen after executing a query](https://cratedb.com/docs/crate/crash/en/latest/_images/query.png){width=320px} -(use-drivers)= -## Adapters and drivers -:::{div} -- To learn how to connect to CrateDB using software drivers, see {ref}`connect`. +(cli)= +(connect-cli)= +## Command-line programs + +This section provides a quick overview about a few CLI programs, and how to +use them for connecting to CrateDB clusters. We recommend to use crash, +psql, http ([HTTPie]), or curl. + +You can use them to quickly validate HTTP and PostgreSQL connectivity to your +database cluster, or to conduct basic scripting. + +Before running the command-line snippets outlined below, please use the correct +settings instead of the placeholder tokens ``, `` and +``. + +When using CrateDB Cloud, `` will be something like +`.{aks1,eks1}.region.{azure,aws}.cratedb.net`. + + +(crash)= +### crash + +```{div} +:style: "float: right" +![image](https://cratedb.com/docs/crate/crash/en/latest/_images/query.png){w=240px} +``` + +The **CrateDB Shell** is an interactive command-line interface (CLI) tool for +working with CrateDB. For more information, see the documentation about [crash]. + +```{div} +:style: "clear: both" +``` + +::::{tab-set} + +:::{tab-item} CrateDB and CrateDB Cloud +:sync: server + +```{code-block} shell +CRATEPW= \ + crash --hosts 'https://:4200' --username '' \ + --command "SELECT 42.42;" +``` +::: + +:::{tab-item} CrateDB on localhost +:sync: localhost + +```{code-block} shell +# No authentication. +crash --command "SELECT 42.42;" + +``` +::: + +:::: + + +(psql)= +### psql + +```{div} +:style: "float: right" +![image](https://github.com/crate/crate-clients-tools/assets/453543/8f0a0e06-87f6-467f-be2d-b38121afbafa){w=240px} +``` + +**psql** is a terminal-based front-end to PostgreSQL. It enables you to type in +queries interactively, issue them to PostgreSQL, and see the query results. +For more information, see the documentation about [psql]. + +```{div} +:style: "clear: both" +``` + +::::{tab-set} + +:::{tab-item} CrateDB and CrateDB Cloud +:sync: server + +```{code-block} shell +PGUSER= PGPASSWORD= \ + psql postgresql:///crate --command "SELECT 42.42;" +``` +::: + +:::{tab-item} CrateDB on localhost +:sync: localhost + +```{code-block} shell +# No authentication. +psql postgresql://crate@localhost:5432/crate --command "SELECT 42.42;" +``` +::: + +:::: + + +(httpie)= +### HTTPie -- To learn more about all the details of CrateDB features, operations, and - its SQL dialect, please also visit the [CrateDB Reference Manual]. +```{div} +:style: "float: right" +![image](https://github.com/crate/crate-clients-tools/assets/453543/f5a2916d-3730-4901-99cf-b88b9af03329){w=240px} +``` + +The **HTTPie CLI** is a modern, user-friendly command-line HTTP client with +JSON support, colors, sessions, downloads, plugins & more. +For more information, see the documentation about [HTTPie]. + +```{div} +:style: "clear: both" +``` + +::::{tab-set} + +:::{tab-item} CrateDB and CrateDB Cloud +:sync: server + +```{code-block} shell +http "https://:@:4200/_sql?pretty" \ + stmt="SELECT 42.42;" +``` ::: + +:::{tab-item} CrateDB on localhost +:sync: localhost + +```{code-block} shell +http "localhost:4200/_sql?pretty" \ + stmt="SELECT 42.42;" +``` +::: + +:::: + + +(curl)= +### curl + +```{div} +:style: "float: right" +![image](https://github.com/crate/crate-clients-tools/assets/453543/318b0819-a0d4-4112-a320-23852263362c){w=240px} +``` + +The venerable **curl** is the ubiquitous command line tool and library for transferring +data with URLs. For more information, see the documentation about [curl]. + +This example combines it with [jq], a lightweight and flexible command-line JSON processor. + +```{div} +:style: "clear: both" +``` + +::::{tab-set} + +:::{tab-item} CrateDB and CrateDB Cloud +:sync: server + +```{code-block} shell +echo '{"stmt": "SELECT 42.42;"}' \ + | curl "https://:@:4200/_sql?pretty" --silent --data @- | jq +``` +::: + +:::{tab-item} CrateDB on localhost +:sync: localhost + +```{code-block} shell +echo '{"stmt": "SELECT 42.42;"}' \ + | curl "localhost:4200/_sql?pretty" --silent --data @- | jq +``` +::: + +:::: + + +(ide)= +(connect-ide)= +## Database IDEs + +Mostly through its PostgreSQL interface, CrateDB supports working with popular +database IDE (Integrated Development Environment) applications. + +### DataGrip + +- {ref}`datagrip` + +### DBeaver + +- {ref}`dbeaver` + + + +[curl]: https://curl.se/ +[crash]: inv:crate-crash:*:label#index +[HTTPie]: https://httpie.io/ +[jq]: https://jqlang.github.io/jq/ +[psql]: https://www.postgresql.org/docs/current/app-psql.html diff --git a/docs/connect/cli.md b/docs/connect/cli.md deleted file mode 100644 index 7053efc9..00000000 --- a/docs/connect/cli.md +++ /dev/null @@ -1,183 +0,0 @@ -(cli)= -(connect-cli)= -# Using command-line programs with CrateDB - -This section provides a quick overview about a few CLI programs, and how to -use them for connecting to CrateDB clusters. We recommend to use crash, -psql, http ([HTTPie]), or curl. - -You can use them to quickly validate HTTP and PostgreSQL connectivity to your -database cluster, or to conduct basic scripting. - -Before running the command-line snippets outlined below, please use the correct -settings instead of the placeholder tokens ``, `` and -``. - -When using CrateDB Cloud, `` will be something like -`.{aks1,eks1}.region.{azure,aws}.cratedb.net`. - - -(crash)= -## crash - -```{div} -:style: "float: right" -![image](https://cratedb.com/docs/crate/crash/en/latest/_images/query.png){w=240px} -``` - -The **CrateDB Shell** is an interactive command-line interface (CLI) tool for -working with CrateDB. For more information, see the documentation about [crash]. - -```{div} -:style: "clear: both" -``` - -::::{tab-set} - -:::{tab-item} CrateDB and CrateDB Cloud -:sync: server - -```{code-block} shell -CRATEPW= \ - crash --hosts 'https://:4200' --username '' \ - --command "SELECT 42.42;" -``` -::: - -:::{tab-item} CrateDB on localhost -:sync: localhost - -```{code-block} shell -# No authentication. -crash --command "SELECT 42.42;" - -``` -::: - -:::: - - -(psql)= -## psql - -```{div} -:style: "float: right" -![image](https://github.com/crate/crate-clients-tools/assets/453543/8f0a0e06-87f6-467f-be2d-b38121afbafa){w=240px} -``` - -**psql** is a terminal-based front-end to PostgreSQL. It enables you to type in -queries interactively, issue them to PostgreSQL, and see the query results. -For more information, see the documentation about [psql]. - -```{div} -:style: "clear: both" -``` - -::::{tab-set} - -:::{tab-item} CrateDB and CrateDB Cloud -:sync: server - -```{code-block} shell -PGUSER= PGPASSWORD= \ - psql postgresql:///crate --command "SELECT 42.42;" -``` -::: - -:::{tab-item} CrateDB on localhost -:sync: localhost - -```{code-block} shell -# No authentication. -psql postgresql://crate@localhost:5432/crate --command "SELECT 42.42;" -``` -::: - -:::: - - -(httpie)= -## HTTPie - -```{div} -:style: "float: right" -![image](https://github.com/crate/crate-clients-tools/assets/453543/f5a2916d-3730-4901-99cf-b88b9af03329){w=240px} -``` - -The **HTTPie CLI** is a modern, user-friendly command-line HTTP client with -JSON support, colors, sessions, downloads, plugins & more. -For more information, see the documentation about [HTTPie]. - -```{div} -:style: "clear: both" -``` - -::::{tab-set} - -:::{tab-item} CrateDB and CrateDB Cloud -:sync: server - -```{code-block} shell -http "https://:@:4200/_sql?pretty" \ - stmt="SELECT 42.42;" -``` -::: - -:::{tab-item} CrateDB on localhost -:sync: localhost - -```{code-block} shell -http "localhost:4200/_sql?pretty" \ - stmt="SELECT 42.42;" -``` -::: - -:::: - - -(curl)= -## curl - -```{div} -:style: "float: right" -![image](https://github.com/crate/crate-clients-tools/assets/453543/318b0819-a0d4-4112-a320-23852263362c){w=240px} -``` - -The venerable **curl** is the ubiquitous command line tool and library for transferring -data with URLs. For more information, see the documentation about [curl]. - -This example combines it with [jq], a lightweight and flexible command-line JSON processor. - -```{div} -:style: "clear: both" -``` - -::::{tab-set} - -:::{tab-item} CrateDB and CrateDB Cloud -:sync: server - -```{code-block} shell -echo '{"stmt": "SELECT 42.42;"}' \ - | curl "https://:@:4200/_sql?pretty" --silent --data @- | jq -``` -::: - -:::{tab-item} CrateDB on localhost -:sync: localhost - -```{code-block} shell -echo '{"stmt": "SELECT 42.42;"}' \ - | curl "localhost:4200/_sql?pretty" --silent --data @- | jq -``` -::: - -:::: - - - -[curl]: https://curl.se/ -[crash]: inv:crate-crash:*:label#index -[HTTPie]: https://httpie.io/ -[jq]: https://jqlang.github.io/jq/ -[psql]: https://www.postgresql.org/docs/current/app-psql.html diff --git a/docs/connect/ide.md b/docs/connect/ide.md deleted file mode 100644 index 18f4f5da..00000000 --- a/docs/connect/ide.md +++ /dev/null @@ -1,14 +0,0 @@ -(ide)= -(connect-ide)= -# Database IDEs - -Mostly through its PostgreSQL interface, CrateDB supports working with popular -database IDE (Integrated Development Environment) applications. - -## DataGrip - -- {ref}`datagrip` - -## DBeaver - -- {ref}`dbeaver` diff --git a/docs/connect/index.md b/docs/connect/index.md index d1a43674..7a61abc3 100644 --- a/docs/connect/index.md +++ b/docs/connect/index.md @@ -110,8 +110,6 @@ Database driver connection examples. general application -CLI programs -ide Drivers DataFrame libraries ../integrate/mcp/index From a0b80f8b29181f3c1cce86dd8697fc9ee6d4b244 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 3 Oct 2025 21:40:45 +0200 Subject: [PATCH 05/12] Connect: Refactor dedicated "Dataframe" and "ORM" pages to "Python" --- docs/connect/df/index.md | 23 --------------- docs/connect/index.md | 2 -- docs/connect/orm.md | 31 ------------------- docs/connect/python.md | 64 +++++++++++++++++++++++++++++++++------- 4 files changed, 53 insertions(+), 67 deletions(-) delete mode 100644 docs/connect/df/index.md delete mode 100644 docs/connect/orm.md diff --git a/docs/connect/df/index.md b/docs/connect/df/index.md deleted file mode 100644 index d621e541..00000000 --- a/docs/connect/df/index.md +++ /dev/null @@ -1,23 +0,0 @@ -(df)= -(dataframe)= -(dataframes)= -(dataframe-examples)= -# CrateDB and DataFrame libraries - -How to use CrateDB together with popular open-source DataFrame libraries. - -## Dask -:::{seealso} -Please navigate to the dedicated page about {ref}`dask`. -::: - -## pandas -:::{seealso} -Please navigate to the dedicated page about {ref}`pandas`. -::: - - -## Polars -:::{seealso} -Please navigate to the dedicated page about {ref}`polars`. -::: diff --git a/docs/connect/index.md b/docs/connect/index.md index 7a61abc3..20fb8766 100644 --- a/docs/connect/index.md +++ b/docs/connect/index.md @@ -111,9 +111,7 @@ Database driver connection examples. general application Drivers -DataFrame libraries ../integrate/mcp/index -ORM libraries ``` ```{toctree} diff --git a/docs/connect/orm.md b/docs/connect/orm.md deleted file mode 100644 index 6096e099..00000000 --- a/docs/connect/orm.md +++ /dev/null @@ -1,31 +0,0 @@ -(orm)= -# CrateDB and ORM libraries - -CrateDB provides dialect support for the following ORM libraries and -frameworks. - -## SQLAlchemy - -[SQLAlchemy] is the Python SQL toolkit and Object Relational Mapper that -gives application developers the full power and flexibility of SQL. - -Python-based [DataFrame](df/index.md) -and [ML](#machine-learning) libraries, and a few [ETL](#etl) -frameworks, are using SQLAlchemy as database adapter library when connecting to -[RDBMS]. - -```{div} -:style: "clear: both" -``` - -- [The CrateDB SQLAlchemy Dialect] -- [Working with SQLAlchemy and CrateDB] -- [SQLAlchemy Code Examples] - - - -[RDBMS]: https://en.wikipedia.org/wiki/RDBMS -[SQLAlchemy]: https://www.sqlalchemy.org/ -[SQLAlchemy Code Examples]: https://github.com/crate/cratedb-examples/tree/main/by-language/python-sqlalchemy -[The CrateDB SQLAlchemy Dialect]: inv:sqlalchemy-cratedb:*:label#index -[Working with SQLAlchemy and CrateDB]: inv:sqlalchemy-cratedb:*:label#by-example diff --git a/docs/connect/python.md b/docs/connect/python.md index 8cbc932d..fad1becf 100644 --- a/docs/connect/python.md +++ b/docs/connect/python.md @@ -1,14 +1,15 @@ (connect-python)= - # Python This guide demonstrates how to connect to a CrateDB Cloud cluster using different kinds of Python drivers. Individual drivers offer specific features for specific needs of your application, so consider reading this enumeration carefully. -(crate-python)= +(python-drivers-official)= +## Official drivers -## crate-python +(crate-python)= +### crate-python The `crate` Python package offers a database client implementation compatible with the Python Database API 2.0 specification, and also includes the CrateDB @@ -28,8 +29,7 @@ with conn: ``` (sqlalchemy-cratedb)= - -## sqlalchemy-cratedb +### sqlalchemy-cratedb The [SQLAlchemy] dialect for CrateDB, based on the HTTP-based DBAPI client library [crate-python]. @@ -47,9 +47,25 @@ for record in result.all(): print(record) ``` +[SQLAlchemy] is the Python SQL toolkit and Object Relational Mapper that +gives application developers the full power and flexibility of SQL. + +Python-based {ref}`dataframe` +and [ML](#machine-learning) frameworks, and a few [ETL](#etl) +frameworks, are using SQLAlchemy as database adapter library when connecting to +[RDBMS]. + +- [The CrateDB SQLAlchemy Dialect] +- [Working with SQLAlchemy and CrateDB] +- [SQLAlchemy Code Examples] + + +(python-drivers-community)= +## Community drivers + (cratedb-async)= -## cratedb-async +### cratedb-async Asynchronous Python driver for CrateDB based on [HTTPX]. See the full documentation at . @@ -69,7 +85,7 @@ asyncio.run(main()) (psycopg2)= -## psycopg2 +### psycopg2 Psycopg is a popular PostgreSQL database adapter for Python. Its main features are the complete implementation of the Python DB API 2.0 specification and the @@ -90,7 +106,7 @@ with conn: (psycopg3)= -## psycopg3 +### psycopg3 [Psycopg 3] is a newly designed PostgreSQL database adapter for the Python programming language. Psycopg 3 presents a familiar interface for everyone who @@ -119,7 +135,7 @@ with psycopg.connect("postgres://crate@localhost:5432/doc") as conn: (aiopg)= -## aiopg +### aiopg aiopg is a python library for accessing a PostgreSQL database from the asyncio (PEP-3156/tulip) framework. It wraps asynchronous features of the Psycopg @@ -144,7 +160,7 @@ loop.run_until_complete(run()) (asyncpg)= -## asyncpg +### asyncpg asyncpg is a database interface library designed specifically for PostgreSQL and Python/asyncio. asyncpg is an efficient, clean implementation of the @@ -167,9 +183,35 @@ loop = asyncio.get_event_loop() loop.run_until_complete(run()) ``` + +(python-dataframe)= +(df)= +(dataframe)= +(dataframes)= +(dataframe-examples)= +## Dataframe libraries + +How to use CrateDB together with popular open-source DataFrame libraries. + +### Dask +- {ref}`dask` + +### pandas +- {ref}`pandas` + +### Polars +- {ref}`polars` + + + [aiopg documentation]: https://aiopg.readthedocs.io/ [asyncpg documentation]: https://magicstack.github.io/asyncpg/current/ [httpx]: https://www.python-httpx.org/ [psycopg 3]: https://www.psycopg.org/psycopg3/docs/ [psycopg documentation]: https://www.psycopg.org/docs/ -[sqlalchemy]: https://www.sqlalchemy.org/ + +[RDBMS]: https://en.wikipedia.org/wiki/RDBMS +[SQLAlchemy]: https://www.sqlalchemy.org/ +[SQLAlchemy Code Examples]: https://github.com/crate/cratedb-examples/tree/main/by-language/python-sqlalchemy +[The CrateDB SQLAlchemy Dialect]: inv:sqlalchemy-cratedb:*:label#index +[Working with SQLAlchemy and CrateDB]: inv:sqlalchemy-cratedb:*:label#by-example From 98fd4e6e519fb71dc97092c4112fe23712191c9f Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 3 Oct 2025 21:52:12 +0200 Subject: [PATCH 06/12] Connect: Add page about natural-language querying (Text-to-SQL) --- docs/connect/index.md | 2 +- docs/connect/natural.md | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 docs/connect/natural.md diff --git a/docs/connect/index.md b/docs/connect/index.md index 20fb8766..ac569278 100644 --- a/docs/connect/index.md +++ b/docs/connect/index.md @@ -111,7 +111,6 @@ Database driver connection examples. general application Drivers -../integrate/mcp/index ``` ```{toctree} @@ -123,6 +122,7 @@ javascript php python ruby +natural ``` diff --git a/docs/connect/natural.md b/docs/connect/natural.md new file mode 100644 index 00000000..22e7b79c --- /dev/null +++ b/docs/connect/natural.md @@ -0,0 +1,22 @@ +(connect-natural)= +(connect-natural-language)= +# Natural language + +Implement natural-language text-to-SQL with [CrateDB] or [CrateDB Cloud]. + +## LlamaIndex + +{ref}`llamaindex` is a data framework for Large Language Models (LLMs). It integrates +with providers and models such as GPT‑4 or Llama 3/4, and provides interfaces to +external data sources for natural‑language querying of your private data. + +## MCP + +CrateDB provides a server for the {ref}`mcp` that can be used to integrate +your data with LLM-based applications like ChatGPT, Claude, Cline, Cursor, +GitHub Copilot, Mistral AI, OpenAI Agents SDK, VS Code, Windsurf, +and others. + + +[CrateDB]: https://cratedb.com/database +[CrateDB Cloud]: https://cratedb.com/docs/cloud/ From dcfb1c995ca45abc65455be23858505624d6e39c Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 3 Oct 2025 21:54:58 +0200 Subject: [PATCH 07/12] Connect: Rename and re-order toc items --- docs/connect/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/connect/index.md b/docs/connect/index.md index ac569278..323c439c 100644 --- a/docs/connect/index.md +++ b/docs/connect/index.md @@ -1,5 +1,5 @@ (connect)= -# Connect +# Connect / Drivers :::{include} /_include/links.md ::: @@ -110,7 +110,6 @@ Database driver connection examples. general application -Drivers ``` ```{toctree} @@ -123,6 +122,7 @@ php python ruby natural +All drivers ``` From 82a1ac81c2aaa9a5eb448ecebae2e317d58c7c7a Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 3 Oct 2025 23:25:13 +0200 Subject: [PATCH 08/12] Connect/General: Add missing reference definitions --- docs/connect/general.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/connect/general.md b/docs/connect/general.md index 890fdf78..2c464cf5 100644 --- a/docs/connect/general.md +++ b/docs/connect/general.md @@ -162,3 +162,8 @@ crate://crate@localhost:4200/?schema=doc - For authenticating properly, please learn about the available [authentication] options. ::: + + +[authentication]: inv:crate-reference:*:label#admin_auth +[schemas]: inv:crate-reference:*:label#ddl-create-table-schemas +[superuser]: inv:crate-reference:*:label#administration_user_management From bac17b4f1c7c4b69a50b66e679f862cbe5ba98bd Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 3 Oct 2025 23:30:22 +0200 Subject: [PATCH 09/12] Connect: Improve guidance by adding a grid/card layout --- docs/connect/index.md | 122 +++++++++++++++++++++++++++++++++--------- 1 file changed, 96 insertions(+), 26 deletions(-) diff --git a/docs/connect/index.md b/docs/connect/index.md index 323c439c..4cdb67bb 100644 --- a/docs/connect/index.md +++ b/docs/connect/index.md @@ -65,45 +65,115 @@ protocol. ::::: -:::::{grid} 1 2 2 2 -:margin: 4 4 0 0 +:::{rubric} Get started +::: +To get started, +please learn about typical connection URI formats for CrateDB and its +default client applications. + +:::::{grid} 2 2 2 3 :padding: 0 -:gutter: 2 +:gutter: 4 -::::{grid-item-card} {material-outlined}`link;2em` How to connect -:class-body: ul-li-wide -- {ref}`connect-configure` +::::{grid-item-card} {material-outlined}`link;2em` General information +:link: connect-configure +:link-type: ref +:link-alt: CrateDB connect URI +Database URI and connection properties. +:::: - To connect to CrateDB, your application or driver needs to be configured - with corresponding database URI and connection properties. +::::{grid-item-card} {material-outlined}`apps;2em` Applications +:link: connect-applications +:link-type: ref +:link-alt: CrateDB standard client applications +Use CLI programs or database IDEs to connect to CrateDB. +:::: -- {ref}`CLI programs ` +::::{grid-item-card} {material-outlined}`landscape;2em` All drivers +:link: connect-drivers +:link-type: ref +:link-alt: All CrateDB drivers +All available drivers and adapters. +:::: + +::::: - Use CLI programs to connect to CrateDB. -- {ref}`Database IDEs ` +:::{rubric} Drivers by language +::: +CrateDB drivers and adapters for supported programming languages, frameworks, and environments. - Use IDEs to connect to CrateDB. -+++ -Database connectivity options and tools. +:::::{grid} 2 2 2 4 +:margin: 4 4 0 0 +:padding: 0 + +::::{grid-item-card} Java +:link: connect-java +:link-type: ref +:link-alt: Connect to CrateDB using Java +:padding: 3 +:text-align: center +:class-card: sd-pt-3 +:class-body: sd-fs-1 +:class-title: sd-fs-6 +{fab}`java` +:::: + +::::{grid-item-card} JavaScript +:link: connect-javascript +:link-type: ref +:link-alt: Connect to CrateDB using JavaScript +:padding: 3 +:text-align: center +:class-card: sd-pt-3 +:class-body: sd-fs-1 +:class-title: sd-fs-6 +{material-regular}`javascript;2em` +:::: + +::::{grid-item-card} PHP +:link: connect-php +:link-type: ref +:link-alt: Connect to CrateDB using PHP +:padding: 3 +:text-align: center +:class-card: sd-pt-3 +:class-body: sd-fs-1 +:class-title: sd-fs-6 +{fab}`php` :::: -::::{grid-item-card} {material-outlined}`link;2em` How to connect -- {ref}`connect-java` -- {ref}`connect-javascript` -- {ref}`connect-php` -- {ref}`connect-python` -- {ref}`connect-ruby` -- Overview: {ref}`connect-drivers` - - All available CrateDB drivers and adapters for supported programming languages, - frameworks, and environments. -+++ -Database driver connection examples. +::::{grid-item-card} Python +:link: connect-python +:link-type: ref +:link-alt: Connect to CrateDB using Python +:padding: 3 +:text-align: center +:class-card: sd-pt-3 +:class-body: sd-fs-1 +:class-title: sd-fs-6 +{fab}`python` +:::: + +::::{grid-item-card} Ruby +:link: connect-ruby +:link-type: ref +:link-alt: Connect to CrateDB using Ruby +:padding: 3 +:text-align: center +:class-card: sd-pt-3 +:class-body: sd-fs-1 +:class-title: sd-fs-6 + +```{image} https://www.svgrepo.com/download/508940/ruby.svg +:width: 40px +``` + :::: ::::: + ```{toctree} :maxdepth: 1 :hidden: From 3ff036fa41a7afdc89496a44ba64c11e430d4b1a Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 3 Oct 2025 23:41:01 +0200 Subject: [PATCH 10/12] Connect: Implement suggestions by CodeRabbit --- docs/connect/python.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/connect/python.md b/docs/connect/python.md index fad1becf..3fc56c42 100644 --- a/docs/connect/python.md +++ b/docs/connect/python.md @@ -51,7 +51,7 @@ for record in result.all(): gives application developers the full power and flexibility of SQL. Python-based {ref}`dataframe` -and [ML](#machine-learning) frameworks, and a few [ETL](#etl) +and {ref}`ML ` frameworks, and a few {ref}`ETL ` frameworks, are using SQLAlchemy as database adapter library when connecting to [RDBMS]. From f736045251ec5479abad95a3aa0c98ea95d7e2dd Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Sat, 4 Oct 2025 00:29:30 +0200 Subject: [PATCH 11/12] Connect/Ruby: Add icon to repository https://www.svgrepo.com/svg/508940/ruby The error was: 429 Client Error: Too Many Requests for url: https://www.svgrepo.com/download/508940/ruby.svg --- docs/_assets/icon/ruby-logo.svg | 40 +++++++++++++++++++++++++++++++++ docs/connect/index.md | 2 +- 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 docs/_assets/icon/ruby-logo.svg diff --git a/docs/_assets/icon/ruby-logo.svg b/docs/_assets/icon/ruby-logo.svg new file mode 100644 index 00000000..16403377 --- /dev/null +++ b/docs/_assets/icon/ruby-logo.svg @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/connect/index.md b/docs/connect/index.md index 4cdb67bb..20748540 100644 --- a/docs/connect/index.md +++ b/docs/connect/index.md @@ -165,7 +165,7 @@ CrateDB drivers and adapters for supported programming languages, frameworks, an :class-body: sd-fs-1 :class-title: sd-fs-6 -```{image} https://www.svgrepo.com/download/508940/ruby.svg +```{image} /_assets/icon/ruby-logo.svg :width: 40px ``` From 6eff8b4e8bf58f2ea8342b3c2c21f8433bbb8228 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Mon, 6 Oct 2025 17:26:01 +0200 Subject: [PATCH 12/12] Connect: Remove "All drivers" card from "Get started" section --- docs/connect/index.md | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/docs/connect/index.md b/docs/connect/index.md index 20748540..9752cf59 100644 --- a/docs/connect/index.md +++ b/docs/connect/index.md @@ -60,6 +60,10 @@ protocol. - [JDBC] - [ODBC] - [SQL] + +```{rubric} Related +``` +- {ref}`All drivers ` :::: ::::: @@ -89,13 +93,6 @@ Database URI and connection properties. Use CLI programs or database IDEs to connect to CrateDB. :::: -::::{grid-item-card} {material-outlined}`landscape;2em` All drivers -:link: connect-drivers -:link-type: ref -:link-alt: All CrateDB drivers -All available drivers and adapters. -:::: - :::::