System Requirements

Understand the software, accounts, and tools required to install and run CareNova successfully.

Written By Dev010

Last updated 19 days ago

Before installing CareNova, make sure your environment meets all prerequisites listed below. These requirements ensure the platform runs correctly in both development and production.

Node.js & Runtime

CareNova requires a modern Node.js runtime environment.

Requirement

Minimum Version

Node.js

18.x or higher

npm

9.x or higher

Any modern operating system is supported for development β€” macOS, Linux, or Windows. For production deployments, a Linux-based environment is recommended.

Supabase Account

A Supabase account is required. CareNova uses Supabase for:

  • Authentication β€” email/password login, session management, email confirmation

  • Database β€” hosted PostgreSQL instance

  • File Storage β€” avatars, logos, medical attachments, landing page assets

To get started:

  1. Create a free account at supabase.com

  2. Create a new Supabase project

  3. Retrieve the following credentials from your project settings

From Settings β†’ API:

  • NEXT_PUBLIC_SUPABASE_URL

  • NEXT_PUBLIC_SUPABASE_ANON_KEY

  • SUPABASE_SERVICE_ROLE_KEY

From Settings β†’ Database β†’ Connection String:

  • DATABASE_URL β€” use the Transaction pooler (port 6543) and append ?pgbouncer=true

  • DIRECT_DATABASE_URL β€” use the Session mode (port 5432) for migrations only (optional)

CareNova uses pgBouncer transaction mode. Port 6543 with ?pgbouncer=true is required for the app to connect correctly. Port 5432 is only needed when running npm run db:migrate.

Database

CareNova uses PostgreSQL 14 or higher via Supabase.

The Supabase free tier is sufficient for development and small deployments. For production environments with higher traffic, a paid Supabase plan is recommended.

After setting up your Supabase project, you will run the provided INSTALL.sql file in the Supabase SQL Editor to create all required tables, indexes, and enums automatically.

Storage Buckets

CareNova requires four Supabase storage buckets. These are created during the setup process:

Bucket

Purpose

avatars

User profile pictures

logos

Clinic logos and favicons

medical-attachments

Medical record file uploads

landing-assets

Landing page images and assets

Setup instructions are covered in the Supabase Setup section of this documentation.

Resend Account (Email)

A Resend account is required for transactional emails β€” signup confirmation, password reset, and email verification.

  1. Create a free account at resend.com

  2. Verify your sending domain

  3. Generate an API key

  4. Add it as RESEND_API_KEY in your environment variables

Without a Resend API key, email confirmation will not work and users will not be able to complete registration. A mock log is used in development when the key is absent.

Envato Purchase Code

A valid Envato purchase code is required to activate CareNova on first launch.

Your purchase code can be found in your Envato Downloads page after purchasing CareNova on CodeCanyon.

On first launch, CareNova will display an activation screen where you enter your purchase code. Once activated, the screen will not appear again.

Hosting Platform

For production deployment, CareNova requires a platform capable of running Next.js 14 applications.

Recommended:

Platform

Notes

Vercel

Recommended β€” native Next.js support, zero configuration, free tier available

Also compatible:

  • Railway

  • DigitalOcean App Platform

  • Any platform supporting Node.js 18+

Vercel is the officially recommended hosting platform for CareNova. It provides the best compatibility with Next.js 14 App Router and requires no additional configuration for deployment.

Cron Job

CareNova includes a cleanup endpoint that should be called on a daily schedule:

GET /api/cron/cleanup-auth
Authorization: Bearer YOUR_CRON_SECRET

This endpoint cleans up expired login attempts, audit log entries older than 24 hours, and expired sessions.

You will need to set a CRON_SECRET environment variable and configure a daily cron trigger on your hosting platform or via an external cron service.

Web Browser

A modern browser is required to access the dashboard.

  • Google Chrome (recommended)

  • Microsoft Edge

  • Mozilla Firefox

  • Safari

Always use the latest browser version for best compatibility.

Recommended Knowledge

CareNova is designed for developers. Basic familiarity with the following will help you set up, extend, and maintain the platform:

Topic

Why It Matters

TypeScript

CareNova is written in strict TypeScript throughout

Next.js 14

App Router, Server Components, Server Actions

Supabase

Auth, database, storage bucket configuration

PostgreSQL

Understanding the database schema and relationships

Drizzle ORM

Running migrations and schema changes

Environment variables

Required for all configuration

Tailwind CSS

Customizing UI components

No deep expertise is required β€” the documentation covers every setup step in detail.

Summary Checklist

Before proceeding to installation, confirm you have:

  • [ ] Node.js 18+ installed

  • [ ] A Supabase account and project created

  • [ ] Supabase API credentials retrieved

  • [ ] Database connection strings (port 6543 and 5432)

  • [ ] A Resend account and API key

  • [ ] Your Envato purchase code ready

  • [ ] A hosting platform selected (Vercel recommended)

  • [ ] A CRON_SECRET value generated

Once all requirements are met, proceed to the Installation guide.