This repository contains a collection of utilities for working with Obsidian, a powerful knowledge base that works on top of a local folder of plain text Markdown files.
The purpose of this repository is to provide command-line utilities that enhance the Obsidian experience by automating common tasks and extending Obsidian's functionality. These utilities are designed to be simple, focused, and easy to use.
The Appointment Manager utility creates meeting notes in Obsidian with a specific template. It allows you to create meeting notes with a predefined template and supports recurring meetings with different intervals.
The Daily Note Creator utility creates daily notes in Obsidian with a specific template. It creates markdown files with a predefined template that includes links to previous and next day notes, as well as various sections for tracking activities, health metrics, tasks, and more.
The Google Contacts Exporter utility exports Google contacts and contact groups to JSON files. It uses OAuth2 authentication to access your Google account and the Google People API to retrieve your contacts and contact groups.
The Obsidian Frontmatter Editor utility modifies frontmatter in Obsidian notes. It can set string, integer, or float values for specified keys in the frontmatter, which is useful for scripting or automating changes to note metadata.
The iCal Importer utility creates meeting notes in Obsidian from an iCal file. It reads events from the specified iCal file, filters out past events, and creates a markdown file for each future event using a predefined template.
Each utility can be installed separately. Please refer to the individual README files for installation instructions.
Please refer to the individual README files for usage instructions for each utility.
This project uses GitHub Actions for continuous integration and deployment:
- Pull Request Tests: Automatically builds the code on Linux, macOS, and Windows to ensure it compiles correctly when a pull request is opened.
- Release Creation: Automatically creates a new release with binaries for Linux, macOS, and Windows when a new tag is pushed.
To create a new release:
- Tag the commit you want to release with a version number:
git tag v1.0.0
- Push the tag to GitHub:
git push origin v1.0.0
- GitHub Actions will automatically create a release and build binaries for all platforms.
This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License (CC BY-NC 4.0) - see the LICENSE file for details. This license allows you to obtain, run, and modify the code, but prohibits using it for commercial purposes (selling it for money with or without changes).