Skip to main content

Step 1: Clone the repository

git clone git@github.com:akdeb/ElatoAI.git
cd ElatoAI
If youโ€™re on Windows, we recommend using WSL2.
  1. Install WSL2 and Ubuntu.
  2. Open Ubuntu (WSL).
git clone git@github.com:akdeb/ElatoAI.git
cd ElatoAI

Step 2: Start Supabase (Local Backend)

We use Supabase (Postgres + Auth + Storage) to store users, devices, voices, personalities, and conversations. Before you start:
  • Docker Desktop must be installed and running.
brew install supabase/tap/supabase
supabase start
Install the Supabase CLI:
curl -fsSL https://supabase.com/install.sh | sh
Then start Supabase from the repo root:
supabase start
Run everything inside WSL2, with Docker Desktop installed on Windows.
curl -fsSL https://supabase.com/install.sh | sh
supabase start

Step 3: Set up your NextJS frontend

From the frontend-nextjs directory:
cd frontend-nextjs
npm install
cp .env.example .env.local
Then set the following in .env.local:
  • NEXT_PUBLIC_SUPABASE_ANON_KEY=<your-supabase-anon-key>
  • OPENAI_API_KEY=<your-openai-api-key>
Run the local NextJS setup:
npm run dev
To Login, use these credentials for local development:
  • Email: admin@elatoai.com
  • Password: admin

Choose Edge Server option

  1. ELATO MODE (Free usage): Got your own ESP32 DIY hardware device? We offer a fully hosted server for free for up to 30 minutes per month. Register your device on the settings page and it will automatically connect to our edge server.
    • Sign up on Elato
    • Register your device with your ESP32-S3โ€™s MAC Address in the Settings page
  2. DEV MODE (Local on your computer): Alternatively, you can run your own edge server locally by following the instructions below and in the Deno server README.
Pro Tip: You can adjust your mode in firmware-arduino/Config.h.

Step 4: If you run your own Deno edge server locally

The commands below are the same on macOS, Linux, and Windows (via WSL2). From the repo root:
cd server-deno
cp .env.example .env
Set your keys in .env:
  • SUPABASE_KEY=<your-supabase-anon-key>
  • OPENAI_API_KEY=<your-openai-api-key>
  • GEMINI_API_KEY=<your-gemini-api-key>
  • XAI_API_KEY=<your-xai-api-key>
  • ELEVENLABS_API_KEY=<your-elevenlabs-api-key>
  • HUME_API_KEY=<your-hume-api-key>
Run the server at port 8000:
deno run -A --env-file=.env main.ts

Step 5: Set up your firmware dev environment

Step 6: Setup complete!

  1. Yay! Youโ€™ve now setup your NextJS frontend, Deno server and firmware succesfully.
  2. If your API Keys are set and have sufficient credits, you should now be able to talk to your voice AI characters.

Try these AI models

Elato now supports 5 major model providers. Now that youโ€™re fully set up, you can plug & play these within seconds.
Need help? Join our Discord community and to any questions and share ideas.