From 500f7ecaba505d42cec11f034cf3e7e709b1b776 Mon Sep 17 00:00:00 2001 From: Copple <10214025+kiwicopple@users.noreply.github.com> Date: Wed, 10 Aug 2022 19:22:28 +0200 Subject: [PATCH] moves the reference homepage over --- apps/reference/docs/reference.md | 465 ------------------------------ apps/reference/docs/reference.mdx | 114 ++++++++ 2 files changed, 114 insertions(+), 465 deletions(-) delete mode 100644 apps/reference/docs/reference.md create mode 100644 apps/reference/docs/reference.mdx diff --git a/apps/reference/docs/reference.md b/apps/reference/docs/reference.md deleted file mode 100644 index 2a58264af54..00000000000 --- a/apps/reference/docs/reference.md +++ /dev/null @@ -1,465 +0,0 @@ ---- -id: reference -sidebar_label: About ---- - -# Reference Documentation - -This section of the docs provides technical descriptions of the products and how to use them. - -## Modularity - -Supabase is modular. While it may seem like a single tool, it is actually a suite of tools that are composed on top of a PostgreSQL database. This offers several advantages: - -- Each tool scales independently. -- Each tool can be self-hosted. -- Developers can disable tools which are not required. -- Each tool is focused on a single task to minimize complexity. - -This is a similar approach to any Enterprise-grade system with an additional focus on modularity: while some companies might cut-corners, Supabase makes modularity a priority. - -## Architecture - -- `Database` - - [PostgreSQL](https://www.postgresql.org/) is an object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance. - - Coonection Pooling: [PgBouncer](https://www.pgbouncer.org/) is a lightweight connection pooler for PostgreSQL. - - [postgres-meta](https://github.com/supabase/postgres-meta) is a RESTful API for managing your Postgres, allowing you to fetch tables, add roles, and run queries, etc. -- `Auth` - - Authentication: [GoTrue](https://github.com/supabase/gotrue) is an SWT based API for managing users and issuing SWT tokens. - - Authorization: using [PostgreSQL Row Level Security](https://supabase.com/docs/guides/auth/row-level-security). -- `APIs` - - Websockets: [Realtime](https://github.com/supabase/realtime) is an Elixir server that allows you to listen to PostgreSQL inserts, updates, and deletes using websockets. Realtime polls Postgres' built-in replication functionality for database changes, converts changes to JSON, then broadcasts the JSON over websockets to authorized clients. - - REST: [PostgREST](http://postgrest.org/) is a web server that turns your PostgreSQL database directly into a RESTful API - - GraphQL: [pg_graphql](https://github.com/supabase/pg_graphql) adds GraphQL support to your PostgreSQL database. - - Edge Functions: [Deno](https://deno.land/) is a modern and secure runtime for JavaScript, TypeScript, and WebAssembly. - - Reverse Proxy: [Kong](https://github.com/Kong/kong) is a cloud-native API gateway. -- `File Storage` - - [Storage](https://github.com/supabase/storage-api) provides a RESTful interface for managing Files stored in S3, using Postgres to manage permissions. - -## Open source - -Each part of the Supabase ecosystem is open source. Wherever possible, we support existing tools rather than developing from scratch. - -We choose tools which are [OSI Compliant](https://opensource.org/licenses), with a strong bias towards MIT, Apache 2.0, and PostgreSQL licenses. -Everything we open source is licensed with one of these 3 licenses: - -- MIT for client libraries -- Apache 2.0 for API servers -- PostgreSQL for any Postgres-related tooling - -## Client Libraries - -Supabase provides client libraries for building your products. Our approach for client libraries is modular. Each sub-library is a standalone implementation for a single system. - -For example, our `supabase-js` library is a wrapper around five smaller libraries: - -- `postgrest-js` (REST API) -- `gotrue-js` (Authentication) -- `storage-js` (File Storage) -- `realtime-js` (Websockets) -- `functions-js` (Edge Functions) - -## Community - -Supabase officially supports the Javascript libraries, and all other libraries are community-maintained. This is one way that we try to support and foster an open source ecosystem. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Supabase Tool: - - PostgREST - - - - GoTrue - - - - Realtime - - - - Storage - - - - Edge Functions - -
JavaScript (TypeScript) - - supabase-js - - - - postgrest-js - - - - gotrue-js - - - - realtime-js - - - - storage-js - - - - functions-js - -
Dart - - supabase-dart - - - - postgrest-dart - - - - gotrue-dart - - - - realtime-dart - - - - storage-dart - - - - functions-dart - -
Flutter - - supabase-flutter - - -----
Community
C# - - supabase-csharp - - - - postgrest-csharp - - - - gotrue-csharp - - - - realtime-csharp - - - - storage-csharp - - -
Go- - - postgrest-go - - -- - - storage-go - - -
Java-- - - gotrue-java - - ---
Kotlin- - - postgrest-kt - - - - gotrue-kt - - ---
Python - - supabase-py - - - - postgrest-py - - - - gotrue-py - - - - realtime-py - - - - storage-py - - -
Ruby - - supabase-rb - - - - postgrest-rb - - ----
Rust- - - postgrest-rs - - ----
Swift - - supabase-swift - - - - postgrest-swift - - - - gotrue-swift - - - - realtime-swift - - - - storage-swift - - -
diff --git a/apps/reference/docs/reference.mdx b/apps/reference/docs/reference.mdx new file mode 100644 index 00000000000..9c49afdc589 --- /dev/null +++ b/apps/reference/docs/reference.mdx @@ -0,0 +1,114 @@ +--- +id: reference +title: Reference Documentation +sidebar_label: About +hide_table_of_contents: true +--- + +import Link from '@docusaurus/Link' + +The Supabase Reference Docs provide technical descriptions of the products and how to use them. + +
+
+ {/* Database */} +
+ +
+

JavaScript

+

JavaScript and TypeScript documentation.

+
+ +
+ {/* Auth */} +
+ +
+

Dart

+

Dart and Flutter documentation.

+
+ +
+ {/* Examples - coming soon */} +
+ +
+

Supabase CLI

+

Manage your Supabase projects.

+
+ +
+ {/* CLI */} +
+ +
+

Supabase API

+

Manage your Supabase projects.

+
+ +
+ {/* */} +
+
+ +## Community + +The Supabase Reference Docs provide technical descriptions of the products and how to use them. + +
+
+ {/* Auth */} +
+ +
+

Auth Helpers

+

+ A collection of framework specific Auth utilities for working with + Supabase. +

+
+ +
+ {/* */} +
+
+ +## Self-Hosting + +The Supabase Reference Docs provide technical descriptions of the products and how to use them. + +
+
+ {/* Examples - coming soon */} +
+ +
+

Auth Server

+

Auth reference.

+
+ +
+ {/* */} +
+ +
+

Storage

+

Storage reference.

+
+ +
+ {/* */} +
+