Skip to content

Setup

Get up and running with the ENT Stack in just two steps:

Prerequisites

1/ 🚀 Create your project

Terminal window
pnpm create ent-stack@latest
  • Creates a new project (folder) based on specific version of this repository.
  • The version used is specified in the description of the npm package.

2/ 🔥 Setup

Terminal window
pnpm fire
  • Installs dependencies
  • Starts the local database in a Docker container
  • Creates the database and tables
  • Runs dev environments for both the backend and frontend

At this point, your application should be up and running locally. But to enable email sending and testing, you need to follow the final step below.

3/ 🧪 Configure Mailing and Run Tests

To enable mailing, you need to do the following:

Resend domainResend API Key
MailSlurp inbox and inbox idMailSlurp API Key

After that, make sure to restart dev environment, and then you can run the tests by executing the following commands:

  • Test Backend
Terminal window
pnpm backend:test
  • Test Frontend
Terminal window
pnpm frontend:test

Here is the list of values that MUST BE THE SAME in both backend and frontend .env files:

BackendFrontend
SITE_NAMENEXT_PUBLIC_SITE_NAME
COOKIE_DOMAINNEXT_PUBLIC_COOKIE_DOMAIN
BACKEND_URLNEXT_PUBLIC_BACKEND_URL
FRONTEND_URLNEXT_PUBLIC_FRONTEND_URL
JWT_SECRETJWT_SECRET

Examples

This section provides examples of setting up the ENT Stack on different operating systems.

🐧 How to install prerequisites on Ubuntu 24

1/ Update the package index

Terminal window
sudo apt update

2/ Download the latest version of Node.js 22

Terminal window
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -

3/ Install Node.js 22

Terminal window
sudo apt install -y nodejs

4/ Check Node.js version

Terminal window
node -v

5/ Install NPM 11

Terminal window
sudo npm install -g npm@11

6/ Install PNPM

Terminal window
sudo npm install -g pnpm

7/ Install prerequisites for Docker

Terminal window
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y

8/ Add Docker’s official GPG key

Terminal window
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

9/ Add Docker’s official APT repository

Terminal window
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

10/ Update the package index to include Docker’s repository

Terminal window
sudo apt update

11/ Install Docker components (Docker Engine, CLI, containerd, Buildx, and Compose plugin)

Terminal window
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

12/ Add your user to the Docker group

Terminal window
sudo usermod -aG docker $USER

13/ Apply the group membership changes

Terminal window
newgrp docker

13/ Create a new project

Terminal window
pnpm create ent-stack@latest

14/ Go to the new project

Terminal window
cd <your project>

Now your project is created, and you can proceed with the setup (check the project’s README.md for the next steps).