Wledger
CTRL + F for physical objects. Manage your inventory. Find your things visually using WLED.
Install / Use
/learn @tuxedocurly/WledgerREADME
The Ultimate Inventory Management System for Makers. Organize your electronic components and find them instantly with WLED.
Check out the official WLEDger documentation site here
What is WLEDger?
WLEDger (WLED + Ledger) is a modern, high-performance inventory system designed specifically for electronics hobbyists, makers, and labs. It solves the problem of "I know I have this part, but where is it?" by integrating with WLED controllers.
When you search for a component, WLEDger doesn't just tell you "Bin A1" — it lights up the specific bin on your storage rack.
<details> <summary><strong>Why I Made WLEDger</strong></summary> I have hundreds of electronic components in my lab. I couldn't remember what parts I had or where they were stored, leading to over-buying and under-utilizing. I wanted a system that solved these problems and got me back to doing what I love: making! <br><br> Existing tools were expensive, closed source or lacking in features/WLED integration. WLEDger bridges these gaps, providing a purpose-built, open source inventory manager that's simple to use and feature rich. </details>Core Features
Visual LED Locating System
Connect your WLED-powered LED strips or matrices to your storage.
- Visual Locate: Click "Locate" on a part, and its bin glows instantly.
- Grid Painter: Use the visual Grid Painter tool to easily map LEDs to bins using Matrix, Strip, or Compound layouts.
- Walls / Dashboards: Organize your containers and controllers into customizable "Walls" for a clean, organized dashboard view.
- Stock Status Colors: Configure different colors for "Locate", "In Stock", "Low Stock", and "Critical".
Powerful Inventory Management
- Fast Search: Instant results using SQLite FTS5 (Full-Text Search).
- Barcode Scanning: Built-in support for scanning parts via your phone's camera.
- Rich Data: Store datasheets (PDFs), images, supplier links, and cost data.
- Tagging: Organize parts with flexible tagging.
LLM Prompt Templates
Don't let your parts gather dust. Copy the prompt. paste it into your favorite LLM, and get inspired or informed about your inventory.
WLEDger comes with some great default prompts to get you started.
- Project Ideas: High quality project ideas to inpsire you to build with your current inventory.
- Integration Guides: Quick guidance on how to use your parts in a real circuit.
- Learning Paths: Curriculum based on the hardware you own to learn new skills.
Enterprise-Grade Usability
- Role-Based Access Control: Admin, Editor, viewer, and (optional) Guest roles.
- Audit Logging: Track every change, stock adjustment, and deletion.
- Responsive Design: Designed with desktop and mobile in mind.
Bulk Import, Backup, and Restore
Flexibility in how you manage your parts, and the data you create in WLEDger.
- Bulk Import: Import all your parts at once! No UI clickin' required.
- Backup: Easily backup all your data. Exports include all your images, docs, and part info in a human-readable format.
- Restore: Restore your database from a backup in a single click.
Localization
WLEDger supports multiple languages:
- English
- German (Deutsch)
- Spanish (Español)
- French (Français)
- Italian (Italiano)
- Portuguese (Português - Brasil)
- Russian (Русский)
- Simplified Chinese (简体中文)
Non-English translations are auto-generated and may contain inaccuracies. If you notice any translation errors or have suggestions for improvements, please file an issue on GitHub.
The Tech Stack
WLEDger V2 has been written for performance, type safety, and extensibility.
- Backend: Go (1.25+) - Fast, compiled, and robust.
- Database: SQLite +
sqlc+goose- Zero-config, reliable storage with type-safe queries and versioned migrations. - Frontend: Templ + HTMX - Server-side rendering with SPA-like interactivity.
- Interactivity: Alpine.js - Lightweight JavaScript for UI state.
- Styling: Tailwind CSS v4 + DaisyUI v5.
- Hardware: WLED - The gold standard for controlling LEDs.
Install WLEDger
Option 1: Docker (Recommended)
The easiest way to run WLEDger is via Docker.
-
Create a directory for your WLEDger data:
mkdir wledger && cd wledger && mkdir data uploads logs -
Inside this folder, create a file named
docker-compose.yamlwith the following contents:
services:
wledger:
# Format: user/repository:tag
image: tuxedomakes/wledger:latest
# A custom name for the container instance.
container_name: wledger
ports:
# Maps ports in the format "HOST:CONTAINER"
- "8080:8080"
volumes:
# Maps files in the format "HOST_PATH:CONTAINER_PATH"
- ./data:/wledger/data
- ./uploads:/wledger/app/uploads
- ./logs:/wledger/app/logs
# Restart policy
restart: unless-stopped
- Run the following command to start the container:
docker compose up -d
Visit http://localhost:8080 to see the WLEDger UI.
Tip: Save the website as a shortcut on Android or iOS for quick access!
Option 2: Build from Source
Prerequisites:
- Go: Version 1.25+
- Node.js: Version 23+ (for running
npm) - Make: A
makecompatible command line tool.
<details> <summary><strong>How to add Go to your system path</strong></summary> <h2>Bash</h2>Before running
make generateormake devbe sure that Go is installed and in your system path, or the commands will not work.
Add the path to your .bashrc (or .bash_profile on macOS):
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> ~/.bashrc
source ~/.bashrc
<h2>ZSH</h2>
Add the path to your .zshrc:
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> ~/.zshrc
source ~/.zshrc
<h2>Fish</h2>
Run the following command once (this persists automatically):
fish_add_path /usr/local/go/bin $HOME/go/bin
</details>
<br>
These tools are provided for convenience to install dependencies, generate code, and run the dev server.
# 1. Clone the repository
git clone https://github.com/tuxedocurly/wledger.git
cd wledger
# 2. Install dependencies
# This will install the required Go tools and npm packages.
make install_dependencies
# 3. auto-gen code to ensure it's up to date
make generate
# 4. Run the application
make dev
Once you've verified things are working on the dev server, run
make buildto generate the binary, then run it.
Development
WLEDger uses Templ for live reloading on localhost:7331 and make for task orchestration.
Example (run dev server):
make dev
Review the Makefile for a list of available commands.
This will start:
- Go server (with Templ watcher)
- Templ + Go change watcher
- Tailwind CSS watcher
UI Screenshots
| Dashboard | Inventory |
| :---: | :---: |
|
|
|
| Part Details | Settings |
| :---: | :---: |
|
|
|
Contributing
Contributions are welcome!
- Fork the repository.
- Create a feature branch (
git checkout -b feature/amazing-feature). - Commit your changes.
- Open a Pull Request.
License
WLEDger is released under AGPL-3.0-only - see the LICENSE file for details.
Related Skills
node-connect
342.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
85.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
342.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
