Skip to content

Databases Documentation - #3072

Merged
atharvadeosthale merged 13 commits into
stardustfrom
stardust-databases
Jul 27, 2026
Merged

Databases Documentation#3072
atharvadeosthale merged 13 commits into
stardustfrom
stardust-databases

Conversation

@atharvadeosthale

@atharvadeosthale atharvadeosthale commented Jun 29, 2026

Copy link
Copy Markdown
Member

Summary

Restructures the databases docs into per-database-type sections and adds complete documentation for four database types, plus draft announcement posts.

Restructure

  • Moved TablesDB to live within the databases section and set up redirects from the previous URLs.
  • Each database type now has its own sub-sidebar under Databases.

DocumentsDB

  • Full documentation section: collections, documents, queries, pagination, ordering, permissions, transactions, bulk operations, atomic numeric operations, timestamp overrides, backups, and JSON imports/exports.

VectorsDB

  • Full documentation section: collections with fixed dimension, documents (embeddings + metadata), built-in text embedding generation, HNSW vector search (cosine, dot product, Euclidean), queries, pagination, permissions, transactions, bulk operations, backups, and CSV imports/exports.

Native PostgreSQL

  • 12 core pages (overview with specifications and pricing, quick start, connections, connection pooling, extensions, backups and PITR, branches, high availability, scaling, network security, monitoring, maintenance).
  • 7 concept pages covering database fundamentals (tables and data types, querying rows, joins and relationships, indexes, transactions, data modeling and normalization, security and access control with roles and RLS), each self-contained with a shared example schema and real captured outputs, plus an index-lookup diagram (light and dark).
  • 17 integration guides: Node.js drivers, Prisma, Drizzle, Auth.js, Better Auth, Laravel, Rails, Django, FastAPI, Spring Boot, EF Core, GORM, Next.js, dbt, Metabase, Grafana, Retool.
  • Console screenshots (light and dark) for the create flow, credentials, SQL editor, monitor, connections, roles, and settings pages.

Native MySQL

  • 11 core pages mirroring the PostgreSQL structure (extensions are PostgreSQL-only).
  • 7 concept pages mirroring the PostgreSQL set, adapted to MySQL behavior where the engines differ (no FULL JOIN, no materialized views, statement-level error handling in transactions, REPEATABLE READ default, prefix/functional/invisible indexes, and an access-control page built around views and application-level scoping since MySQL has no row-level security).
  • The same 17 integration guides, converted to MySQL toolchains (mysql2, @prisma/adapter-mariadb, Drizzle mysql-core, mysqlclient, asyncmy, Connector/J, MySql.EntityFrameworkCore, gorm mysql driver, dbt-mysql, and more).
  • Create-flow Console screenshots (light and dark).

Blog

  • Four draft announcement posts (hidden from listings via draft: true, cover images to be added): DocumentsDB, VectorsDB, native PostgreSQL, and native MySQL.

Misc

  • Registered sql, pgsql, and prisma languages for code highlighting.

Verification

  • Every SDK code block on the native database pages was executed in Node and Rust against a live instance; remaining languages were checked against generated SDKs.
  • All SQL, shell, and driver examples were run against live PostgreSQL 18 and MySQL 8.4 databases, including the full integration-guide flows (migrations, ORM queries, BI tools).
  • Concept pages: every SQL block executed live on both engines; EXPLAIN plans, deadlocks, RLS denials, and error messages are real captured outputs. Data type catalogs, isolation levels, index types, and privilege boundaries enumerated from the running engines.
  • All internal links verified against the working tree; every page render-checked.

Split the Databases docs into a menu of database types. The /docs/products/databases
overview becomes a menu (Appwrite databases: TablesDB, DocumentsDB, VectorsDB;
Native databases: PostgreSQL, MySQL). Existing TablesDB content moves under
/tablesdb with its full sidebar; DocumentsDB, VectorsDB, PostgreSQL, and MySQL get
their own sections with placeholder overviews. Adds redirects for all moved pages.
Add DocumentsDB docs (concepts and journeys) under databases/documentsdb, move TablesDB within the databases section with redirects from the previous URLs, and align the backups and bulk operations pages.
@appwrite

appwrite Bot commented Jun 29, 2026

Copy link
Copy Markdown

Appwrite Website

Project ID: 69d7efb00023389e8d27

Sites (1)
Site Status Logs Preview QR
 website
69d7f2670014e24571ca
Failed Failed View Logs Preview URL QR Code

Website (appwrite/website)

