Skip to content

nicopico-dev/petit-boutiste

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

173 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Petit Boutiste

screenshot.png

General purpose of the project

Petit Boutiste is a desktop tool to explore and understand raw byte data. Paste or type data (typically in hexadecimal or binary), define meaningful byte groups, and instantly view multiple human‑readable representations such as integers, text, and other. Built with Kotlin Multiplatform and Compose Multiplatform, it focuses on a fast, convenient workflow for day‑to‑day binary inspection.

Features

  • Input and display data in hexadecimal or binary format
  • Quick toggle between HEX, BIN, and BASE64 input modes
  • Define named byte groups and visualize selections
  • Render groups as:
    • Raw hexadecimal
    • Binary
    • Integer values (configurable endianness, signed/unsigned)
    • Text (configurable charset and endianness)
    • Protocol Buffers using a .desc file, e.g.:
      • protoc --include_imports foo.proto --descriptor_set_out=foo.desc
    • Custom rendering logic with Kotlin Script (KTS)
    • Sub-template for repeating elements
  • Save, load, export, and import templates to reuse structures
  • Multi‑tab interface to work on several datasets at once

Development

Prerequisites

  • JDK 11 or later

Build

./gradlew build

Run (desktop)

./gradlew :composeApp:run

Hot reload (Compose)

./gradlew :composeApp:composeHotRun

Create a distributable

./gradlew :composeApp:createReleaseDistributable

Packages are generated for the host OS (macOS: APP, Windows: EXE, Linux: DEB/RPM).

Tests

  • Run all tests:
./gradlew test
  • Run a specific test (example):
./gradlew test --tests "fr.nicopico.petitboutiste.models.HexStringTest"

Test sources follow the main package layout. Common tests are in composeApp/src/commonTest/; platform‑specific ones are in composeApp/src/<platform>Test/.

License

This project is licensed under the MPL-2.0 License

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •