HiDock Next: Local control for your HiDock device. Manage recordings, access advanced AI transcription (Gemini, OpenAI), and build your private knowledge base. An open-source alternative to HiNotes.
115
stars
1,431
commits
TypeScript
primary language
Aug 26, 2026
updated
Desktop & Web Applications for Managing Files on HiDock® Devices
Disclaimer: This is an unofficial, third-party application not affiliated with or endorsed by HiDock or its manufacturers. HiDock® is a trademark of its respective owners.
Desktop file manager for HiDock® devices - Download, organize, and transcribe audio files
git clone https://github.com/sgeraldes/hidock-next.git
cd hidock-next
setup-windows.bat
run-desktop.bat
git clone https://github.com/sgeraldes/hidock-next.git
cd hidock-next
./setup-unix.sh
./run-desktop.sh
| Feature | Windows | macOS | Linux |
|---|---|---|---|
| Device Management | ✅ Full | ✅ Full | ✅ Full |
| Audio Processing | ✅ Full | ✅ Full | ✅ Full |
| Calendar Integration | ✅ Outlook | ❌ | ❌ |
| AI Transcription | ✅ All Providers | ✅ All Providers | ✅ All Providers |
hidock-next/
├── apps/ # Applications
│ ├── desktop/ # Desktop application (Python/Tkinter)
│ ├── web/ # Web application (React/TypeScript)
│ └── audio-insights/ # Audio analysis tool
├── research/ # Research and reverse engineering tools
├── firmware/ # Device firmware files
├── docs/ # Documentation
├── scripts/ # Utility scripts
└── config/ # Configuration files
python setup.py
# Choose option 2 (Developer)
cd apps/desktop
pytest tests/
By default the repository defines markers to classify tests:
unit – fast, pure-Python or lightweight logicintegration – touches external systems, heavier setupgui – requires a display / GUI toolkitsslow – long-running or large dataset processingThe default invocation (no args) in local dev or CI (fast lane) skips
integration, gui, and slow to keep feedback loops tight.
Fast subset (default behavior via pytest.ini):
pytest -q
Run only integration tests:
pytest -m integration
Run full test suite (all markers):
pytest -m "unit or integration or gui or slow"
Or simply clear filtering by overriding -m:
pytest -m ""
Run everything including verbose output:
pytest -vv -m ""
Example: run unit + slow (e.g., for a targeted performance check):
pytest -m "unit or slow"
If you maintain custom CI stages, you can mirror this split:
| Stage | Command |
|---|---|
| fast (default) | pytest -q |
| integration | pytest -m integration -q |
| gui | pytest -m gui |
| full | pytest -m "unit or integration or gui or slow" |
Tip: Keep the quick path green before running the heavier suites.
python scripts/build/build_desktop.py
See docs/VENV.md for the per-platform virtual environment strategy (separate .venv.<tag> per OS/WSL). The runtime scripts (run-desktop.*) and setup logic auto-select or create the correct one via scripts/env/select_venv.py.
Common setup flags:
# Non-interactive full developer setup (auto-skip migration unless specified)
python setup.py --non-interactive
# Force legacy migration strategy
python setup.py --migrate=copy # or --migrate=rebuild / --migrate=skip
# Explicit end-user minimal mode
python setup.py --mode=end-user
# Recreate tagged environment even if it exists
python setup.py --force-new-env
# Diagnose virtual environment only (no installs)
python setup.py --diagnose-venv
# Auto-install missing Debian/Ubuntu system dependencies (tk, ffmpeg, libusb, build tools)
python setup.py --auto-install-missing
Environment variable alternative for migration:
HIDOCK_AUTO_MIGRATE=c python setup.py # c=copy, r=rebuild, s=skip
Environment variable alternative for auto-install (CI / scripted):
HIDOCK_AUTO_INSTALL_MISSING=1 python setup.py --non-interactive
On Debian/Ubuntu based systems the setup script can detect and help resolve missing packages:
If you see a prompt listing missing dependencies you can:
To skip prompts and let the script attempt installation automatically:
python setup.py --auto-install-missing --non-interactive
If packages fail to install you will still be able to continue, but Python dependency installation may later fail until system requirements are met.
We welcome contributions! Please see our Contributing Guide for details.
This project is licensed under the MIT License - see the LICENSE file for details.
HiDock Next v1.0-RC1 - Ready for production use!
TypeScript
76.1%
Python
19.7%
HTML
2.6%
HiDock Next: Local control for your HiDock device. Manage recordings, access advanced AI transcription (Gemini, OpenAI), and build your private knowledge base. An open-source alternative to HiNotes.
115
stars
1,431
commits
TypeScript
primary language
Aug 26, 2026
updated
Desktop & Web Applications for Managing Files on HiDock® Devices
Disclaimer: This is an unofficial, third-party application not affiliated with or endorsed by HiDock or its manufacturers. HiDock® is a trademark of its respective owners.
Desktop file manager for HiDock® devices - Download, organize, and transcribe audio files
git clone https://github.com/sgeraldes/hidock-next.git
cd hidock-next
setup-windows.bat
run-desktop.bat
git clone https://github.com/sgeraldes/hidock-next.git
cd hidock-next
./setup-unix.sh
./run-desktop.sh
| Feature | Windows | macOS | Linux |
|---|---|---|---|
| Device Management | ✅ Full | ✅ Full | ✅ Full |
| Audio Processing | ✅ Full | ✅ Full | ✅ Full |
| Calendar Integration | ✅ Outlook | ❌ | ❌ |
| AI Transcription | ✅ All Providers | ✅ All Providers | ✅ All Providers |
hidock-next/
├── apps/ # Applications
│ ├── desktop/ # Desktop application (Python/Tkinter)
│ ├── web/ # Web application (React/TypeScript)
│ └── audio-insights/ # Audio analysis tool
├── research/ # Research and reverse engineering tools
├── firmware/ # Device firmware files
├── docs/ # Documentation
├── scripts/ # Utility scripts
└── config/ # Configuration files
python setup.py
# Choose option 2 (Developer)
cd apps/desktop
pytest tests/
By default the repository defines markers to classify tests:
unit – fast, pure-Python or lightweight logicintegration – touches external systems, heavier setupgui – requires a display / GUI toolkitsslow – long-running or large dataset processingThe default invocation (no args) in local dev or CI (fast lane) skips
integration, gui, and slow to keep feedback loops tight.
Fast subset (default behavior via pytest.ini):
pytest -q
Run only integration tests:
pytest -m integration
Run full test suite (all markers):
pytest -m "unit or integration or gui or slow"
Or simply clear filtering by overriding -m:
pytest -m ""
Run everything including verbose output:
pytest -vv -m ""
Example: run unit + slow (e.g., for a targeted performance check):
pytest -m "unit or slow"
If you maintain custom CI stages, you can mirror this split:
| Stage | Command |
|---|---|
| fast (default) | pytest -q |
| integration | pytest -m integration -q |
| gui | pytest -m gui |
| full | pytest -m "unit or integration or gui or slow" |
Tip: Keep the quick path green before running the heavier suites.
python scripts/build/build_desktop.py
See docs/VENV.md for the per-platform virtual environment strategy (separate .venv.<tag> per OS/WSL). The runtime scripts (run-desktop.*) and setup logic auto-select or create the correct one via scripts/env/select_venv.py.
Common setup flags:
# Non-interactive full developer setup (auto-skip migration unless specified)
python setup.py --non-interactive
# Force legacy migration strategy
python setup.py --migrate=copy # or --migrate=rebuild / --migrate=skip
# Explicit end-user minimal mode
python setup.py --mode=end-user
# Recreate tagged environment even if it exists
python setup.py --force-new-env
# Diagnose virtual environment only (no installs)
python setup.py --diagnose-venv
# Auto-install missing Debian/Ubuntu system dependencies (tk, ffmpeg, libusb, build tools)
python setup.py --auto-install-missing
Environment variable alternative for migration:
HIDOCK_AUTO_MIGRATE=c python setup.py # c=copy, r=rebuild, s=skip
Environment variable alternative for auto-install (CI / scripted):
HIDOCK_AUTO_INSTALL_MISSING=1 python setup.py --non-interactive
On Debian/Ubuntu based systems the setup script can detect and help resolve missing packages:
If you see a prompt listing missing dependencies you can:
To skip prompts and let the script attempt installation automatically:
python setup.py --auto-install-missing --non-interactive
If packages fail to install you will still be able to continue, but Python dependency installation may later fail until system requirements are met.
We welcome contributions! Please see our Contributing Guide for details.
This project is licensed under the MIT License - see the LICENSE file for details.
HiDock Next v1.0-RC1 - Ready for production use!
TypeScript
76.1%
Python
19.7%
HTML
2.6%