A simple command-line tool written in C that interacts with the Neocities API.
Currently, only the --info command is implemented — it fetches and displays basic information about your Neocities site.
- Fetch site information using Neocities API
- Authenticates via environment variables
- JSON parsing with jansson
- Works on Linux, Windows (MSYS2/MinGW), and Android (via Termux)
- Compilable with a Makefile for easy builds
You’ll need:
sudo apt update
sudo apt install build-essential libcurl4-openssl-dev libjansson-dev makepacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-curl mingw-w64-x86_64-jansson makepkg install clang curl-dev jansson makeRun in cloned repository:
makeThis will generate the executable neocities (or neocities.exe on Windows).
To clean build files:
make cleanBefore running, export your Neocities credentials:
export NEOCITIES_USER="your_username"
export NEOCITIES_PASS="your_password"setx NEOCITIES_USER "your_username"
setx NEOCITIES_PASS "your_password"./neocities --infoExample output:
Neocities C CLI
Sitename: example
Hits: 42
Created at: 2024-01-10
Last updated: 2025-11-01
Domain: domain.com
Tags: art, blog, personal.
You can move the compiled executable to a directory in your PATH to run it from anywhere:
sudo mv neocities /usr/local/bin/Move neocities.exe to a folder in your PATH, e.g., C:\Windows\System32.
After that, you can run:
neocities --infofrom any folder without specifying the path.
Only the --info command is implemented for now.
If you get curl_easy_perform errors, check your network and SSL setup.
On Termux, use clang for the best compatibility.