If you find my work valuable, please consider to Sponsor or Donate!
A modern amateur radio logging application built with Vue 3, TypeScript, and Electron. It just works.
Hamledger is a feature-rich amateur radio logging application designed for ham radio operators. It provides a modern, intuitive interface for logging QSOs (radio contacts), managing station information, and tracking various operating achievements. This is not a contest-grade logger (Hamledger Contest is in the making), but rather an everyday logger tool.
- Real-time Rig Control: Interface with popular amateur radio transceivers (Hamlib)
- QSO Logging: Easy and efficient contact logging with auto-fill capabilities, ADIF import-export
- DX Cluster: Quick and seamless selection of stations
- S-Meter Display: Real-time signal strength visualization
- Propagation Data: Current solar and propagation condition monitoring
- UTC Clock: Integrated UTC time display for accurate logging
- Weather Information: Local weather conditions display
- Remote Station Info: Quick access to contacted station details
- WSJT-X Integration: Can automatically log QSOs from WSJT-X
- Modern UI: Clean, intuitive interface built with Vue 3
- Frontend: Vue 3 with TypeScript
- State Management: Pinia
- Build Tool: Vite
- Desktop Runtime: Electron
- Styling: Custom CSS with modern design principles
For detailed usage instructions and complete functionality guide, see:
- Tutorial (Hungarian) - Teljes funkcionalitás útmutató magyar nyelven
- Tutorial (English) - Complete functionality guide in English
See INSTALL.md for detailed installation instructions.
- Node.js (v16 or later)
- npm package manager
- Git
-
Clone the repository:
git clone https://github.com/valibali/hamledger.git
-
Install dependencies:
npm install
-
Start the development server:
npm run app:dev
-
Build the application:
npm run app:build
-
Preview the production build:
npm run app:preview
hamlog/
├── src/
│ ├── components/ # Vue components
│ ├── store/ # Pinia stores
│ ├── electron/ # Electron main and preload scripts
│ └── assets/ # Static assets
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the GNU General Public License v3.0 with commercial clause. See the LICENSE file for details.
- The Vue.js team for the amazing framework
- The Electron team for making cross-platform desktop apps possible
- The amateur radio community for inspiration and feedback
All the best, HA5XB Balazs




