RustyDiary 📝
RustyDiary is a Rust utility that helps you merge dated Markdown files into a single chronological log. It's perfect for combining daily notes, journal entries, or any date-stamped Markdown files.
Features
- 📅 Automatically detects and merges files with date-based names (YYYY-MM-DD.md)
- ⬇️ Sorts entries in reverse chronological order (newest first)
- 🔄 Preserves existing content in the output file
- ⚙️ Configurable separators between entries
- 🛡️ Robust error handling and validation
Installation
-
Ensure you have Rust installed on your system. If not, install it from rustup.rs.
-
Clone this repository:
- Build the project:
The compiled binary will be available in target/release/rusty-diary.
Usage
Basic usage (current directory):
<directory> Directory
Specify a different directory:
File Naming Convention
Files should follow the pattern: YYYY-MM-DD.md
Examples:
2024-01-01.md2024-12-31.md
Configuration
The default configuration can be modified by creating a custom Config instance:
let config = Config ;
Development
Prerequisites
- Rust (latest stable version)
- Cargo (comes with Rust)
Dependencies
regex: For pattern
Future ideas
- Feed the chronological data to a LLM to generate summaries or insights.
- Add support for different date formats.