.. _community_tutorials: Community Tutorials ------------------- * `Building a Contacts List with PostgREST and Vue.js `_ - In this video series, DigitalOcean shows how to build and deploy an Nginx + PostgREST(using a managed PostgreSQL database) + Vue.js webapp in an Ubuntu server droplet. * `PostgREST + Auth0: Create REST API in minutes, and add social login using Auth0 `_ - A step-by-step tutorial to show how to dockerize and integrate Auth0 to PostgREST service. * `PostgREST + PostGIS API tutorial in 5 minutes `_ - In this tutorial, GIS • OPS shows how to perform PostGIS calculations through PostgREST :ref:`s_procs` interface. * `"CodeLess" backend using postgres, postgrest and oauth2 authentication with keycloak `_ - A step-by-step tutorial for using PostgREST with KeyCloak(hosted on a managed service). * `How PostgreSQL triggers work when called with a PostgREST PATCH HTTP request `_ - A tutorial to see how the old and new values are set or not when doing a PATCH request to PostgREST. .. _templates: Templates --------- * `compose-postgrest `_ - docker-compose setup with Nginx and HTML example * `svelte-postgrest-template `_ - Svelte/SvelteKit, PostgREST, EveryLayout and social auth .. _eco_example_apps: Example Apps ------------ * `chronicle `_ - tracking a tree of personal memories * `code-du-travail-backoffice `_ - data administration portal for the official French Labor Code and Agreements * `delibrium-postgrest `_ - example school API and front-end in Vue.js * `elm-workshop `_ - building a simple database query UI * `ember-postgrest-dynamic-ui `_ - generating Ember forms to edit data * `ETH-transactions-storage `_ - indexer for Ethereum to get transaction list by ETH address * `ext-postgrest-crud `_ - browser-based spreadsheet * `general `_ - example auth back-end * `goodfilm `_ - example film API * `guild-operators `_ - example queries and functions that the Cardano Community uses for their Guild Operators' Repository * `handsontable-postgrest `_ - an excel-like database table editor * `heritage-near-me `_ - Elm and PostgREST with PostGIS * `ng-admin-postgrest `_ - automatic database admin panel * `pgrst-dev-setup `_ - docker-compose and tmuxp setup for experimentation. * `postgres-postgrest-cloudflared-example `_ - docker-compose setup exposing PostgREST using cloudfared * `postgrest-demo `_ - multi-tenant logging system * `postgrest-example `_ - sqitch versioning for API * `postgrest-sessions-example `_ - example for cookie-based sessions * `postgrest-translation-proxy `_ - calling to external translation service * `postgrest-ui `_ - ClojureScript UI components for PostgREST * `postgrest-vercel `_ - run PostgREST on Vercel (Serverless/AWS Lambda) * `PostgrestSkeleton `_ - Docker Compose, PostgREST, Nginx and Auth0 * `PostGUI `_ - React Material UI admin panel * `prospector `_ - data warehouse and visualization platform .. _devops: DevOps ------ * `cloudgov-demo-postgrest `_ - demo for a federally-compliant REST API on cloud.gov * `cloudstark/helm-charts `_ - helm chart to deploy PostgREST to a Kubernetes cluster via a Deployment and Service * `jbkarle/postgrest `_ - helm chart with a demo database for development and test purposes * `Limezest/postgrest-cloud-run `_ - expose a PostgreSQL database on Cloud SQL using Cloud Run .. _eco_external_notification: External Notification --------------------- These are PostgreSQL bridges that propagate LISTEN/NOTIFY to external queues for further processing. This allows stored procedures to initiate actions outside the database such as sending emails. * `pg-bridge `_ - Amazon SNS * `pg-kinesis-bridge `_ - Amazon Kinesis * `pg-notify-webhook `_ - trigger webhooks from PostgreSQL's LISTEN/NOTIFY * `pgsql-listen-exchange `_ - RabbitMQ * `postgres-websockets `_ - expose web sockets for PostgreSQL's LISTEN/NOTIFY * `postgresql-to-amqp `_ - AMQP * `postgresql2websocket `_ - Websockets * `skeeter `_ - ZeroMQ .. _eco_extensions: Extensions ---------- * `aiodata `_ - Python, event-based proxy and caching client. * `pg-safeupdate `_ - prevent full-table updates or deletes * `postgrest-auth (criles25) `_ - email based auth/signup * `postgrest-node `_ - Run a PostgREST server in Node.js via npm module * `postgrest-oauth `_ - OAuth2 WAI middleware * `postgrest-oauth/api `_ - OAuth2 server * `PostgREST-writeAPI `_ - generate Nginx rewrite rules to fit an OpenAPI spec * `spas `_ - allow file uploads and basic auth .. _clientside_libraries: Client-Side Libraries --------------------- * `aor-postgrest-client `_ - JS, admin-on-rest * `elm-postgrest `_ - Elm * `general-angular `_ - TypeScript, generate UI from API description * `jarvus-postgrest-apikit `_ - JS, Sencha framework * `mithril-postgrest `_ - JS, Mithril * `ng-postgrest `_ - Angular app for browsing, editing data exposed over PostgREST. * `postgrest-client `_ - JS * `postgrest-csharp `_ - C# * `postgrest-dart `_ - Dart * `postgrest-ex `_ - Elixir * `postgrest-go `_ - Go * `postgrest-js `_ - TypeScript/JavaScript * `postgrest-kt `_ - Kotlin * `postgrest-py `_ - Python * `postgrest-request `_ - JS, SuperAgent * `postgrest-rs `_ - Rust * `postgrest-sharp-client `_ (needs maintainer) - C#, RestSharp * `postgrest-swift `_ - Swift * `postgrest-url `_ - JS, just for generating query URLs * `postgrest_python_requests_client `_ - Python * `postgrester `_ - JS + Typescript * `postgrestR `_ - R * `py-postgrest `_ - Python * `redux-postgrest `_ - TypeScript/JS, client integrated with (React) Redux. * `vue-postgrest `_ - Vue.js