Skip to content

MartinSantosT/ShelfSuite

Repository files navigation

ShelfSuite for Rainmeter

Rainmeter License Version

Your desktop, organized. No cost, no bloat, no hassle.

ShelfSuite is a free, open-source desktop organizer for Rainmeter. It groups your folders, apps, files, and links into independent tabbed widgets ("shelves") with one-click navigation and a visual HTML configurator. A lightweight alternative to Fences by Stardock.

Preview

ShelfSuite Preview

Features

  • Dynamic Lua Engine — A single engine (ShelfEngine.lua) powers all shelves. Add tabs, items, and shelves by editing a simple config file or using the visual configurator.
  • Visual HTML Configurator — Create shelves, add tabs, manage items, and switch themes from a browser-based UI. No code editing required.
  • 4 Built-in Themes — DeepOcean, Forest, Terracotta, and Obsidian. Switch themes per shelf with one click.
  • Fully Modular — Each shelf is an independent skin. Load one, three, or ten. They don't depend on each other.
  • Tabbed Navigation — Up to 5 tabs per shelf, each with up to 18 items (3 rows of 6). Click a tab to switch instantly.
  • Custom Icons — Drop any 64x64 PNG into the Icons folder and reference it by name. 19 generic icons included (Google Material Icons, Apache 2.0).
  • Lightweight — No external dependencies, no network calls, no background processes. Just Rainmeter + Lua.

Installation

  1. Download the .rmskin file from the Releases page.
  2. Double-click the file to install. ShelfSuite is installed into your Rainmeter Skins folder automatically.
  3. Open Rainmeter Manage, find Shelf Suite, and load Shelf1/Shelf.ini, Shelf2/Shelf.ini, and Shelf3/Shelf.ini.
  4. Click the gear icon (⚙) on the top-right corner of any shelf to open the configurator to start customizing.

Configuration

ShelfSuite offers two ways to configure your shelves:

Visual Configurator (recommended): Click the gear icon (⚙) on the top-right corner of any shelf to open the configurator. From there you can create shelves, add/rename/delete tabs, manage items, and change themes — all from a browser-based UI that saves directly to your Rainmeter files.

Manual editing: Each shelf folder contains a config.example.lua template. Rename it to config.lua and edit it with any text editor. This is a plain Lua table where you define your tabs and items.

Example config.lua:

return {
    name = "Folders",
    theme = "DeepOcean",
    currentTab = 0,
    tabs = {
        {
            name = "User",
            items = {
                { name = "Documents", action = "C:\Users\Martin\Documents", icon = "file" },
                { name = "Downloads", action = "C:\Users\Martin\Downloads", icon = "download" },
            }
        },
        {
            name = "System",
            items = {
                { name = "Program Files", action = "C:\Program Files", icon = "settings" },
            }
        }
    }
}

After making changes (either through the configurator or manually), right-click each modified shelf on your desktop and select "Refresh skin" to apply.

Themes

Switch themes per shelf from the configurator dropdown or via right-click context menu on the desktop widget.

Theme Style
DeepOcean Cool blue tones
Forest Natural green palette
Terracotta Warm earth tones
Obsidian Dark neutral palette

Custom Icons

Place any 64x64 PNG (white on transparent background) in @Resources/Icons/ and reference it by filename (without extension) in the icon field of your config.lua. For example, if you add spotify.png to the Icons folder:

{ name = "Spotify", action = "C:\Program Files\Spotify\Spotify.exe", icon = "spotify" }

ShelfSuite includes 19 generic icons: calculator, calendar, chat, cloud, code, download, file, game, link, mail, music, news, office, photo, settings, storage, terminal, video, web.

Updating

When a new version is released, download and install the new .rmskin file. The installer merges automatically — your personal config.lua files are never overwritten since the package only includes config.example.lua templates.

If you've added custom icons to the @Resources/Icons folder, back them up before updating. Any icon with the same filename as one in the new version will be replaced. After installing, copy your custom icons back and refresh your skins.

Folder Structure

Shelf Suite/
├── @Resources/
│   ├── Icons/              # Generic + custom icons (64x64 PNG)
│   ├── Themes/             # Theme files (.inc)
│   │   ├── DeepOcean.inc
│   │   ├── Forest.inc
│   │   ├── Obsidian.inc
│   │   └── Terracotta.inc
│   ├── ShelfEngine.lua     # Core dynamic engine
│   ├── Variables.inc       # Shared dimensions and fonts
│   └── configurator.html   # Visual configurator
├── Shelf1/
│   ├── Shelf.ini           # Rainmeter skin definition
│   ├── config.example.lua  # Template config (distributed)
│   └── config.lua          # Your personal config (not in repo)
├── Shelf2/
│   └── ...
└── Shelf3/
    └── ...

Credits

Icons: Google Material Icons (Apache 2.0 License).

Font: Segoe UI (standard Windows system font).

License

This project is licensed under the MIT License — see the LICENSE file for details.

Created by Martin Santos

About

A modular, tabbed desktop organizer suite for Rainmeter

Topics

Resources

License

Stars

7 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages