Autoinstaller
This guide explains how to setup SnailyCADv4 with an automated installer process
Requirements
All the items listed below are required to get the CAD up and running smoothly.
- Git (Windows Guide) (Linux Guide)
- Node.js (18.x is supported.) (Windows Guide) (Linux Guide)
- pnpm (Windows Guide) (Linux Guide)
- PostgreSQL (version 14 or higher) (Video Guide) (Linux Guide)
Getting Started
Once you've got all the items installed, we can get started with installing SnailyCADv4. Open the Command Prompt on Windows or the Terminal on Linux.
Now run the commands seen bellow. This will automatically run the commands of the Standalone installation and will ask questions where needed.
curl
is supported on all operating systems.
curl https://raw.githubusercontent.com/SnailyCAD/autoinstaller/main/dist/index.js > autoinstaller.mjs
node autoinstaller.mjs
Filling environment questions (.env file)
WARNING: Please, do not edit apps/client/.env
or apps/api/.env
directly. Always edit the root .env
file.
When changing something in the .env
file after the installation process, make sure to run the following steps:
node scripts/copy-env.mjs --client --api
pnpm turbo run build --filter=@snailycad/client
POSTGRES_PASSWORD
: The password to the PostgreSQL database.POSTGRES_USER
: The username to the PostgreSQL database.DB_HOST
: The database host. Most likelylocalhost
DB_PORT
: The port to the database.POSTGRES_DB
: The database name.JWT_SECRET
: This is a random value to keep the CAD secured.CORS_ORIGIN_URL
: The URL/IP to where the CAD is hosted at, e.g.,https://cad.mysite.com
orhttp://99.99.00.190:3000
.NEXT_PUBLIC_CLIENT_URL
: The URL/IP to where the CAD is hosted at. e.g.:https://cad.mysite.com
orhttp://99.99.00.190:3000
.NEXT_PUBLIC_PROD_ORIGIN
: The URL/IP to where the API is hosted at (/v1
is required.). e.g.:https://cad-api.mysite.com/v1
orhttp://99.99.00.190:8080/v1
.PORT_API
: The port where the API should run on. (Default 8080)PORT_CLIENT
: The port where the client should run on. (Default: 3000)ENCRYPTION_TOKEN
: Used to generate encrypted values. Must be 32 characters longDATABASE_URL
: Do not change unless you know what you're doing!
Please take a few minutes and read the in-depth guide for each environment variable here.
Starting SnailyCAD
After completing all the steps above, we are ready to startup the CAD. To do this run the following command:
pnpm run start
To run SnailyCADv4 in the background, you can use PM2 instead of the command above.
6. Accessing SnailyCADv4
The ports set for the client and API must be forwarded in your firewall if you're not using some proxy.
Default ports:
- Client port:
3000
- API port:
8080
- Proxy ports:
443
and80
You cannot use localhost
to access SnailyCADv4. It will not work!
By default, you can access SnailyCADv4 via a web browser on your LAN IP and the PORT_CLIENT
, example: http://192.168.92.20:3000
. However, if you want to access SnailyCADv4 via a domain, you must setup a reverse proxy.
We have guides for NGINX, an Apache Guide can be found here.