HNHacker News
TopNewBestAskShowJobs

kiwicopple

6,216 karma · joined April 6, 2017

Supabase (YC S20)

copple [at] supabase [dot] io

submissionscomments
kiwicopple··on Ask HN: FOSS Firebase/Supabase alternatives to try?
> I would just like to enable hCaptcha when registering new users, but there's no way to configure this with Supabase.

this is possible, the docs are here: https://supabase.com/docs/guides/auth/auth-captcha

kiwicopple··on Postgres as a Graph Database: (Ab)Using PgRouting
I’ll see if I can get around to adding the SQL this week
kiwicopple··on Postgres as a Graph Database: (Ab)Using PgRouting
My original goal in this article was to figure out if pgrouting would be a good tool to build a memory-layer (for AI/agents) but the article got a bit long. Early results are promising - I’ll follow up with another article soon

there are some other interesting extensions in this space - onesparse[0] is early in development but pretty exciting as it builds on SuiteSparse which is very mature

[0] https://onesparse.com/docs.html

kiwicopple··on Postgres as a Graph Database: (Ab)Using PgRouting
My original goal in this article was to figure out if pgrouting would be a good tool to build a memory-layer (for AI/agents) but the article got a bit long. Early results are promising - I’ll follow up with another article soon
kiwicopple··on Show HN: Postgres-SQLite: SQLite as first-class types in Postgres
This is a pretty clever use-case for the expanded datum. Any idea of the performance of this?

I can see this would be useful in multi-tenant applications

kiwicopple··on Ask HN: Would you recommend self-hosted Supabase for a large healthcare project?
Hey there, supabase ceo here. I did a cmd+f for "HIPAA" and didn't find it anywhere in your description. I don't mind whether you use supabase or not, but please make sure that you take care of patient data. Everything you do should be HIPAA compliant.

The number 1 feature of your project should be security. Supabase is just Postgres + tools - it will be as secure as you decide to make it.

kiwicopple··on Trailbase: Fast, single-file, open-source app server built using Rust and SQLite
> stick a datastore behind an API saving users from needing to use SQL and offering them a higher level API instead

supabase team here. Yes, we offer an auto-generated API (using PostgREST). But users can also connect directly to their Postgres database or through a connection pooler. People have preferences, so we offer options.

kiwicopple··on Trailbase: Fast, single-file, open-source app server built using Rust and SQLite
as a supabase team member, I must say that I also found it flattering.

nice work OP - i like this version of tech where we all get along. the project looks great, good luck!

kiwicopple··on Supabase Queues
Hey HN, supabase ceo here.

This is a Postgres-native Queue. It's built with the PGMQ extension[0] which the Tembo team have generously licensed their extension with the OSI-compatible PostgreSQL license. PGMQ has API parity with AWS SQS and RSMQ.

Our implementation is compatible with the rest of the supabase stack. With RLS enabled, you can use the client libs to CRUD messages/tasks. eg:

    import { createClient } from '@supabase/supabase-js'

    const queues = createClient(url, key, {
      db: { schema: 'pgmq_public' },
    })
    
    const { data, error } = await queues.rpc('send', {
      queue_name: 'foo',
      message: { hello: 'world' },
    })
We'll be around for any questions

[0] PGMQ: https://github.com/tembo-io/pgmq

kiwicopple··on Show HN: Outerbase Studio – Open-Source Database GUI
you can also find some code for "pglite in the browser" here: https://github.com/supabase-community/database-build
kiwicopple··on Show HN: Outerbase Studio – Open-Source Database GUI
congrats on open sourcing

i didn't try it locally yet but it looks like the cloud version can create SQLite databases inside the browser? Assuming the open source version does too, can you also "connect" to those databases somehow?

kiwicopple··on Show HN: Myphotos.site – Make a gallery website from Google Photos
thanks for using supabase - feel free to reach out if you have any feedback/issues
kiwicopple··on OrioleDB beta7: Benchmarks
> I would have loved that big corps would have taken this approach, as it opens the doors to others to add features for different use cases

EDB and Cybertech definitely made a great start with Zheap[0] although the initiative stalled for whatever reason

Hopefully the community can support this effort to improve the Table AM API - it would be beneficial even beyond oriole. As you point out, a Pluggable Storage system in Postgres would open up a few new use cases

[0] https://wiki.postgresql.org/wiki/Zheap

kiwicopple··on TigerBeetle Test Simulator [video]
The test simulator/game starts at ~17:50

For those jumping to the comments wondering if it's worth watching: TigerBeetle[0] is a database for managing financial transactions. They extend the testing practices of FoundationDB (now spun out into Antithesis[1]), going a layer deeper to test for data integrity when there is disk io corruption (~20:30)

In the demo, they have created a game-like simulation that runs in the browser. You can watch Joran "attack" database nodes and simulate corruption. The entire presentation is impressive and the simulator is very entertaining.

[0] https://tigerbeetle.com

[1] https://antithesis.com

kiwicopple··on Engineers do not get to make startup mistakes when they build ledgers
>very new and unproven, written in a new and unproven programming language

while i'd generally agree with this, in the case of TigerBeetle i think it's safe to trust their tech based on their test-suite/practices - one of the most impressive things I've seen in the past 5 years.

they extend the testing practices of FoundationDB (now spun out into Antithesis[0]), going a layer deeper to test for data integrity when there is disk io corruption. check out from ~20:30 in this demo:

https://youtu.be/sC1B3d9C_sI?feature=shared&t=1228/

[0] https://antithesis.com

