|
| 1 | +# Supabase Elixir Ecosystem Update |
| 2 | + |
| 3 | +_Supa Squad_ |
| 4 | + |
| 5 | +--- |
| 6 | + |
| 7 | +## Project Overview |
| 8 | + |
| 9 | +I’ve been working on several Elixir libraries to integrate with the Supabase ecosystem. Here's the current state and roadmap for the following libraries: |
| 10 | + |
| 11 | +- `supabase-ex` |
| 12 | +- `postgrest-ex` |
| 13 | +- `storage-ex` |
| 14 | +- `gotrue-ex` |
| 15 | + |
| 16 | +--- |
| 17 | + |
| 18 | +## [supabase-ex](https://github.com/zoedsoupe/supabase-ex) |
| 19 | + |
| 20 | +- **Client Initialization** simplified |
| 21 | + - More user control over OTP processes |
| 22 | + - Improved documentation for client startup |
| 23 | +- **HTTP Client** for Supabase APIs |
| 24 | + - High-level configuration options (similar to `supabase-js`) |
| 25 | + - Some points need refactoring |
| 26 | + |
| 27 | +> _**Downloads:** 2422_ |
| 28 | +
|
| 29 | +--- |
| 30 | + |
| 31 | +## [postgrest-ex](https://github.com/zoedsoupe/postgrest-ex) |
| 32 | + |
| 33 | +- **Composability**: Lazy query and filter builders like `postgrest-js` and `postgrest-go` |
| 34 | +- **Error Mapping**: Comprehensive structure |
| 35 | +- **Ecto Integration**: Can parse PostgREST JSON responses into Ecto schemas/structs |
| 36 | + |
| 37 | +> _**Downloads:** 242_ |
| 38 | +> _Many in the Elixir community prefer using Ecto directly for PostgreSQL_ |
| 39 | +
|
| 40 | +--- |
| 41 | + |
| 42 | +## [storage-ex](https://github.com/zoedsoupe/storage-ex) |
| 43 | + |
| 44 | +- **Bucket Operations**: Full CRUD |
| 45 | +- **Object Operations**: Stream uploads/downloads supported |
| 46 | + - Added streaming support for large files |
| 47 | + |
| 48 | +> _**Downloads:** 802_ |
| 49 | +> _There was a broken version on Hex for some time 😕_ |
| 50 | +
|
| 51 | +--- |
| 52 | + |
| 53 | +## [gotrue-ex](https://github.com/zoedsoupe/gotrue-ex) |
| 54 | + |
| 55 | +- **Plug Support**: Middleware integration |
| 56 | +- **Phoenix.LiveView Hooks**: Out-of-the-box support |
| 57 | +- **Full User Management**: Sign up, password reset, email invitation, and admin APIs |
| 58 | +- **Auth Methods**: OAuth, OTP, email/password, ID token, SSO, etc. |
| 59 | +- **Anonymous Sign In** |
| 60 | + |
| 61 | +> _**Downloads:** 1738_ |
| 62 | +
|
| 63 | +--- |
| 64 | + |
| 65 | +## Roadmap & Future Work |
| 66 | + |
| 67 | +### Upcoming Features |
| 68 | +- **Supabase.UI** for `Phoenix.LiveView` |
| 69 | +- **Supabase Realtime Integration** |
| 70 | + - Discussing adapters for `PubSub` and process messaging with @filipecabaco |
| 71 | +- **PKCE Flow Improvements** in `gotrue-ex` |
| 72 | +- **Ecto Integration** in `postgrest-ex` |
| 73 | + - Enhance `Ecto.Query` support |
| 74 | + |
| 75 | +--- |
| 76 | + |
| 77 | +## Closing |
| 78 | + |
| 79 | +Thank you for your attention! 🎉 |
| 80 | + |
| 81 | +Let’s keep building the Supabase ecosystem stronger together! 🚀 |
| 82 | + |
| 83 | +Find my work at: |
| 84 | +[GitHub](https://github.com/zoedsoupe) | [Hex](https://hex.pm/users/zoedsoupe) |
0 commit comments