refactor: implement component-based architecture for enhanced maintainability

- Reorganize directory structure into core/, features/, and themes/
- Colocate application Nix logic, configs, scripts, and theme overrides
- Implement 'Inversion of Control' for theming: apps now pull theme-specific layouts
- Update flake.nix and shared library paths to match the new structure
- Document the new Feature-Centric architecture in README.md
This commit is contained in:
Bernardo Magri
2026-04-12 14:51:15 +01:00
parent a9ee79a5ce
commit bbdf34ced8
535 changed files with 119 additions and 127 deletions

View File

@@ -0,0 +1,64 @@
# Main background, empty for terminal default, need to be empty if you want transparent background
theme[main_bg]=""
theme_background=false
# Main text color
theme[main_fg]="#c7d2de"
# Title color for boxes
theme[title]="#9fcfe9"
# Highlight color for keyboard shortcuts
theme[hi_fg]="#b5deef"
# Background color of selected item in processes box
theme[selected_bg]="#355066"
# Foreground color of selected item in processes box
theme[selected_fg]="#c7d2de"
# Color of inactive/disabled text
theme[inactive_fg]="#355066"
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
theme[proc_misc]="#9fcfe9"
# Box outline and divider line color
theme[cpu_box]="#79abd2"
theme[mem_box]="#79abd2"
theme[net_box]="#79abd2"
theme[proc_box]="#79abd2"
theme[div_line]="#355066"
# Gradient for all meters and graphs
theme[temp_start]="#b5deef"
theme[temp_mid]="#92c7e7"
theme[temp_end]="#79abd2"
theme[cpu_start]="#b5deef"
theme[cpu_mid]="#92c7e7"
theme[cpu_end]="#79abd2"
theme[free_start]="#92c7e7"
theme[free_mid]="#86b6da"
theme[free_end]="#86b6da"
theme[cached_start]="#86b6da"
theme[cached_mid]="#86b6da"
theme[cached_end]="#86b6da"
theme[available_start]="#b5deef"
theme[available_mid]="#b5deef"
theme[available_end]="#b5deef"
theme[used_start]="#79abd2"
theme[used_mid]="#79abd2"
theme[used_end]="#79abd2"
theme[download_start]="#86b6da"
theme[download_mid]="#b5deef"
theme[download_end]="#92c7e7"
theme[upload_start]="#86b6da"
theme[upload_mid]="#b5deef"
theme[upload_end]="#92c7e7"

View File

@@ -0,0 +1 @@
14,31,41

View File

@@ -0,0 +1,13 @@
return {
{
"omacom-io/lumon.nvim",
name = "lumon",
priority = 1000,
},
{
"LazyVim/LazyVim",
opts = {
colorscheme = "lumon",
},
},
}

View File

@@ -0,0 +1,44 @@
@define-color background-color #1b2d40;
@define-color border-color #304860;
@define-color label #d6e2ee;
@define-color image #d6e2ee;
@define-color progress #6fb8e3;
@define-color edge-light #f2fcff;
/* Cancel out Nomarchy defaults */
window:not(:backdrop),
window:backdrop {
border: none;
border-width: 0;
background-color: transparent;
box-shadow: none;
padding: 12px;
}
/* Draw the Lumon OSD shell */
window:not(:backdrop) #container,
window:backdrop #container {
border: 2px solid alpha(@border-color, 0.92);
background-color: alpha(@background-color, 0.95);
padding: 12px 16px;
background-clip: padding-box;
}
image,
label {
color: @label;
}
progressbar {
min-height: 8px;
}
progressbar trough {
background: alpha(@border-color, 0.24);
box-shadow: inset 0 1px rgba(242, 252, 255, 0.03);
}
progressbar progress {
background: linear-gradient(90deg, @progress, @edge-light);
box-shadow: 0 0 10px rgba(111, 184, 227, 0.18);
}

View File

@@ -0,0 +1,4 @@
{
"name": "Lumon",
"extension": "oldjobobo.lumon-theme"
}