Self-Hosting Bifröst from Source
This guide will walk you through the steps to self-host Bifröst by cloning the repository and running it directly with Node.js.
Prerequisites
- Git installed on your system. You can download it from git-scm.com.
- Node.js (v20 or higher recommended) installed on your system. You can download it from nodejs.org.
- pnpm installed globally. You can install it by running:
npm install -g pnpm - Basic knowledge of using the terminal.
1. Clone the Repository
git clone https://github.com/KartoffelChipss/bifrost.git
cd bifrost
2. Create a Fluxer Bot
- Open Fluxer.
- Go to User Settings → Applications.
- Click Create Application.
- Copy the Bot Token and Application ID — you’ll need them for the
.envfile.
3. Create a Discord Bot
- Go to the Discord Developer Portal:
https://discord.com/developers/applications - Click New Application.
- Go to Bot → Add Bot.
- Copy the Bot Token.
- Under Privileged Gateway Intents, enable:
- Message Content Intent
- Copy the Bot Token and Application ID — you’ll need them for the
.envfile.
4. Create the .env File
Copy the example environment file and fill in your credentials:
cp .env.example .env
Open the .env file in your preferred text editor and add your credentials:
# Fluxer
BF_FLUXER_TOKEN="Your Fluxer Bot Token"
BF_FLUXER_APP_ID="Your Fluxer Application ID"
# Discord
BF_DISCORD_TOKEN="Your Discord Bot Token"
BF_DISCORD_APP_ID="Your Discord Application ID"
See .env.example for a reference, or the full Environment Variables documentation, including how to connect to a self-hosted Fluxer instance.
5. Install Dependencies
pnpm install
6. Start Bifröst
pnpm start
You should see the bot starting up in your terminal. The invite links for both the Discord and Fluxer bots will be printed in the logs.
7. Invite the Discord and Fluxer Bot
Use the invite links from the logs to invite the bots to your servers.