sourcebot/CONTRIBUTING.md

1.9 KiB

Build from source

Note

Building from source is only required if you'd like to contribute. The recommended way to use Sourcebot is to use the pre-built docker image.

  1. Install go, and NodeJS. Note that a NodeJS version of at least 21.1.0 is required.

  2. Install ctags (required by zoekt)

    // macOS:
    brew install universal-ctags
    
    // Linux:
    snap install universal-ctags
    
  3. Install docker and start the development Docker containers for PostgreSQL and Redis.

    docker compose -f docker-compose-dev.yml up -d
    
  4. Clone the repository with submodules:

    git clone --recurse-submodules https://github.com/sourcebot-dev/sourcebot.git
    
  5. Run make to build zoekt and install dependencies:

    cd sourcebot
    make
    

    The zoekt binaries and web dependencies are placed into bin and node_modules respectively.

  6. Create a copy of .env.development and name it .env.development.local. Update the required environment variables.

  7. If you're using a declerative configuration file (the default behavior if you didn't enable auth), create a configuration file and update the CONFIG_PATH environment variable in your .env.development.local file.

  8. Start Sourcebot with the command:

    yarn dev
    

    A .sourcebot directory will be created and zoekt will begin to index the repositories found in the config.json file.

  9. Start searching at http://localhost:3000.