Installation
There are two ways to install Auktiva: using the automated installer or manual installation.
Requirements
Before installing Auktiva, ensure you have:
- Node.js 20.x or higher (LTS recommended)
- npm 10+ (comes with Node.js 20+)
- Git for cloning the repository
Check your Node.js version:
node --versionIf you need to upgrade Node.js, download from nodejs.org or use a version manager:
# Using nvm (Node Version Manager)
nvm install 20
nvm use 20The setup wizard will validate your Node.js version and provide instructions if it doesnât meet the requirements.
Automated Installation (Recommended)
The easiest way to get started is using our one-line installer:
curl -fsSL https://raw.githubusercontent.com/thomsa/auktiva/main/scripts/install.sh | bashThis installs the latest stable release. For development/testing, you can install the latest commit from main:
curl -fsSL https://raw.githubusercontent.com/thomsa/auktiva/main/scripts/install.sh | bash -s -- --latestThe --latest flag installs unreleased code from the main branch which may be
unstable or contain breaking changes. Use only for development or testing.
This script will:
- Check for Node.js (20+) and Git
- Clone the repository to your current directory
- Install dependencies
- Launch an interactive setup wizard
Setup Wizard
The setup wizard guides you through configuring:
- Storage: Local filesystem or S3-compatible storage
- Database: SQLite (local) or Turso (cloud)
- Authentication: Generates secure secrets
- Feature flags: Enable/disable open auctions
After configuration, it automatically:
- Generates the Prisma client
- Pushes the database schema
- Seeds initial data (currencies)
- Builds the application
- Optionally installs and starts PM2
Manual Installation
If you prefer manual setup:
1. Clone the Repository
git clone https://github.com/thomsa/auktiva.git
cd auktiva2. Install Dependencies
npm install3. Configure Environment
Copy the example environment file:
cp .env.example .envEdit .env with your configuration. See Configuration for details.
4. Set Up Database
Generate the Prisma client:
npm run db:generatePush the schema to your database:
npm run db:pushSeed initial data:
npm run seed:currencies5. Build and Run
For development:
npm run devFor production:
npm run build
npm startVerifying Installation
After installation, open your browser to:
- Development:
http://localhost:3000 - Production: Your configured
AUTH_URL
You should see the Auktiva landing page. Click âGet Startedâ to create your first account.
Installation Scripts Architecture
Auktiva uses a two-stage installation process with two scripts that work together:
Stage 1: scripts/install.sh (Bootstrap)
This is the entry point for fresh installations, run via curl | bash:
curl -fsSL https://raw.githubusercontent.com/thomsa/auktiva/main/scripts/install.sh | bashResponsibilities:
- Validates prerequisites (Node.js 20+, npm, git)
- Clones the repository
- Installs npm dependencies
- Launches the setup wizard (Stage 2)
Stage 2: cli/setup.ts (Configuration)
The interactive setup wizard that configures your Auktiva instance:
npm run setupResponsibilities:
- Validates Node.js version (redundant check for direct invocation)
- Guides through configuration (database, storage, auth, email)
- Writes the
.envfile - Runs database migrations and seeds
- Builds the application
- Optionally sets up PM2 for process management
Installation Flows
Fresh install (new server):
curl ... | bash â install.sh â npm install â setup.tsReconfigure existing installation:
npm run setup â setup.ts (directly)Both scripts validate Node.js 20+ independently:
install.shcatches version issues early, before cloning/installingsetup.tscatches issues when someone runsnpm run setupdirectly on an existing clone