Metadata-Version: 2.5
Name: vitibase
Version: 0.1.0
Summary: Python client for Vitibase — Postgres hosted in India, with an instant REST API, auth, storage and realtime.
Project-URL: Homepage, https://vitibase.com
Project-URL: Source, https://github.com/3n881/vitibase_2.0
Author: Replova Labs Pvt Ltd
License: Copyright 2026 Replova Labs Pvt Ltd
        
        Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
        except in compliance with the License. You may obtain a copy of the License at
        
            http://www.apache.org/licenses/LICENSE-2.0
        
        Unless required by applicable law or agreed to in writing, software distributed under the
        License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
        either express or implied. See the License for the specific language governing permissions
        and limitations under the License.
        
        ---
        
        This package depends on and re-exports the supabase Python package, Copyright Supabase, Inc.,
        licensed under the Apache License, Version 2.0.
License-File: LICENSE
Keywords: auth,database,dpdp,india,postgres,realtime,vitibase
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Database
Requires-Python: >=3.9
Requires-Dist: supabase<3,>=2.31.0
Description-Content-Type: text/markdown

# vitibase

Python client for [Vitibase](https://vitibase.com) — Postgres hosted in India, with an instant
REST API, authentication, file storage and realtime.

```bash
pip install vitibase
```

```python
import os
from vitibase import create_client, Client

vitibase: Client = create_client(
    os.environ.get("VITIBASE_PROJECT_REF"),
    os.environ.get("VITIBASE_KEY"),
)

response = vitibase.table("orders").select("id, total").eq("status", "paid").execute()
```

## A project ref, or a URL

`create_client` takes either. A ref is the twenty-letter identifier on your project's Connect
panel, and the URL is built for you:

```python
create_client("abcdefghijklmnopqrst", key)   # https://abcdefghijklmnopqrst.vitibase.in
create_client("https://db.example.com", key) # used exactly as given
```

`project_url(ref)` is exported separately, for the places that need the address rather than a
client.

## Async

```python
from vitibase import acreate_client

client = await acreate_client(project_ref, key)
```

## What this package is

A thin layer over [`supabase`](https://pypi.org/project/supabase/), which it re-exports in
full. Vitibase serves the same data-plane API, so a second client would mean maintaining a
worse one and owning every bug in it.

Migrating an existing application is one import line:

```diff
-from supabase import create_client, Client
-client = create_client(SUPABASE_URL, SUPABASE_KEY)
+from vitibase import create_client, Client
+client = create_client(VITIBASE_PROJECT_REF, VITIBASE_KEY)
```

Every exception and helper type is the upstream object, so `except PostgrestAPIError` keeps
working. `VitibaseException` and `SupabaseException` are the same class under two names.

## Licence and attribution

Apache-2.0. Depends on `supabase`, which is MIT licensed and copyright Supabase, Inc. Postgres
is a registered trademark of the PostgreSQL Community Association of Canada. Supabase is a
trademark of Supabase, Inc., which does not endorse Vitibase.
