Replace Deno Runtime for Edge Functions with Dapr #14532
Unanswered
ArmanAryanpour
asked this question in
Feature Requests
Replies: 1 comment
-
Looks super promising and might be a real alternative to deno edge functions. It's kind of a deal breaker for us because you cannot limit edge functions to a specific region (GDPR) and when your database is only at one specific location it might even increase latency! So it would be great to have something like this hosted next to your database. (Database functions are unfortunately have to many limits and cannot be used for every use case) |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello maintainers & community,
Thank you for all of your efforts in this beautiful software!
I think from the issues on github (#7742) and discord, it is fair to say that Edge Functions using Deno are not the most liked feature of Supabase.
They are great, but also greatly limited. Most apps, will end up needing to connect to a big cloud provider (aws, gcp, azure) for serverless functions and micro-services.
I came across Dapr on github and I think its a great choice for Supabase as a project. I also think it can fulfill the needs of the company and in fact allow for further monetized features.
In short, Dapr will allow supabase to provide the same features and experiences within Deno functions, supabase dashboard and cli (such as env variables, secret management, etc..) and the user can code in any language they want, and connect their edge functions either to supabase functions or their own cloud provider (via Dapr Extensions). Supabase can make this seamless on the hosted provider for all tiers even the enterprise and keep the same user experience. This is specially useful, since Supabase has many libraries in different programming languages.
Can you imagine how seamless that experience could be?
I can create a function with supabase cli, in whatever language I want (pick from list or pass flag), and it will give me a file with a request handler function in my language with the Supabase client and env variables already in there.
Dapr, also has many missing pieces of Edge functions in a fairly large Supabase application. For example, there is no mechanism to invoke edge functions from edge function reliably without hard-coding. There is no state management and workflows. These features, although complicated, exist in gcp, aws, azure and will be a great addition to edge functions in Supabase.
Currently, the choice is either to build without these in Deno with many limitations, or go to a cloud provider off of supabase. It would be amazing if my future Supabase micro-services, despite their programming language, could be all on supabase. If I have an enterprise, I could even pay the high tier and connect my own cloud, yet have the edge functions managed by Supabase .
Please let me know what you think. I am open to contributing to this.
Thanks again!
Beta Was this translation helpful? Give feedback.
All reactions