A distraction-free terminal writing environment for Raspberry Pi
Project description
MicroJournal
MicroJournal turns a Raspberry Pi into a distraction-free terminal writing appliance.
It is built for headless use over SSH, so you do not need a GUI, a custom OS image, or any cloud account to get started.
If you want larger text, raise the font size in your terminal emulator and enable MicroJournal's large UI mode.
Install
uv tool install microjournal
If you want spaCy-powered NLP, install the optional NLP extra:
uv tool install "microjournal[nlp]"
Local development
uv run microjournal
Commands
microjournallaunches the editormicrojournal setupruns first-time configurationmicrojournal configedits settingsmicrojournal syncsyncs notesmicrojournal exportexports notesmicrojournal pack exportwrites a shareable visual pack JSON filemicrojournal pack loadapplies a visual pack from a JSON filemicrojournal doctorchecks hardware and dependenciesmicrojournal dictateruns push-to-talk local speech-to-text
Storage
- Notes are stored as Markdown in
~/MicroJournal/notes - Config is stored in
~/.config/microjournal/config.toml - Autosave is enabled by default and runs every 5 seconds
First run
- Run
microjournal setup - Choose your notes folder
- Pick the display mode, boot behavior, sync placeholder, theme, and large UI preference
- Launch
microjournal
Editor shortcuts
Ctrl+SsaveCtrl+Nnew noteCtrl+Fsearch notesCtrl+Pcommand paletteCtrl+Ttheme makerCtrl+Rview note statsCtrl+Eexport note statsF8toggle voice recordingCtrl+Qquit
NLP stats
- The footer shows live writing stats plus spaCy-powered NLP stats when the optional
nlpextra is installed - Note stats export creates a companion
*.ner.mdfile with entities and summary stats - If you install the optional
nlpextra and theen_core_web_smmodel is available, named-entity results are richer
Voice dictation
- The prototype uses
faster-whisperplus microphone capture, all locally - Dictated text is inserted into the editor at the cursor
- Voice mode is push-to-talk: press
VoiceorF8to start, then press it again to stop
Accessibility
- Large UI mode increases spacing, sidebar width, and footer breathing room
- The app does not force terminal font size; that is still controlled by your terminal emulator
- Visual packs let you share a theme, palette, and display setup as a JSON file
- Use the command palette to open the in-app Theme Maker, tweak a pack, and export it for sharing
Roadmap
- Typing telemetry for sparklines and dashboards, focused on aggregated local writing data rather than raw keystrokes
- More visual pack presets for cyberdeck-style builds
- Better export/share flows for Reddit-ready screenshots and pack files
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file microjournal-0.1.1.tar.gz.
File metadata
- Download URL: microjournal-0.1.1.tar.gz
- Upload date:
- Size: 26.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6fdeff3e2eb877f294ea9926b3c3bcf0590184e079c62d45b2622a90645758dd
|
|
| MD5 |
97fa1dec92fbc1130fc17b95a1ddbeda
|
|
| BLAKE2b-256 |
93aba570e493f4569494e0b858936085613b0f31099812a4d32c5d71a9e9f454
|
Provenance
The following attestation bundles were made for microjournal-0.1.1.tar.gz:
Publisher:
workflow.yml on elclaudioabierto/microjournal
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
microjournal-0.1.1.tar.gz -
Subject digest:
6fdeff3e2eb877f294ea9926b3c3bcf0590184e079c62d45b2622a90645758dd - Sigstore transparency entry: 2107475874
- Sigstore integration time:
-
Permalink:
elclaudioabierto/microjournal@cb24ee87c088b0cf25e76ddd094d362dbbeef21f -
Branch / Tag:
refs/heads/main - Owner: https://github.com/elclaudioabierto
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@cb24ee87c088b0cf25e76ddd094d362dbbeef21f -
Trigger Event:
push
-
Statement type:
File details
Details for the file microjournal-0.1.1-py3-none-any.whl.
File metadata
- Download URL: microjournal-0.1.1-py3-none-any.whl
- Upload date:
- Size: 25.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2410fe0e9bb6b339d327f192f87ad7e111d4bab6037407c5d2fce745ce096dd2
|
|
| MD5 |
1d3bfcd9b087d9dc1f8c80c13cb76700
|
|
| BLAKE2b-256 |
5195ff152a245c2ebc21022770b08e8bb7e76e9d48ef7af0f9cda637c668ef23
|
Provenance
The following attestation bundles were made for microjournal-0.1.1-py3-none-any.whl:
Publisher:
workflow.yml on elclaudioabierto/microjournal
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
microjournal-0.1.1-py3-none-any.whl -
Subject digest:
2410fe0e9bb6b339d327f192f87ad7e111d4bab6037407c5d2fce745ce096dd2 - Sigstore transparency entry: 2107476013
- Sigstore integration time:
-
Permalink:
elclaudioabierto/microjournal@cb24ee87c088b0cf25e76ddd094d362dbbeef21f -
Branch / Tag:
refs/heads/main - Owner: https://github.com/elclaudioabierto
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@cb24ee87c088b0cf25e76ddd094d362dbbeef21f -
Trigger Event:
push
-
Statement type: