Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A Rust implementation? #55

Closed
teymour-aldridge opened this issue Jun 1, 2020 · 2 comments
Closed

A Rust implementation? #55

teymour-aldridge opened this issue Jun 1, 2020 · 2 comments

Comments

@teymour-aldridge
Copy link

I noticed that there is a Rust implementation of the Postgres client, but not for the server. I think that the server would benefit from the speed a Rust implementation (possibly more than the client) could bring.
This should maybe be in the realtime repository instead.

@kiwicopple
Copy link
Member

You're right about the client rust libraries. Bobbie has already started some of this work here: https://github.com/supabase/postgrest-rs
This library will get wrapped into a supabase/supabase-rs library which provides the broader functionality (sockets, auth etc).

As for re-writing the servers, Rust is very interesting for us and maybe one day there will be a re-write! Right now we want to build fast using languages which have massive community support. Node/Js has that feature (for better or worse), and we're a small team so we need a language which anyone in the team can jump into the code at any time. The realtime server is written in elixir for its concurrency and fault tolerance, so it's a unique case in our repos.

Also check out PostgREST: https://github.com/PostgREST/postgrest/. We use this heavily in Supabase but it's not one of our own repos, just a tool which we know and love. It's written in Haskell and Supabase wouldn't exist without it

@soedirgo soedirgo transferred this issue from supabase/postgres-meta Jun 10, 2020
@kiwicopple
Copy link
Member

I'm going to close this one @teymour-aldridge , but feel free to reopen if you have any other questions

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

No branches or pull requests

2 participants