From 30823fcc19dd06fec58110cf55bb1d11da2d385e Mon Sep 17 00:00:00 2001 From: S4NKALP Date: Wed, 11 Mar 2026 22:09:47 +0545 Subject: [PATCH] docs(root): Add initial README for lapctl This adds the project's README documenting its purpose, planned features, and roadmap to orient contributors and users. - New Features - Introduce overview of lapctl, including hybrid GPU control, battery limit management, and status commands - Enhancements - Provide structured sections for project status, goals, example CLI, and roadmap - Bug Fixes - None --- README.md | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..d4ff49c --- /dev/null +++ b/README.md @@ -0,0 +1,120 @@ +# lapctl + +**lapctl** is an upcoming command-line utility written in Rust for managing laptop hardware features on Linux. + +It aims to provide a simple and unified interface for controlling hybrid GPU modes, battery charging limits, and other laptop power features directly from the terminal. + +--- + +## Planned Features + +- Switch GPU modes on hybrid graphics laptops + - Integrated GPU + - Hybrid mode + - NVIDIA GPU + +- Set and manage battery charging limits +- View laptop hardware and power status +- Lightweight and fast CLI interface +- Designed for Linux systems with hybrid GPUs (Optimus) + +--- + +## Project Status + +**Work in progress** + +This project is currently in early development. +Features, commands may change as development progresses. + +--- + +## Goals + +- Provide a **simple CLI interface** for laptop hardware management +- Support **hybrid GPU laptops (Intel + NVIDIA / AMD + NVIDIA)** +- Offer **battery health features like charge limit control** +- Be **lightweight, fast, and easy to use** + +--- + +## Example CLI (Planned) + +```bash +lapctl gpu integrated +lapctl gpu hybrid +lapctl gpu nvidia + +lapctl battery limit 80 +lapctl battery status + +lapctl status +``` + +--- + +## Built With + +- Rust +- Modern Linux system interfaces + +--- + +## Project Structure + +``` +lapctl +│ +├── Cargo.toml +├── README.md +├── LICENSE +├── .gitignore +│ +├── src/ +│ ├── main.rs +│ ├── cli.rs +│ │ +│ ├── commands/ +│ │ ├── mod.rs +│ │ ├── gpu.rs +│ │ ├── battery.rs +│ │ ├── power.rs +│ │ └── status.rs +│ │ +│ ├── hardware/ +│ │ ├── mod.rs +│ │ ├── gpu.rs +│ │ └── battery.rs +│ │ +│ └── utils/ +│ └── system.rs + +``` + +## Roadmap + +- [ ] CLI structure +- [ ] GPU mode switching +- [ ] Battery charge limit management +- [ ] Hardware status command +- [ ] Configuration support + +--- + +## Contributing + +Contributions, ideas, and feature suggestions are welcome. +More contribution guidelines will be added once the project reaches its first stable milestone. + +--- + +## License + +This project is licensed under the **GNU Affero General Public License v3.0 (AGPL-3.0)**. + +You are free to use, modify, and distribute this software under the terms of the license. +For full details, see the [LICENSE](LICENSE) file in this repository. + +--- + +⭐ If you find this project interesting, consider starring the repository to follow its progress.