https://github.com/harukayamamoto0/luminit
A simple tray-based application for controlling screen brightness on Linux.
https://github.com/harukayamamoto0/luminit
Last synced: 4 months ago
JSON representation
A simple tray-based application for controlling screen brightness on Linux.
- Host: GitHub
- URL: https://github.com/harukayamamoto0/luminit
- Owner: HarukaYamamoto0
- License: mit
- Created: 2024-12-31T00:02:13.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-12-31T10:50:02.000Z (6 months ago)
- Last Synced: 2024-12-31T11:33:38.466Z (6 months ago)
- Language: JavaScript
- Size: 62.5 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
LuminitA simple tray-based application for controlling screen brightness on Linux.
![]()
![]()
---
# About
Luminit is a lightweight and intuitive Electron application for managing monitor brightness on xrandr-powered systems. I made it simple and user-friendly to control your monitor's brightness levels.
I can try to make it work on Windows later, after all I never learned how to lower the brightness there either lol
## Features
- **Brightness Control**: Adjust brightness levels incrementally or choose from preset levels.
- **Auto-Launch**: Option to launch Luminit on system startup.
- **Notifications**: Enable or disable notifications for brightness adjustments.
- **Customizable**: Modify brightness steps and presets via configuration.
- **Persistent Settings**: Stores user preferences and settings using JSON.
- **Help and Support**: Built-in links to documentation and issue reporting.## Installation
### Requirements
- Node.js (v18 or later recommended)
- Electron
- Linux system with xrandr installed### Clone the Repository
```bash
git clone https://github.com/HarukaYamamoto0/Luminit.git
cd Luminit
```### Install Dependencies
```bash
npm install
```### Start the Application
```bash
npm start
```## Usage
### Adjusting Brightness
- **Increment/Decrement**: Use the menu options to increase or decrease brightness by the configured step.
- **Preset Levels**: Select a specific brightness level from the "Preset Brightness Levels" submenu.### Settings
- **Launch at Startup**: Enable or disable the app’s auto-launch behavior.
- **Notifications**: Toggle notifications for brightness adjustments.
- **Reset to Default**: Restore default settings and brightness levels.## Configuration
Luminit uses a `config.json` file to store settings.### Default Schema
```json
{
"maxLevel": 100,
"minLevel": 10,
"stepLevel": 10,
"currentLevel": 50,
"launchAStartup": false,
"notifications": true
}
```### Modify Configuration
1. Open the settings menu.
2. Click on "Open config.json".
3. Edit the file and save changes.## Development
### Project Structure
```
Luminit/
├── assets
│ └── iconTemplate.png
├── biome.json
├── forge.config.js
├── LICENSE
├── package.json
├── README.md
├── src
│ ├── BrightnessController.js
│ ├── createMenu.js
│ ├── Luminit.js
│ ├── main.js
│ ├── store.js
│ └── utils
│ ├── execShellCommand.js
│ ├── showNotification.js
│ └── toggleAutoLaunch.js
└── yarn.lock
```### Scripts
- **Install Dependencies**: `yarn`
- **Start Development**: `yarn dev`
- **Build for Production**: `yarn make`## Contributions
Contributions are welcome! Follow the steps below to contribute:
1. Fork the repository.
2. Create a feature branch: `git checkout -b feature-name`.
3. Commit changes: `git commit -m 'Add feature-name'`.
4. Push to the branch: `git push origin feature-name`.
5. Open a pull request.## Acknowledgments
- Logo created by Freepik - Flaticon## License
This project is licensed under the MIT License. See the [LICENSE](./LICENSE) file for more information.