Skip to content

Installation

This guide walks you through the complete installation process for IONFLOW Frontend.

ComponentRequirement
OSmacOS, Linux, or Windows (WSL2 recommended)
CPU2+ cores
RAM8GB+
Disk5GB free space
SoftwareVersionInstallation
Node.js18.x or 20.xnodejs.org or fnm
pnpm8.x+npm install -g pnpm
GitLatestgit-scm.com

Using fnm (recommended):

Terminal window
# Install fnm
curl -fsSL https://fnm.vercel.app/install | bash
# Install Node.js
fnm install 20
fnm use 20
# Verify installation
node --version # Should show v20.x.x
Terminal window
# Install pnpm globally
npm install -g pnpm
# Verify installation
pnpm --version # Should show 8.x.x or higher
Terminal window
# Clone the repository
git clone [email protected]:altacrest/gateway-ion.git
# Navigate to project directory
cd ion
Terminal window
# Install all dependencies
pnpm install

This will install:

  • Vue 3 and related packages
  • PrimeVue components
  • Tailwind CSS
  • TypeScript
  • Testing libraries
  • All other dependencies

Copy the example environment file:

Terminal window
cp .env.example .env.local

Edit .env.local with your configuration:

Terminal window
# API Configuration
VITE_API_URL=http://localhost:8000/api
VITE_API_VERSION=v1
# Keycloak Configuration
VITE_KEYCLOAK_URL=http://localhost:8080
VITE_KEYCLOAK_REALM=ionflow
VITE_KEYCLOAK_CLIENT_ID=ionflow-frontend
# Feature Flags
VITE_ENABLE_DEV_TOOLS=true
Terminal window
pnpm dev

The application will be available at http://localhost:5173.

After starting the development server, verify:

  1. Application loads: Navigate to http://localhost:5173
  2. No console errors: Check browser developer tools
  3. Hot reload works: Make a change and verify it updates
Terminal window
# Clear node_modules and reinstall
rm -rf node_modules
pnpm install
Terminal window
# Use a different port
pnpm dev --port 3000
Terminal window
# Check required version in package.json
# Then switch to correct version
fnm use 20
Terminal window
# Regenerate lockfile
rm pnpm-lock.yaml
pnpm install
  • Use WSL2 for better compatibility
  • Enable long paths: git config --global core.longpaths true
  • If using M1/M2, ensure Rosetta 2 is installed for compatibility
  • Ensure build-essential is installed for native modules
Terminal window
# Build and run with Docker
docker-compose up -d

The frontend connects to backend APIs. Ensure the backend services are running:

Terminal window
# Check backend health
curl http://localhost:8000/health