Skip to content

Commit 7b21088

Browse files
committed
chore: update readme
1 parent d920d20 commit 7b21088

1 file changed

Lines changed: 29 additions & 13 deletions

File tree

README.md

Lines changed: 29 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
[![CI](https://github.com/Hexeption/FastPack/actions/workflows/ci.yml/badge.svg)](https://github.com/Hexeption/FastPack/actions/workflows/ci.yml)
55
[![rustc 1.85+](https://img.shields.io/badge/rustc-1.85%2B-orange.svg)](https://www.rust-lang.org)
66

7-
Texture atlas packer written in Rust. Native GUI as the primary interface, plus a full CLI and TUI. Designed as an open-source replacement for TexturePacker.
7+
Texture atlas packer written in Rust. Ships as a Tauri desktop app and a headless CLI. Designed as an open-source replacement for TexturePacker.
88

99
<img width="800" height="889" alt="wDwJf1hcLi" src="https://github.com/user-attachments/assets/215867c4-0fd8-44a4-8255-a943a4ec42c1" />
1010

@@ -19,37 +19,37 @@ Texture atlas packer written in Rust. Native GUI as the primary interface, plus
1919
- Multi-resolution scale variants with per-variant suffix
2020

2121
**Export**
22-
- JSON Hash, JSON Array, Phaser 3, PixiJS
23-
- PNG (oxipng lossless), JPEG (mozjpeg), WebP, lossy PNG (imagequant)
22+
- Data formats: JSON Hash, JSON Array, Phaser 3, PixiJS
23+
- Texture formats: PNG (oxipng lossless), JPEG (mozjpeg), WebP, DXT1 (BC1), DXT5 (BC3)
24+
- Pixel formats: RGBA8888, RGB888, RGB565, RGBA4444, RGBA5551, Alpha8 — Floyd-Steinberg dithering for sub-8-bit formats
2425

25-
**GUI**
26+
**Desktop app**
2627
- Real-time atlas preview
2728
- Collapsible sprite tree with thumbnail previews
2829
- Watch mode — repacks on file change
2930
- `.fpsheet` project files (TOML)
31+
- Nine-patch and pivot editors per sprite
32+
- Drag-and-drop folders and project files
3033
- Multi-language UI
3134

3235
## Install
3336

34-
Download the installer for your platform from the [releases page](https://github.com/Hexeption/FastPack/releases):
37+
Download the desktop app for your platform from the [releases page](https://github.com/Hexeption/FastPack/releases):
3538

36-
- **Windows**`fastpack-windows-x86_64.msi`
39+
- **Windows**`fastpack-windows-x86_64-setup.exe`
3740
- **macOS (Apple Silicon)**`fastpack-macos-aarch64.dmg`
3841
- **macOS (Intel)**`fastpack-macos-x86_64.dmg`
39-
- **Linux**`fastpack-linux-x86_64.tar.gz`
42+
- **Linux**`fastpack-linux-x86_64.AppImage`
4043

41-
Or install from crates.io:
44+
Or install the CLI from crates.io:
4245

4346
```sh
4447
cargo install fastpack
4548
```
4649

47-
## Usage
50+
## CLI Usage
4851

4952
```sh
50-
# Open the GUI (default when no subcommand is given)
51-
fastpack
52-
5353
# Pack a directory of sprites
5454
fastpack pack sprites/ --output output/
5555

@@ -58,7 +58,8 @@ fastpack pack sprites/ --output output/ \
5858
--max-width 2048 --max-height 2048 \
5959
--trim-mode trim \
6060
--data-format phaser3 \
61-
--allow-rotation
61+
--allow-rotation \
62+
--multipack
6263

6364
# Load settings from a project file
6465
fastpack pack --project atlas.fpsheet
@@ -73,6 +74,8 @@ fastpack split atlas.png atlas.json --output-dir sprites/
7374
fastpack init --output atlas.fpsheet
7475
```
7576

77+
Run `fastpack <subcommand> --help` for the full flag list.
78+
7679
## Project File
7780

7881
Settings live in a `.fpsheet` TOML file:
@@ -132,6 +135,8 @@ filter = "**/*.png"
132135

133136
Requires Rust 1.85+.
134137

138+
**CLI only:**
139+
135140
```sh
136141
git clone https://github.com/Hexeption/FastPack
137142
cd FastPack
@@ -140,6 +145,17 @@ cargo build --release -p fastpack
140145

141146
The binary is at `target/release/fastpack`.
142147

148+
**Desktop app:**
149+
150+
The Tauri app also requires Node.js and pnpm. From the `crates/fastpack-tauri` directory:
151+
152+
```sh
153+
pnpm install
154+
pnpm tauri build
155+
```
156+
157+
The installer is placed under `src-tauri/target/release/bundle/`.
158+
143159
## License
144160

145161
Licensed under [MIT](LICENSE).

0 commit comments

Comments
 (0)