Project ID: 684969cb000a2f6c0a02

Sites (1)
Site Status Logs Preview QR
 website
68496a17000f03d62013
Queued Queued View Logs Preview URL QR Code


Tip

Environment variable changes require redeployment to take effect

@atharvadeosthale
atharvadeosthale changed the base branch from main to stardust June 29, 2026 14:43
@greptile-apps

greptile-apps Bot commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR restructures the databases documentation by moving TablesDB into a dedicated sub-section, adding four new database type sections (DocumentsDB, VectorsDB, native PostgreSQL, native MySQL), and registering sql, pgsql, and prisma code-highlighting languages. All old /docs/products/databases/* URLs are covered by new redirects pointing to their TablesDB equivalents.

  • Redirects — 36 new entries in redirects.json cover every TablesDB page previously at the root databases path, plus all 12 legacy sub-pages; no gaps found.
  • Legacy bannertablesdb/legacy/+layout.svelte injects a deprecation alert with a computed link that strips legacy/ and remaps documents→rows / collections→tables; logic is correct for all defined pages.
  • Code highlightingsql and pgsql are added as first-class languages; prisma is aliased to graphql with an explanatory comment.

Confidence Score: 5/5

Safe to merge; this is a documentation-only restructure with complete redirect coverage and no runtime logic changes beyond two small layout and routing additions.

All old URLs are redirected correctly, the new layout and highlight-language registrations are correct, and no findings affect runtime behavior or content rendering.

Files Needing Attention: The three new database-product layouts (mysql, postgresql, vectorsdb) share the same parent-label inconsistency with documentsdb; a one-line fix in each brings them in line with the tablesdb pattern.

Important Files Changed

Filename Overview
src/redirects.json Adds 36 new redirect entries covering all TablesDB pages moved from /docs/products/databases/* to /docs/products/databases/tablesdb/*; all 22 old root-level paths plus 12 legacy sub-paths are accounted for.
src/lib/utils/code.ts Registers sql and pgsql as first-class highlight.js languages and prisma as an alias for graphql; both language modules exist in highlight.js.
src/routes/docs/products/databases/tablesdb/legacy/+layout.svelte Injects a deprecation banner with a computed link; replaceLegacyUrl correctly strips legacy/ and remaps documents to rows and collections to tables, and the $effect keeps it current during navigation.
src/routes/docs/products/databases/tablesdb/legacy/+page.ts Redirects the legacy root through an intermediate URL that redirects again via redirects.json — two hops where one would suffice.
src/routes/docs/products/databases/mysql/+layout.svelte Correct two-sidebar layout for MySQL; parent.label is 'MySQL' instead of 'Databases', inconsistent with tablesdb.
src/routes/docs/products/databases/postgresql/+layout.svelte Correct two-sidebar layout for PostgreSQL; parent.label is 'PostgreSQL' instead of 'Databases', same inconsistency.
src/routes/docs/products/databases/vectorsdb/+layout.svelte Correct two-sidebar layout for VectorsDB; parent.label is 'VectorsDB' instead of 'Databases', same inconsistency.
src/routes/docs/products/databases/tablesdb/+layout.svelte Two-sidebar layout for TablesDB; correctly uses parent.label 'Databases' — the reference pattern the other new layouts should follow.
.optimize-cache.json Cache entries added for all newly committed image files; extension mismatches (.png keys vs .avif files) are intentional per team convention, and every new image has a corresponding cache entry.

Reviews (7): Last reviewed commit: "Normalize optimize cache formatting" | Re-trigger Greptile

Comment thread src/routes/docs/products/databases/documentsdb/+layout.svelte
Comment thread src/routes/docs/products/databases/tablesdb/+page.markdoc
Comment thread src/routes/docs/products/databases/documentsdb/backups/+page.markdoc Outdated
Comment thread src/routes/docs/products/databases/documentsdb/bulk-operations/+page.markdoc Outdated
@atharvadeosthale

Copy link
Copy Markdown
Member Author

WIP - console screenshots & import / export

Seven concept pages per engine (tables, queries, joins, indexes,
transactions, data modeling, access control) with a new Concepts
sidebar group. All SQL verified against live databases; index
lookup diagram in light and dark variants.
# Conflicts:
#	.optimize-cache.json
@atharvadeosthale
atharvadeosthale merged commit d6fb9a8 into stardust Jul 27, 2026
6 of 7 checks passed
@atharvadeosthale
atharvadeosthale deleted the stardust-databases branch July 27, 2026 14:18
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.

2 participants