All checks were successful
Code quality checks / biome (push) Successful in 10s
2.1 KiB
2.1 KiB
Discord Profile Page
A cool little web app that shows your Discord profile, current activity, and more. Built with Bun and EJS.
Prerequisite: Lanyard Backend
This project depends on a self-hosted or public Lanyard instance for Discord presence data.
Make sure Lanyard is running and accessible before using this profile page.
Getting Started
1. Clone & Install
git clone https://git.creations.works/creations/profilePage.git
cd profilePage
bun install
2. Configure Environment
Copy the example environment file and update it:
cp .env.example .env
Required .env
Variables
Variable | Description |
---|---|
HOST |
Host to bind the Bun server (default: 0.0.0.0 ) |
PORT |
Port to run the server on (default: 8080 ) |
LANYARD_USER_ID |
Your Discord user ID |
LANYARD_INSTANCE |
Lanyard WebSocket endpoint URL |
Optional Lanyard KV Vars (per-user customization)
These are expected to be defined in Lanyard's KV store:
Variable | Description |
---|---|
snow |
Enables snow background effect (true ) |
rain |
Enables rain background effect (true ) |
readme |
URL to a README file displayed on your profile |
colors |
Enables avatar-based color theme (uses node-vibrant ) |
3. Start the App
bun run start
Then open http://localhost:8080
in your browser.
Docker Support
Build & Start with Docker Compose
docker compose up -d --build
Make sure your .env
file is correctly configured before starting.
Tech Stack
- Bun – Runtime
- EJS – Templating
- CSS – Styling
- node-vibrant – Avatar color extraction
- Biome.js – Linting and formatting