Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

11 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

FlipperKit

                                                   __
                                               _.-~  )
                                    _..--~~~~,'   ,-/     _
                                 .-'. . . .'      ,-','    ,
                               ,'. . . _   ,--~,-'__..-'  ,'
                             ,'. . .  (@)' ---~~~~      ,'
                            /. . . . '                 ,-'
                           ; . . . .- .            ,-'
                          : . . . .   `.       ,-'. .
                         . . . . .      `.  ,-' . . .
                        . . . . .         .' . . . . .
                       .-.  . . . .     ,'  . . . . .
                    `._`.`.__. . .  ,-'. . . . . . .
                       `-.`-'`--...-'`-._ . . . . .
                          `--..___..--~~~  `-. . .
                                             `._ .
+============================================================================+
|                                                                            |
| >BACKUP         _____ _ _                       _  ___ _              NFC. |
| >PARSE         |  ___| (_)_ __  _ __   ___ _ __| |/ (_) |_         SubGhz. |
| >INDEX         | |_  | | | '_ \| '_ \ / _ \ '__| ' /| | __|          RFID. |
| >REPORT        |  _| | | | |_) | |_) |  __/ |  | . \| | |_        iButton. |
|                |_|   |_|_| .__/| .__/ \___|_|  |_|\_\_|\__|                |
|                          |_|   |_|                                         |
|                                                                            |
|                         Flipper Zero companion CLI                         |
+============================================================================+

A companion command-line toolkit for the Flipper Zero. Back up the SD card, parse captured artifacts, index them into SQLite, and generate shareable reports β€” the things the mobile app does poorly or not at all.

Built for engineers, not just users. Where the official app lets you use the device, FlipperKit treats what it captures as data to manage: versioned backups, a searchable index, and reports you can hand to someone else.

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”   backup   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   parse/index   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   report   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Flipper β”‚ ─────────► β”‚  local   β”‚ ──────────────► β”‚  SQLite  β”‚ ─────────► β”‚ html/md/json β”‚
β”‚  (USB)  β”‚            β”‚  mirror  β”‚                 β”‚  index   β”‚            β”‚   report     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Why this exists

The Flipper stores everything as small text files on its SD card (.nfc, .sub, .rfid, .ir, …). Over time that turns into an unsearchable pile. FlipperKit:

  • Backs up the SD card over the serial CLI, skipping unchanged files.
  • Parses each artifact into a normalized record (category, protocol, UID/key, frequency…).
  • Indexes records in SQLite, de-duplicated by SHA-256.
  • Reports the collection as a clean HTML page, Markdown table, or JSON.

Install

Requires Python 3.9+.

Quick install (use it as a command)

Installs flipperkit as a normal command available from any terminal:

git clone https://github.com/juandresrodca/FlipperKit
cd FlipperKit
pip install -e .

The -e (editable) flag points the command at your source folder, so code changes take effect immediately β€” no reinstall needed. Then, from any directory:

flipperkit --help

Windows note: the flipperkit command lands in your Python Scripts directory. If the shell can't find it, that directory isn't on your PATH β€” either add it, or run the tool with python -m flipperkit ....

Uninstall: pip uninstall flipperkit

Isolated / dev install

To keep FlipperKit and its dependencies out of your global Python , use a virtual environment. Add [dev] to also install the test dependencies (pytest):

git clone https://github.com/juandresrodca/FlipperKit
cd FlipperKit
python -m venv .venv && . .venv/Scripts/activate   # Windows
# source .venv/bin/activate                         # macOS / Linux
pip install -e ".[dev]"
pytest

Usage

# Find your Flipper's serial port
flipperkit devices

# Show device info
flipperkit info --port COM3

# Mirror the SD card into ./backups (unchanged files are skipped)
flipperkit backup ./backups --port COM3

# Parse a file or folder and print a table
flipperkit parse ./backups

# Build a searchable SQLite index
flipperkit index ./backups --db flipperkit.db

# Generate a report
flipperkit report --db flipperkit.db --format html --out report.html
flipperkit report --db flipperkit.db --format md --category subghz

# Update to the latest version (when installed from a git clone)
flipperkit update --check   # see if a newer version is available
flipperkit update          # pull and apply it

No device handy? The pipeline works on any folder of Flipper files β€” try it on the bundled samples:

flipperkit index tests/fixtures --db demo.db
flipperkit report --db demo.db -f html -o demo.html

Supported artifacts

Extension Category Extracted fields
.nfc nfc device type, UID
.sub subghz protocol, frequency, key, preset
.rfid rfid key type, data
.ir infrared protocol, signal count, signal names
.ibtn ibutton protocol/key type, data

Architecture

src/flipperkit/
β”œβ”€β”€ client.py    # the ONLY module that imports pyserial (Flipper CLI wrapper)
β”œβ”€β”€ backup.py    # sync logic, depends on a small RemoteFS protocol β†’ testable with a fake
β”œβ”€β”€ parsers.py   # Flipper text format β†’ FlipperRecord
β”œβ”€β”€ db.py        # SQLite index (dedup by SHA-256)
β”œβ”€β”€ report.py    # JSON / Markdown / HTML renderers
└── cli.py       # Typer CLI wiring it together

The hardware boundary is deliberately thin and isolated. Everything else β€” parsing, indexing, reporting, even the recursive backup walk β€” is tested against in-memory data, so pytest runs green with no Flipper attached.

pytest

βš–οΈ Legal & ethical use

FlipperKit is a data-management tool for artifacts you have lawfully captured from your own devices or from systems you are explicitly authorized to test. It does not exploit anything β€” it organizes files the Flipper already wrote. Cloning, replaying, or reading credentials you do not own may be illegal in your jurisdiction. Use it for learning, lab work, and authorized assessments only.

License

MIT

About

🐬 Companion CLI for the Flipper Zero β€” back up the SD card, parse NFC / Sub-GHz / RFID / infrared artifacts, index them in SQLite, and generate shareable reports.

Topics

Resources

Code of conduct

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages