work in progress
This commit is contained in:
80
README.md
Normal file
80
README.md
Normal file
@@ -0,0 +1,80 @@
|
||||
# Pixlit — Image Converter
|
||||
|
||||
A clean GTK4/libadwaita desktop application for converting images between formats, with first-class support for HEIC/HEIF files from iPhones and modern cameras.
|
||||
|
||||
## Features
|
||||
|
||||
- **HEIC / HEIF → JPEG, PNG, WebP** (and vice-versa)
|
||||
- Supports: HEIC, HEIF, JPEG, PNG, WebP, BMP, TIFF, GIF as inputs
|
||||
- Output formats: **JPEG**, **PNG**, **WebP**
|
||||
- Quality slider (1–100) with per-format behaviour
|
||||
- Batch conversion — add as many files as you like
|
||||
- Drag-and-drop file support
|
||||
- Output directory picker
|
||||
- Progress tracking per file
|
||||
- Native GNOME look via libadwaita
|
||||
|
||||
## Building
|
||||
|
||||
### Quick local build
|
||||
|
||||
```bash
|
||||
cd pixlit-nix
|
||||
nix-build
|
||||
./result/bin/pixlit
|
||||
```
|
||||
|
||||
### Installing into your profile
|
||||
|
||||
```bash
|
||||
nix-env -f . -i
|
||||
pixlit
|
||||
```
|
||||
|
||||
### NixOS system package (flake or configuration.nix)
|
||||
|
||||
```nix
|
||||
# configuration.nix
|
||||
environment.systemPackages = [
|
||||
(pkgs.callPackage /path/to/pixlit-nix {})
|
||||
];
|
||||
```
|
||||
|
||||
## Requirements (handled automatically by Nix)
|
||||
|
||||
| Dependency | Purpose |
|
||||
|---|---|
|
||||
| Python 3 | Runtime |
|
||||
| Pillow | Image decoding/encoding |
|
||||
| pillow-heif (via Pillow HEIC plugin) | HEIC/HEIF support |
|
||||
| PyGObject | GTK4 + GLib bindings |
|
||||
| GTK 4 | Widget toolkit |
|
||||
| libadwaita | GNOME HIG widgets |
|
||||
| gobject-introspection | GObject type system |
|
||||
|
||||
## File Layout
|
||||
|
||||
```
|
||||
pixlit-nix/
|
||||
├── default.nix ← Nix derivation
|
||||
├── pixlit.py ← Application source (GTK4/libadwaita)
|
||||
├── pixlit.svg ← Scalable app icon
|
||||
├── pixlit.png ← 512×512 icon
|
||||
├── pixlit-512.png ← 512×512 icon
|
||||
├── pixlit-256.png ← 256×256 icon
|
||||
├── pixlit-128.png ← 128×128 icon
|
||||
└── README.md ← This file
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
1. Launch Pixlit
|
||||
2. Click **Choose Files…** or drag images onto the drop zone
|
||||
3. Select your desired output format (JPEG / PNG / WebP)
|
||||
4. Adjust the quality slider
|
||||
5. Choose where to save converted files
|
||||
6. Click **Convert Images**
|
||||
|
||||
## License
|
||||
|
||||
MIT — see `default.nix` meta block.
|
||||
Reference in New Issue
Block a user