Running Sentient from Source (Self-Host)
This page contains a detailed process for building and running Sentient from the source code on our GitHub repo.
š§° Getting Started (Updated for Web App)
Welcome! This guide will walk you through setting up the Sentient project for local development. Choose your operating system below and follow the steps carefully.
1. Prerequisites
Before you begin, ensure you have the following software installed on your system:
Git: To clone the repository.
Node.js: v18.x or later. Download here.
Python: v3.11 or later. Download here.
MongoDB: The community server. Download here. Ensure it's installed and running as a service.
Redis: For the Celery message broker.
Windows: Install Windows Subsystem for Linux (WSL) and then install Redis inside your WSL distribution (e.g.,
sudo apt-get install redis-server
).Linux/macOS: Install via your package manager (e.g.,
sudo apt-get install redis-server
on Debian/Ubuntu, orbrew install redis
on macOS).
2. Initial Setup
First, clone the repository and set up the Python and Node.js environments.
# 1. Clone the repository
git clone https://github.com/existence-master/Sentient.git
cd Sentient
# 2. Set up the Python backend
cd src/server
python3 -m venv venv
# Activate the virtual environment
# On Windows (PowerShell):
.\venv\Scripts\Activate.ps1
# On Linux/macOS:
source venv/bin/activate
# Install all Python dependencies
pip install -r requirements.txt
cd ../.. # Return to the project root
# 3. Set up the Next.js frontend
cd src/client
npm install
cd ../.. # Return to the project root
3. Environment Configuration
You need to create two .env
files for the backend and frontend. Copy the template files and fill in the required values.
Backend Server:
Copy
src/server/.env.template
to a new file namedsrc/server/.env
.Fill in the values. You will need to create an Auth0 application and get API keys for services like Google, GitHub, etc.
Frontend Client:
Copy
src/client/.env.template
to a new file namedsrc/client/.env
.Fill in the values. Most of these should match the Auth0 configuration from your backend
.env
file.
Here are the updated templates to guide you:
4. Running the Application
We provide startup scripts to launch all the necessary services.
Last updated
Was this helpful?