Cross-platform system information display tool similar to neofetch
Project description
BasicFetch
Cross-platform system information display tool similar to neofetch/fastfetch, written in Python with rich feature set and beautiful ASCII logos.
Features
- 🖥️ Cross-platform support: Windows, Linux, macOS, BSD systems
- 🎨 Beautiful ASCII logos: Over 200+ distribution logos
- 📊 Comprehensive system info: Hardware, software, network, storage details
- 🌈 Rich color support: ANSI color codes and RGB support
- 🎯 Multiple display modes: Simple, detailed, JSON output
- ⚡ Fast performance: Efficient system information gathering
- 🔧 Highly customizable: Various command-line options
- 🐍 Pure Python: No external system dependencies
Installation
From PyPI (Recommended)
pip install basicfetch
From Source
git clone https://github.com/y4kupkaya/BasicFetch.git
cd BasicFetch
pip install -e .
Development Installation
git clone https://github.com/y4kupkaya/BasicFetch.git
cd BasicFetch
pip install -e .[dev]
Usage
Basic Usage
# Display system information with logo
basicfetch
# Alternative command
bfetch
Display Modes
# Simple mode - minimal information
basicfetch --simple
basicfetch -s
# Full mode - detailed information with color palette
basicfetch --full
basicfetch -f
# JSON output - machine readable format
basicfetch --json
basicfetch -j
# Only color palette
basicfetch --palette
basicfetch -p
Logo Options
# Display without logo
basicfetch --no-logo
basicfetch -n
# Use specific distribution logo
basicfetch --distro ubuntu
basicfetch -d arch
# Show only logo for specific distribution
basicfetch --logo windows
basicfetch -l macos
Display Options
# Disable colors
basicfetch --no-color
# Don't clear console before displaying
basicfetch --no-clear
Examples
# Show detailed Windows information with logo
basicfetch -f -d windows
# Get system info in JSON format without clearing screen
basicfetch -j --no-clear
# Show Ubuntu logo only
basicfetch -l ubuntu
# Simple mode without colors
basicfetch -s --no-color
System Information Displayed
Basic Information
- OS: Operating system name and version
- Host: Computer name and model
- Kernel: Kernel version
- Uptime: System uptime
- Packages: Installed packages count
- Shell: Current shell
- Resolution: Screen resolution
- Terminal: Terminal emulator
Hardware Information
- CPU: Processor name, cores, threads, frequency, usage
- GPU: Graphics card information and temperature
- Memory: RAM usage, total, available, swap
- Storage: Disk usage by partition
- Motherboard: Motherboard information
Network Information
- Network: Data sent/received statistics
Supported Systems
- Windows: 7, 8, 10, 11 (32-bit and 64-bit)
- Linux: All major distributions (Ubuntu, Debian, Arch, Fedora, etc.)
- macOS: 10.13+ (High Sierra and newer)
- BSD: FreeBSD, OpenBSD, NetBSD
Supported Distribution Logos
Over 200+ ASCII logos including:
- Linux: Ubuntu, Debian, Arch, Fedora, CentOS, SUSE, Manjaro, etc.
- BSD: FreeBSD, OpenBSD, NetBSD
- Windows: All versions
- macOS: All versions
- Other: Android, Haiku, and many more
Dependencies
- Python 3.7+
- psutil: System and process utilities
- rich: Rich text and beautiful formatting
- wmi (Windows only): Windows Management Instrumentation
Performance
BasicFetch is designed to be fast and efficient:
- Startup time: < 0.5 seconds
- Memory usage: < 50MB
- CPU usage: Minimal impact
- Network: No external requests
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Development Setup
git clone https://github.com/y4kupkaya/BasicFetch.git
cd BasicFetch
pip install -e .[dev]
# Run tests
pytest
# Format code
black .
# Lint code
flake8
# Type checking
mypy basicfetch.py
License
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
Changelog
v1.0.0 (2025-01-18)
- Initial PyPI release
- Cross-platform system information display
- 200+ distribution logos
- Multiple display modes
- Rich color support
- Comprehensive hardware detection
- JSON output support
- Command-line interface
Acknowledgments
- Inspired by neofetch and fastfetch
- ASCII logos from various sources and community contributions
- Built with psutil and rich
Support
If you encounter any issues or have questions:
- Open an issue on GitHub Issues
- Check the documentation and examples above
- Make sure you're using Python 3.7 or newer
Author
Yakup Kaya (@y4kupkaya)
- 🌐 Website: yakupkaya.me
- 📱 Telegram: @YakupKaya
- 💻 GitHub: @y4kupkaya
Made with ❤️ in Turkey
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file basicfetch-1.0.0.tar.gz.
File metadata
- Download URL: basicfetch-1.0.0.tar.gz
- Upload date:
- Size: 72.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e7cb5ac14b4a5cb0eade847e5c07559a91f5e4906ce5744c4b5f40a1f630b53
|
|
| MD5 |
98346d79b63940d171938d87a04097b0
|
|
| BLAKE2b-256 |
64d7af1a0c4ebcda4555a322963fc8854ae14d3f54969f7c99ad42257aae7854
|
File details
Details for the file basicfetch-1.0.0-py3-none-any.whl.
File metadata
- Download URL: basicfetch-1.0.0-py3-none-any.whl
- Upload date:
- Size: 65.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
262115f2f6d143ca75edfadc2be9d7ae8efa9aaec798295de58ad6d7eeddf9ce
|
|
| MD5 |
885c410d45a5fb81d1bc67d35daf9788
|
|
| BLAKE2b-256 |
a141220cb47e7ce3490b30fd23b10d86d2b79899c76b755ac45e56b208ce814d
|