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 (16.13.x or 18.x is required.) (Windows Guide) (Linux Guide)
- yarn (
npm install --global yarn
) (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 > script.js
node script.js
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
yarn workspace @snailycad/client build
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:8000/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!
Starting SnailyCAD
After completing all the steps above, we are ready to startup the CAD. To do this run the following command:
yarn run concurrently "yarn workspace @snailycad/client start" "yarn workspace @snailycad/api generate && yarn workspace @snailycad/api start"
To run SnailyCADv4 in the background, you can use PM2 instead of the command above.
6. Accessing SnailyCADv4
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
You can also connect SnailyCADv4 to a domain via a proxy such as NGINX or Apache
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
Do not use localhost
for Accessing SnailyCAD. It will not work!