DEV Community

Cover image for Supabase (Baas)
Vijay Kumar
Vijay Kumar

Posted on

Supabase (Baas)

Supabase is a backend as a service platform for creating web application and mobile application without manually creating the complex backend.

My freelancing profile Upwork

Why there is need of supabase?

Because supabase provide pre-built functionalities to the users like Authentication box , Database management , File storage, API and a lot more and developer don't need to focus on backend development, Developer can solely focus on their frontend part of web app. For example

Authentication

Example: Supabase provides a complete user authentication system out of the box, supporting email/password login, third-party OAuth providers (Google, GitHub, etc.), and magic link sign-ins.
Pre-built functionality: You don’t need to build your own authentication system from scratch. Instead, you can just integrate Supabase’s API to handle user login, registration, and session management.

Database Management

Example: Supabase uses PostgreSQL as its database and provides a UI to easily manage tables, relationships, and data directly from their dashboard.
Pre-built functionality: Instead of setting up your own database server, handling migrations, and writing SQL queries manually, Supabase provides an interface where you can manage all this, including real-time syncing of data.

Real-time APIs

Example: Supabase enables real-time functionality where updates to the database can be streamed in real time to your client application.
Pre-built functionality: Instead of writing complex WebSocket code or other real-time mechanisms, Supabase allows you to subscribe to database changes (e.g., new entries, updates, deletions) and receive updates in real time.

File Storage

Example: Supabase offers an object storage service where you can store files, such as images, videos, and documents, securely in the cloud.
Pre-built functionality: You don’t need to set up and configure your own storage server. Supabase provides a ready-to-use API to upload, store, and retrieve files.

API Generation

Example: When you create a new database table in Supabase, it automatically generates RESTful APIs for CRUD (Create, Read, Update, Delete) operations.
Pre-built functionality: Without needing to manually create and configure an API, you get endpoints ready to interact with the database. For example, you can easily fetch data from a table using a simple API call like /rest/v1/your-table.

Row-level Security (RLS)

Example: Supabase comes with built-in row-level security (RLS) policies, which allow you to define who can access or modify specific rows of data.
Pre-built functionality: This takes care of data access permissions based on user roles, making it much easier to secure your application’s data without manually writing complex authorization logic..## Analytics & Logs
Example: Supabase provides built-in analytics and logging tools that track database performance, queries, and user activities.
Pre-built functionality: You don’t need to set up a separate logging or analytics service; Supabase automatically tracks these and presents them in a dashboard for easy monitoring.

Edge Functions (Serverless Functions)

Example: Supabase allows you to create serverless functions that can be triggered via HTTP requests.
Pre-built functionality: These functions let you execute server-side code without needing to manage a server. You can create custom logic that runs in response to API requests or database changes.

GraphQL Support

Example: Supabase recently introduced GraphQL support, allowing you to use GraphQL queries to interact with your database.
Pre-built functionality: Instead of implementing a GraphQL server and schema from scratch, you can use Supabase's pre-built system to query and mutate data using GraphQL.
These pre-built services make it easier for developers to focus on building the core functionality of their apps without worrying about infrastructure or repetitive backend tasks.

Top comments (0)