kiwicopple··on Ask HN: To those with successful browser extension(s), how did you grow it?
> I am not sure if they're literally reading all the HN comments or doing that in some automated

i use f5bot[0] and have notifications set up for "supabase". it helps that supabase is a unique word so I don't get many false-positives.

[0] https://f5bot.com/

kiwicopple··on MVCC – the part of PostgreSQL we hate the most (2023)
(I’m on the Supabase team)

Oriole has joined us at supabase now and it’s being worked on full time by Alexander and his team. Here is the patch set:

https://www.orioledb.com/docs#patch-set

It will be available to try on the supabase platform later this year too

kiwicopple··on Show HN: OneSparse – Open Source Accelerated Sparse Linear Algebra for Postgres
congrats on shipping michel - it's very cool that you've wrapped this into a PG extension. The breadth-first search looks interesting. Do you have some more docs or a simple example with table data?

One request for the "todos" at the end would be a small docker container with onesparse pre-installed - it would help a lot for getting started

Also I may have missed this, but are there more docs yet, or just the readme for now?

kiwicopple··on PostgreSQL 17
“it depends”. Some considerations for mssql:

- If the foreign server is close (latency) that’s great

- if your query is complex then it helps if the postgres planner can “push down” to mssql. That will usually happen if you aren’t doing joins to local data

I personally like to set up the foreign tables, then materialize the data into a local postgres table using pg_cron. It’s like a basic ETL pipeline completely built into postgres

kiwicopple··on PostgreSQL 17
in supabase we have a “vault” utility for this (for example: https://fdw.dev/catalog/clickhouse/#connecting-to-clickhouse). Sorry I can’t make recommendations for other platforms because i don’t want to suggest anything that could be considered unsafe - hopefully others can chime in
kiwicopple··on PostgreSQL 17
Another amazing release, congrats to all the contributors. There are simply too many things to call out - just a few highlights:

Massive improvements to vacuum operations:

    "PostgreSQL 17 introduces a new internal memory structure for vacuum that consumes up to 20x less memory."
Much needed features for backups:

    "pg_basebackup, the backup utility included in PostgreSQL, now supports incremental backups and adds the pg_combinebackup utility to reconstruct a full backup"
I'm a huge fan of FDW's and think they are an untapped-gem in Postgres, so I love seeing these improvements:

    "The PostgreSQL foreign data wrapper (postgres_fdw), used to execute queries on remote PostgreSQL instances, can now push EXISTS and IN subqueries to the remote server for more efficient processing."
kiwicopple··on Ask HN: Where are you hosting your Postgres database in 2024?
You can still use all the Authentication features of supabase Auth if you disable the data APIs (you just don’t need to use RLS for managing Authorization to your data)

Supabase is designed to work like LEGO, you add the blocks you want, and we keep everything as modular as possible so that you can combine it with other services like kratos if you prefer

kiwicopple··on Ask HN: Where are you hosting your Postgres database in 2024?
Yes, we have plenty of customers doing just that. You can connect to the pg instance directly or using the connection pooler. You can also disable the Data API (PostgREST) if you want so that you have less security surface area to manage (eg, you don’t need to set up RLS policies if you are connecting only from the server)
kiwicopple··on Ask HN: Where are you hosting your Postgres database in 2024?
You are not dependent if you just use the database. You can just pg_dump and and take your data to any other postgres service
kiwicopple··on Show HN: New Sync Engine of SignalDB
Nice work! I’m curious why you went with first change wins instead of last write wins?
kiwicopple··on 2M users but no money in the bank
(supabase ceo)

our postgres offering costs roughly equivalent of RDS so if you use it with Django I don’t think you will come close to 20-40x a VPS, ymmv, depending on your workload

We have an Auth service, but since you use Django you wouldn’t need it - sounds like you’d only need postgres (like a lot of our customers)

kiwicopple··on Postgres as a Search Engine
pgroonga is a good Postgres option in these cases

https://supabase.com/docs/guides/database/extensions/pgroong...

kiwicopple··on Show HN: Write Postgres Foreign Data Wrappers in WASM
This is a framework/guide for creating Postgres FDW's in WASM. This makes it easy for anyone to create a Foreign Data Wrapper and share it with the community. We have released 2 examples: one for Snowflake[0] and one for Paddle[1]

Usually FDWs need to be "pre-installed" on Postgres which makes it harder for Postgres platforms to support a wide variety of FDWs. With WebAssembly, the FDW's can safely be installed from S3 or GitHub.

There are some trade-offs: the performance isn't as good as a "native" FDW. That said, we think the flexibility makes it worthwhile, and we'll improve the performance over time.

Background: what is a FDW? Foreign Data Wrappers are a core feature of Postgres that allow you to access and query data stored in external data sources as if they were native Postgres tables. For example, the Stripe FDW allows you to query all your customers from Stripe inside your postgres database:

    select
      customer_id,
      name
    from
      stripe.customers;

[0] snowflake: https://fdw.dev/catalog/snowflake/

[1] paddle: https://fdw.dev/catalog/paddle/

kiwicopple··on Testing the limits of Supabase and Postgres in a serverless environment
it's also worth noting here that a big benefit of supabase-js is that you can use it from the browser (assuming you have sufficient RLS policies). PostgREST is hosted on the same server as Postgres, so essentially you remove an entire network hop.
kiwicopple··on Ask HN: RFS: Modern SQL/db editor
great list Jake - we're working on a few of these already (and will have an update on the LSP next month)
← PreviousPage 3 of 33Next →