Building, Installing, and Setting Up the Helix Project

This document provides a step-by-step guide for building, installing, and setting up the Helix project. It is intended for expert developers familiar with the Helix project.

Building the Development Environment

  1. Install Go:

    The Helix project is written in Go. Install Go from the official website https://go.dev/ and ensure your environment is configured correctly.

  2. Install Node.js and npm:

    Helix uses Node.js and npm for building frontend assets. Install them from the official website https://nodejs.org/.

  3. Install Python:

    Helix utilizes Python for various tasks. Install Python from the official website https://www.python.org/ and ensure it’s in your PATH environment variable.

  4. Install Docker:

    Helix utilizes Docker for containerization. Install Docker from the official website https://www.docker.com/.

  5. Install Docker Compose:

    Install Docker Compose by following the instructions from the official documentation https://docs.docker.com/compose/install/.

Building the Project

  1. Clone the Repository:

    Clone the Helix repository from GitHub:

    git clone https://github.com/helixml/helix.git
              
  2. Install Dependencies:

    Navigate to the project directory and install dependencies:

    cd helix
              go mod download
              npm install
              pip install -r requirements.txt
              
  3. Build the Project:

    Build the Go application:

    go build -o helix
              

Setting Up the Project

  1. Configure Environment Variables:

    Create a .env file in the project root directory and set the necessary environment variables. Refer to the project documentation for a list of required environment variables.

  2. Initialize the Database:

    Run the database migration scripts:

    python manage.py migrate
              
  3. Start the Application:

    Start the Go application:

    ./helix
              
  4. Start the Frontend Development Server:

    Navigate to the frontend directory and start the development server:

    cd frontend
              npm run dev
              
  5. Access the Application:

    The application will be accessible at the specified address and port in the environment variables.

Running the Application in Production

  1. Build the Docker Image:

    Build a Docker image for the application:

    docker-compose build
              
  2. Run the Docker Container:

    Run the Docker container:

    docker-compose up -d
              
  3. Access the Application:

    The application will be accessible at the specified address and port in the docker-compose.yml file.

Troubleshooting

If you encounter any issues, refer to the project documentation and troubleshooting guides.