Skip to main content

Lightweight cross-platform book writing app with GitHub sync and chapter versioning

Project description

Download and Install Beckit

Beckit is distributed as a prebuilt installer — no Python or developer tools required. Download the version for your platform from the latest release. This app was built with the help of Claude.

macOS

Requirements: macOS 11 (Big Sur) or later

  1. Go to the latest release and download Beckit-macOS-<version>.dmg
  2. Open the downloaded .dmg file
  3. In the window that appears, drag Beckit into your Applications folder
  4. Eject the disk image (drag it to Trash or right-click → Eject)
  5. Open Launchpad or your Applications folder and launch Beckit

"App can't be opened because it is from an unidentified developer" This appears because the app is not yet signed with an Apple Developer certificate. To open it anyway: right-click (or Control-click) the app icon → click Open → click Open again in the dialog. You only need to do this once.


Windows

Requirements: Windows 10 or later (64-bit)

  1. Go to the latest release and download Beckit-Windows-<version>.zip
  2. Right-click the zip file and select Extract All… — choose a permanent location (e.g. C:\Program Files\Beckit or a folder on your Desktop)
  3. Open the extracted folder and double-click Beckit.exe to launch the app

Windows Defender SmartScreen warning ("Windows protected your PC") This appears because the app is not yet code-signed. Click More infoRun anyway to proceed.

Tip: Right-click Beckit.exeSend toDesktop (create shortcut) for easier access.


First Launch

Regardless of platform, the first time you open Beckit you will be asked to connect your GitHub account:

  1. Create a GitHub Personal Access Token with the repo scope (classic token)
  2. Paste it into the sign-in prompt and press Connect
  3. Select an existing repository to use as your book, or create a new one — Beckit will clone it locally and set up the Chapters/ structure automatically

Your token and repository settings are stored in your system's app config directory:

Platform Config location
macOS ~/Library/Application Support/beckit/
Windows %APPDATA%\beckit\

PDF export is built in — no separate tools required.


Run from Source (Developers)

If you'd prefer to run directly from source, or want to contribute to the project:

git clone https://github.com/kicka5h/book-editor-template.git
cd book-editor-template

python3 -m venv .venv

# macOS / Linux
source .venv/bin/activate

# Windows
.venv\Scripts\activate

pip install -e .
python -m book_editor     # or: beckit

To install dev dependencies and run tests:

pip install -e ".[dev]"
pytest

Project Layout

book-editor-template/
├── .gitignore
├── pyproject.toml
├── README.md
├── LICENSE
├── src/
│   └── book_editor/
│       ├── __init__.py
│       ├── __main__.py    # GUI entry (python -m book_editor)
│       ├── app.py         # Flet desktop UI
│       ├── config/        # App config (repo path, token)
│       ├── services/      # Chapter versioning, create, increment, word count, format, git
│       └── utils/         # Paths, chapter number helpers
├── tests/
│   ├── api/
│   ├── services/
│   ├── repositories/
│   └── utils/
└── .github/workflows/     # CI, CD, PDF generation, major release

Book Directory Structure

Chapters live under Chapters/ with semantic versioning per chapter:

Chapters/
  Chapter 1/
    v1.0.0/
      v1.0.0.md
    v1.1.0/
      v1.1.0.md
  Chapter 2/
    v1.0.0/
      v1.0.0.md

Each chapter can have multiple version folders (vMAJOR.MINOR.PATCH). All tools use the latest version when reporting word counts, generating PDFs, or listing chapters.


CLI Tools

After pip install -e ., these commands are available (run from a directory containing your Chapters/ folder):

Command Description
chapter-version list List chapters and their current versions
chapter-version minor -c 5 Bump minor version for chapter 5
chapter-version patch -c 1 2 3 Bump patch version for chapters 1–3
chapter-version major --all Bump major version for all chapters
create-chapter Create the next chapter (e.g. Chapter 11) at v1.0.0
increment-chapters 6 Renumber: Chapter 7→8, 8→9, … (use -y to skip confirm)
count-chapter-words Word count for the latest version of each chapter
format-markdown -r -i . Format markdown in place

Use -d /path/to/Chapters to point any tool at a specific directory.


License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

beckit-3.3.0.tar.gz (39.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

beckit-3.3.0-py3-none-any.whl (45.7 kB view details)

Uploaded Python 3

File details

Details for the file beckit-3.3.0.tar.gz.

File metadata

  • Download URL: beckit-3.3.0.tar.gz
  • Upload date:
  • Size: 39.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for beckit-3.3.0.tar.gz
Algorithm Hash digest
SHA256 df74d6c4a204652daf711f6515189f76909e13e3f42cd1f2476cdfe70722f43e
MD5 565a6bf4d88a9eeecbd6c1e835988deb
BLAKE2b-256 bf1aacb0b24542b97982cf2ca3c9b66018269b83c90bfc659c94f9c30674a77e

See more details on using hashes here.

Provenance

The following attestation bundles were made for beckit-3.3.0.tar.gz:

Publisher: cd.yml on kicka5h/beckit-book-editor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file beckit-3.3.0-py3-none-any.whl.

File metadata

  • Download URL: beckit-3.3.0-py3-none-any.whl
  • Upload date:
  • Size: 45.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for beckit-3.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 daa083402a4c597b8d1a1cb6c249c4131c4e8534e2663f9b1feffad21e58681a
MD5 91719b270f14b81ed274a8d9a55c67bb
BLAKE2b-256 7fa860b9669a37e7166a4119c0d249467fd93ae1f6e0e6f16fff50fb72873035

See more details on using hashes here.

Provenance

The following attestation bundles were made for beckit-3.3.0-py3-none-any.whl:

Publisher: cd.yml on kicka5h/beckit-book-editor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page