# π¦ LynxFetch - A Minimal & Aesthetic System Fetch Tool
[](https://gitlab.com/lynxfetch/lynxfetch/-/pipelines)
[](https://gitlab.com/lynxfetch/lynxfetch/-/commits/main)
[](LICENSE)
[](https://gitlab.com/lynxfetch/lynxfetch)
[](https://gitlab.com/lynxfetch/lynxfetch/-/forks)
LynxFetch is a **lightweight**, **aesthetic**, and **fast** system information fetch tool developed in **Rust** for Linux. It displays essential system details in a minimalistic, clean format, making it a perfect alternative to more resource-heavy fetch tools like **Neofetch**. Designed with performance in mind, LynxFetch prioritizes **speed**, **efficiency**, and a **beautiful output**, providing a seamless experience while using minimal system resources. π
## π― Purpose
LynxFetch was developed to give users a **fast, lightweight, and visually pleasing** way to display system information. Unlike bloated alternatives, LynxFetch focuses on **simplicity, performance**, and **aesthetic appeal**, making it a perfect tool for minimalists, developers, and enthusiasts who want a beautiful, easy-to-read terminal output. Whether you're showcasing your system specs or just keeping an eye on your machine's resources, LynxFetch is the ultimate companion for your terminal.
## β¨ Features
- β
**Ultra-Lightweight & Blazing Fast**: Consumes minimal system resources and displays information instantly.
- β
**Essential System Information**: Showcases CPU, GPU, Memory, Kernel, OS, Uptime, and more.
- β
**Minimalistic & Aesthetic**: No clutterβjust clean, readable system stats.
- β
**Cross-Platform Compatibility**: Fully supports Linux.
- β
**Highly Customizable**: Tailor themes, colors, and output styles to fit your preferences.
- β
**No Bloat & Dependencies**: Pure simplicityβno unnecessary software overhead.
- β
**Fast & Efficient**: Optimized for speed with near-instant execution times.
- β
**ASCII Art Support**: Displays distribution logos in ASCII format for added flair.
- β
**Built with Rust**: LynxFetch is developed in Rust, ensuring excellent performance and reliability.
## πΈ Preview

## π§ Installation
### π¦ <a href="https://codeberg.org/venomlinux/community/src/branch/main/lynxfetch">Venom Linux</a> (Community Repository)
```bash
scratch install lynxfetch
```
### π¦ <a href="https://pacstall.dev/packages/lynxfetch">Ubuntu/Rhino Linux</a> (Pacstall)
```bash
pacstall -I lynxfetch
```
### π¦ Installation via <a href="https://crates.io/crates/lynxfetch">Cargo</a>
```bash
cargo install lynxfetch
```
### π§ Manual Installation
```bash
git clone https://gitlab.com/lynxfetch/lynxfetch.git
cd lynxfetch
cargo build --release
cp target/release/lynxfetch /usr/local/bin/
```
## π Usage
To run LynxFetch and display system information with a minimalistic interface, simply execute:
```bash
lynxfetch
```
## π₯ Development & Contributing
### π οΈ Development Setup
1. **Prerequisites**:
- Rust 1.70+ (install via [rustup](https://rustup.rs/))
- Basic Linux system libraries
2. **Building & Running**:
```bash
cargo build
cargo run
```
3. **Testing**:
```bash
cargo test
```
4. **Debugging**:
```bash
RUST_LOG=debug cargo run
```
### π Module Development Guide
To add a new system information module:
1. Create a new file in `src/modules/` with your module category
2. Implement the `Module` trait:
```rust
impl Module for YourModule {
fn new() -> Self { ... }
fn style(&self, config: &Configuration) -> (String, String) { ... }
}
```
3. Register your module in `src/modules/mod.rs`
4. Add configuration options if needed in `src/config_manager.rs`
### π₯ Contributing
We welcome contributions to LynxFetch! π Whether you're fixing bugs, adding new features, or improving documentation, your help is greatly appreciated. Here's how you can get started:
1. **Clone the Repository**: Start by cloning the LynxFetch repository to your local machine:
```bash
git clone https://gitlab.com/lynxfetch/lynxfetch.git
cd lynxfetch
```
2. **Create a New Branch**: Always create a new branch for your changes to keep your work organized and separate from the main branch:
```bash
git checkout -b feature-branch
```
Replace `feature-branch` with a descriptive name for your branch, such as `fix-bug-123` or `add-new-feature`.
3. **Make Your Changes**: Implement your changes in the codebase. Be sure to follow the project's coding standards and guidelines.
4. **Test Your Changes**: Before committing, test your changes thoroughly to ensure they work as expected and do not introduce new issues.
5. **Commit Your Changes**: Write a clear and concise commit message that describes your changes:
```bash
git commit -m "Add: Implemented new feature for XYZ"
```
6. **Push Your Changes**: Push your branch to the remote repository on GitLab:
```bash
git push origin feature-branch
```
7. **Create a Merge Request**: Go to the [LynxFetch GitLab repository](https://gitlab.com/lynxfetch/lynxfetch) and create a merge request (MR). Provide a detailed description of your changes, including the problem it solves or the feature it adds.
### π Contribution Guidelines
- **Code Style**: Ensure your code adheres to the Rust community's best practices and the project's style guide.
- **Documentation**: Update or add documentation for any new features or changes.
- **Commit Messages**: Use clear and descriptive commit messages. Follow the format: `Type: Short description (e.g., Add: Implemented XYZ feature)`.
- **Testing**: Include tests for any new functionality or bug fixes.
### π€ Need Help?
If you have any questions or need assistance, feel free to open an [Issue](https://gitlab.com/lynxfetch/lynxfetch/-/issues) or join the discussion in the community.
---
## π License
LynxFetch is licensed under the **GPL-3.0-or-later License**. This means you are free to use, modify, and distribute the software under the terms of the license. See the [LICENSE](LICENSE) file for full details.
---
## π¬ Community & Support
We value your feedback and contributions! Hereβs how you can get involved:
- π‘ **Feature Requests**: Have an idea for a new feature? Open an [Issue](https://gitlab.com/lynxfetch/lynxfetch/-/issues) to share your suggestion.
- π **Bug Reports**: Found a bug? Submit a detailed [Bug Report](https://gitlab.com/lynxfetch/lynxfetch/-/issues) so we can fix it.
- β€οΈ **Support the Project**: If you enjoy using LynxFetch, consider giving it a β on GitLab to show your support!
Join us in making LynxFetch even better! π