Skip to main content

BasicFetch

PyPI version Python Support License: GPL v3 Downloads

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.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. 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

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)

Made with ❤️ in Turkey

Metadata

Release files for basicfetch 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for basicfetch 1.0.0
File Size Uploaded Provenance Actions
basicfetch-1.0.0.tar.gz 72.9 kB Without provenance Details for basicfetch-1.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for basicfetch 1.0.0
File Interpreter ABI Platform Actions
basicfetch-1.0.0-py3-none-any.whl Python 3 none any Details for basicfetch-1.0.0-py3-none-any.whl

Total release size: 138.6 kB

Release files / basicfetch-1.0.0.tar.gz

Download URL basicfetch-1.0.0.tar.gz
Size 72.9 kB
Tags Source
SHA-256 checksum
How to use checksums
1e7cb5ac14b4a5cb0eade847e5c07559a91f5e4906ce5744c4b5f40a1f630b53
BLAKE2b-256 checksum
How to use checksums
64d7af1a0c4ebcda4555a322963fc8854ae14d3f54969f7c99ad42257aae7854
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.11

Release files / basicfetch-1.0.0-py3-none-any.whl

Download URL basicfetch-1.0.0-py3-none-any.whl
Size 65.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
262115f2f6d143ca75edfadc2be9d7ae8efa9aaec798295de58ad6d7eeddf9ce
BLAKE2b-256 checksum
How to use checksums
a141220cb47e7ce3490b30fd23b10d86d2b79899c76b755ac45e56b208ce814d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.11

Security for basicfetch 1.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page