Envault
Guides

Initial Setup

Configuring your Envault instance

After installing the dependencies, you need to configure the core services.

Database Setup (Supabase)

Envault relies on Supabase for authentication and database storage.

  1. Create a new project in the Supabase Dashboard.
  2. Go to Project Settings > API and copy your:
    • Project URL
    • anon public key
    • service_role secret key (keep this safe!)

Update your .env.local file:

NEXT_PUBLIC_SUPABASE_URL=your_project_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_anon_key
SUPABASE_SERVICE_ROLE_KEY=your_service_key

Encryption Keys

Envault uses a master key to encrypt the database keys. This is critical for security.

Critical Security Warning

You must generate a strong random string for your ENCRYPTION_KEY. If you lose this key, all data encrypted with it will be irretrievable.

Generate a secure key (e.g., using openssl):

openssl rand -hex 32

Add this to your .env.local:

ENCRYPTION_KEY=your_generated_hex_key

Running the Development Server

Now you are ready to start the application.

npm install -g portless
npm run dev

Open https://envault.localhost:1355 with your browser to see the result.

Email Configuration (Optional)

Envault uses Resend to send emails for invites and notifications.

  1. Sign up for a Resend account and create an API Key.
  2. Add your key to .env.local:
RESEND_API_KEY=your_resend_api_key

You can verify that your email configuration works by sending a test email:

npm run test:email -- your-email@example.com

Once you have email delivery set up, individual users can fine‑tune which alerts they receive via the Notifications section in their account settings. See the Notifications guide for details on the available categories and defaults.