Covers Node.js install, build-tools for native SQLite module, clone, install, build, run, PM2 process management, firewall, and update steps. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1.9 KiB
1.9 KiB
AutoFirmer
Automated futures trading dashboard for prop firm accounts via Tradovate.
VPS Setup (Ubuntu 22.04 / 24.04)
1. Update the system
apt update && apt upgrade -y
2. Install Node.js 22+
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
node --version # should be v22.x or higher
3. Install build tools (required for better-sqlite3 native module)
apt install -y build-essential python3
4. Clone the repo
git clone https://github.com/Senofy/autofirmer.git
cd autofirmer
5. Install dependencies
npm install
6. Build
npm run build
7. Run
Development (with hot reload):
npm run dev
Production:
npm start
The app runs on port 3000 by default. Access it at http://<your-vps-ip>:3000.
First-time setup
On first run, the SQLite database (autotrader.sqlite) is created automatically in the project root. No migrations need to be run manually.
Open the app in your browser and add your firms through the UI:
- Click + Add Firm on the main page
- Enter the firm name, Tradovate username, and password
- Go to the firm's Settings page to configure account types (prefix, profit target, consistency %, etc.)
- Return to the main page — accounts will populate once the firm connects to Tradovate
Keeping it running (PM2)
npm install -g pm2
pm2 start "npm start" --name autofirmer
pm2 save
pm2 startup # follow the printed command to enable on reboot
To restart after pulling updates:
git pull
npm install
npm run build
pm2 restart autofirmer
Firewall
If you only need local/trusted access, restrict port 3000:
ufw allow ssh
ufw allow from <your-ip> to any port 3000
ufw enable
Updating
git pull
npm install # only needed if dependencies changed
npm run build
pm2 restart autofirmer