PgCompute: New PostgreSQL Client-Side Extension for Database Functions

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
  • pg-compute-node

    A client-side PostgreSQL extension that lets you execute JavaScript functions on the database directly from the application logic.

  • Thank you for feedback. Sharing a bit more details to make things clearer.

    Upon a function invocation, PgCompute does the following:

    1. Constructs a function signature (name + arguments) and checks if the function was invoked before. (there is a deploymentTable object that tracks functions that were already sent and executed on the database: https://github.com/dmagda/pg-compute-node/blob/main/compute/...)

    2. If the function already exists on the database and its implementation is NOT changed, then PgCompute just sends the function signature to the database for the execution using the `select + schema + "." + funcName + "(" + argsStr + ") statement`.

    3. If the function has never been executed or its implementation is changed, then the function is first deployed/created on the database end and then executed. JS allows you to capture the function body as text and send it over whenever you like. PgCompute uses the `create or replace function " + this.#schema + "." + funcName + "()...` statemet to deploy the function.

    The transitively invoked functions should work if you execute functionA first via PgCompute and then execute functionB that calls functionA. But I still need to check this.

    As for the scope of supported JS APIs, presently the functions have to use the APIs that are allowed/supported by plv8.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • NodeJS Security Best Practices

    11 projects | dev.to | 19 Feb 2024
  • Show HN: Postgres.js – Fastest Full-Featured PostgreSQL Client for Node and Deno

    15 projects | news.ycombinator.com | 24 Mar 2022
  • Recovering XAMPP developer looking to make a Node CRUD app. What Node database tools are easy to learn?

    8 projects | /r/node | 30 Dec 2021
  • What is the consensus about using ORM in node js applications?

    5 projects | /r/node | 28 Nov 2021
  • Kysely — A type-safe SQL query builder for typescript

    3 projects | /r/typescript | 27 Nov 2021