git404hub

what is sunreactor fr?

arcanorca/sunreactor — explained in plain English

Analysis updated 2026-05-18

17RustAudience · developerComplexity · 3/5Setup · moderate

tl;dr

A Rust background tool that auto-adjusts monitor brightness to match the sun's position in the sky.

vibe map

mindmap
  root((SunReactor))
    What it does
      Sun based brightness
      Multi monitor curves
      Weather adjustment
    Tech stack
      Rust
      Ratatui TUI
      systemd user service
    Use cases
      Auto dim at sunset
      Per monitor tuning
      Idle screen dimming
    Audience
      Linux users
      Terminal users
      Multi monitor setups

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Automatically dim and brighten your monitors as sunrise and sunset shift with the seasons.

VIBE 2

Set different brightness curves for a laptop screen versus an external monitor.

VIBE 3

Slightly dim your displays on cloudy days using live weather data.

VIBE 4

Replace manual brightness adjustments with a hands off background daemon on Linux.

what's the stack?

RustRatatuisystemdddcutilbrightnessctl

how it stacks up fr

arcanorca/sunreactoracoyfellow/t2tatelico/gdstyle
Stars171717
LanguageRustRustRust
Last pushed2026-07-17
MaintenanceActive
Setup difficultymoderatemoderateeasy
Complexity3/53/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · moderate time til it works · 30min

Requires ddcutil and/or brightnessctl installed and a systemd user service to be enabled.

The README does not state license terms.

in plain english

SunReactor is a small background program, written in Rust, that automatically adjusts your monitor brightness throughout the day. Instead of using a fixed schedule like dimming the screen at 8 PM every night, it calculates the sun's position in the sky based on your city's location and the current date. As the sun rises and sets, your screen brightness smoothly follows along, so it stays in sync even as daylight hours shift with the seasons. If you connect more than one monitor, SunReactor treats each one separately. A laptop screen and an external monitor do not look the same at the same brightness percentage, so you can set different minimum, maximum, and curve settings for each display. You can also give it a free OpenWeather API key, and it will slightly dim your screens on cloudy days using real weather data, on top of the base sun calculation. Under the hood, SunReactor runs as a simple background service on Linux, controlling your screen through existing tools like ddcutil for external monitors and brightnessctl for laptop panels. It does not need administrator or root access, and it runs quietly without an internet connection except for the optional weather feature. It also has its own screen dimming for when your computer sits idle, so you can turn off your desktop's built in power management to avoid conflicts. You interact with SunReactor through a terminal based interface (a TUI), not a graphical app. From there you can pick your city, tune the brightness curve for each monitor, and check current weather conditions. Setup uses an installer script that downloads a pre built version for Linux, checks it before installing, and can be reversed with an uninstall command. You can also build it yourself from source if you have Rust installed. This tool is aimed at Linux users who want their screen brightness to feel more natural across the day without manually adjusting it, particularly people who already use a terminal regularly.

prompts (copy fr)

prompt 1
Help me install ddcutil and brightnessctl so SunReactor can control my monitor brightness.
prompt 2
Walk me through setting up SunReactor's systemd user service on my Linux distro.
prompt 3
Explain how SunReactor's gamma curve setting changes how brightness ramps up and down.
prompt 4
Show me how to configure separate brightness limits for two different monitors in SunReactor.

Frequently asked questions

what is sunreactor fr?

A Rust background tool that auto-adjusts monitor brightness to match the sun's position in the sky.

What language is sunreactor written in?

Mainly Rust. The stack also includes Rust, Ratatui, systemd.

What license does sunreactor use?

The README does not state license terms.

How hard is sunreactor to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is sunreactor for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.