Skip to main content

Random anime wallpaper changer powered by Nekosia API

Project description

NEKOWALL

  ███╗   ██╗███████╗██╗  ██╗ ██████╗ ██╗    ██╗ █████╗ ██╗     ██╗
  ████╗  ██║██╔════╝██║ ██╔╝██╔═══██╗██║    ██║██╔══██╗██║     ██║
  ██╔██╗ ██║█████╗  █████╔╝ ██║   ██║██║ █╗ ██║███████║██║     ██║
  ██║╚██╗██║██╔══╝  ██╔═██╗ ██║   ██║██║███╗██║██╔══██║██║     ██║
  ██║ ╚████║███████╗██║  ██╗╚██████╔╝╚███╔███╔╝██║  ██║███████╗███████╗
  ╚═╝  ╚═══╝╚══════╝╚═╝  ╚═╝ ╚═════╝  ╚══╝╚══╝ ╚═╝  ╚═╝╚══════╝╚══════╝

Random anime wallpaper changer powered by the Nekosia API.

Cross-platform: Windows, macOS, Linux (GNOME, KDE, XFCE, MATE, Cinnamon, feh, sway, hyprland). No external dependencies — pure Python 3.8+ standard library.


Installation

pip install nekowall

That's it. The nekowall command is available immediately in any terminal.


Usage

nekowall                        random category, random image
nekowall -c catgirl             force a specific category
nekowall -c maid --keep         keep the downloaded image file permanently
nekowall --list                show all available categories with commands
nekowall --no-banner           skip the ASCII banner
nekowall --version             show version and exit
nekowall -h                    full help

Examples

# Set a random wallpaper from a random category
nekowall

# Always pick from the foxgirl category
nekowall -c foxgirl

# Pick a random one but save the image to keep it
nekowall --keep

# See every available category and the exact command to use it
nekowall --list

How it works

  1. Loads categories — starts with 80+ hardcoded categories from the Nekosia documentation and the Booru tag list, then fetches live tags from the API and merges any new ones with count >= 15.
  2. Picks a random category (or uses the one you specified with -c).
  3. Fetches a random image from GET /api/v1/images/{category}.
  4. Downloads the image to $TEMP/nekowall_{id}.{ext} with a live progress bar.
  5. Sets the wallpaper — Windows uses SystemParametersInfoW (no admin), macOS uses osascript, Linux uses desktop-specific tools.

Available categories

The full list is always up to date — run nekowall --list to see everything. A non-exhaustive sample:

Group Categories
Animal girls catgirl foxgirl wolf-girl wolfgirl doggirl animal-ears
Clothes maid maid-uniform uniform sailor-uniform hoodie gym-uniform
Accessories ribbon headphones thigh-high-socks knee-high-socks white-tights
Hair white-hair blue-hair pink-hair long-hair twintails blonde
Eyes blue-eyes red-eyes purple-eyes heterochromia green-eyes
Poses & vibes wink w-sitting lying-down cute vtuber blue-archive hololive
Seasonal valentine halloween winter summer sakura

Requirements

  • Python 3.8 or higher
  • A supported desktop environment: Windows, macOS, GNOME, KDE, XFCE, MATE, Cinnamon, feh, sway, hyprland
  • Internet connection

Tip: run on startup

To get a new wallpaper every time you log in:

Windows:

  1. Press Win + R, type shell:startup, press Enter
  2. Create a shortcut to nekowall.bat (or nekowall) in that folder

macOS:

# Create a LaunchAgent
mkdir -p ~/Library/LaunchAgents
cat > ~/Library/LaunchAgents/com.nekowall.plist << EOF
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key><string>com.nekowall</string>
    <key>ProgramArguments</key><array><string>/usr/local/bin/nekowall</string></array>
    <key>RunAtLoad</key><true/>
</dict>
</plist>
EOF
launchctl load ~/Library/LaunchAgents/com.nekowall.plist

Linux (GNOME):

gnome-session-properties

Add a new entry pointing to nekowall.


API credit

Images are provided by the Nekosia API — a free, public anime image API with safety filters. No API key required.


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nekowall-2.1.1.tar.gz (13.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nekowall-2.1.1-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file nekowall-2.1.1.tar.gz.

File metadata

  • Download URL: nekowall-2.1.1.tar.gz
  • Upload date:
  • Size: 13.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for nekowall-2.1.1.tar.gz
Algorithm Hash digest
SHA256 4eed670b9f5fe0310c5a498de077610008e40184f958d1c13a725da46c5fc3da
MD5 2ea709ce51a235764cd01b51fb882296
BLAKE2b-256 40b47a98a30a86571b6eb721b167e023fc02d7d129c41299ffaaea45bf00eef1

See more details on using hashes here.

File details

Details for the file nekowall-2.1.1-py3-none-any.whl.

File metadata

  • Download URL: nekowall-2.1.1-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for nekowall-2.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 fda16bb29609ef67c7eba6c8900fbcf8173534b8b7433471ad5f202eddab2c94
MD5 bed1989bab1b5f9d066af26dc26d5a1f
BLAKE2b-256 47ec910c0b9849888f5262269f36e7a7964c69c277abe56dd9d80a841a4afaef

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page