Yet Another Memos Sync

approved

by exusiaiwei

This plugin has not been manually reviewed by Obsidian staff. Enhanced Memos sync plugin with emoji timeline and List Callout format support. Features intelligent sync, visual enhancements, and i18n support.

โ†“ 390 downloadsUpdated 10d ago0BSD

๐Ÿ—‚๏ธ Yet Another Memos Sync

An enhanced Obsidian plugin for synchronizing Memos with daily notes, featuring emoji timeline and intelligent formatting. ๐Ÿ“

English ยท ็ฎ€ไฝ“ไธญๆ–‡ ยท GitHub Repository ยท Community Plugin

Table of Contents

Background

Yet Another Memos Sync is an enhanced Obsidian plugin that seamlessly synchronizes your Memos with daily notes. Inspired by the original obsidian-memos-sync plugin, this version offers advanced features including emoji timeline, intelligent formatting, and robust synchronization strategies.

Unlike basic sync tools, it provides visual enhancements, smart synchronization, and supports both modern and legacy Memos API versions.

Features

๐Ÿ”„ Smart Synchronization

  • Incremental sync - Only updates changed content for better performance
  • Time-limited sync - Configurable day limits (default: 30 days) to control sync scope
  • Deletion detection - Automatically removes deleted memos from your notes
  • Auto-sync options - Startup and periodic synchronization capabilities

๐ŸŽจ Visual Enhancements

  • List Callout Style - Enhanced Markdown lists with emoji timeline (recommended)
  • Callout Format - Rich card-style presentation for detailed viewing
  • Standard Format - Clean Markdown lists with emoji enhancements
  • Multi-line support - Proper indentation handling for complex memo structures

๐ŸŒ Internationalization

  • Full i18n support - English, Chinese, and extensible language system
  • Auto-detection - Automatically detects your Obsidian language preference
  • Consistent UI - Translated settings interface and user messages

โš™๏ธ Flexible Configuration

  • API version support - Compatible with Memos v0.25.1 and legacy versions
  • Custom headers - Configurable memo section headers for organization
  • Attachment handling - Download and organize memo attachments automatically
  • Daily note integration - Seamless integration with Daily Notes plugin

Installation

Community Plugins (Recommended)

  1. Open Obsidian Settings โ†’ Community plugins
  2. Disable Safe mode if not already disabled
  3. Click "Browse" and search for "Yet Another Memos Sync"
  4. Install and enable the plugin

Manual Installation

  1. Download the latest release from GitHub Releases
  2. Extract the files to <vault>/.obsidian/plugins/yet-another-memos-sync/
  3. Reload Obsidian and enable the plugin in Settings โ†’ Community Plugins

Build from Source

# Clone the repository
git clone https://github.com/exusiaiwei/yet-another-memos-sync.git
cd yet-another-memos-sync

# Install dependencies
npm install

# Build the plugin
npm run build

Configuration

Basic Setup

  1. Open Settings โ†’ Yet Another Memos Sync
  2. Configure your Memos server:
    • API URL: Your Memos server address (e.g., https://your-memos.com)
    • API Token: Generate from your Memos settings page
    • API Version: Select your server version (v0.25.1 recommended)

Visual Style Selection

Choose one format that best suits your workflow:

  • ๐ŸŽจ List Callout Style: Enhanced lists with emoji timeline (recommended with List Callouts plugin)
  • ๐Ÿ“‹ Callout Format: Rich card-style presentation for detailed viewing
  • ๐Ÿ“ Standard Format: Simple emoji-enhanced Markdown lists

Advanced Configuration

๐Ÿ“ Sync Settings
  • Sync Days Limit: Control sync scope (0 = unlimited, default: 30 days)
  • Daily Note Headers: Customize memo section titles
  • Auto-create Notes: Automatically create missing daily note files
  • Attachment Folder: Configure memo attachment storage location
๐Ÿ”„ Auto-Sync Options
  • Startup Sync: Automatically sync when Obsidian starts
  • Startup Delay: Wait time before initial sync (default: 5 seconds)
  • Skip if Synced Today: Avoid duplicate syncs on the same day
  • Periodic Sync: Regular interval syncing (0 = disabled)

Usage

Basic Operations

  • ๐Ÿ”„ Manual Sync: Click the sync button in the ribbon or use Command Palette (Ctrl/Cmd + P โ†’ "Sync Memos")
  • โšก Force Sync: Re-sync all memos, ignoring incremental sync cache
  • ๐Ÿค– Auto Sync: Automatically syncs on Obsidian startup and at periodic intervals (if enabled)

Command Palette Commands

  • Yet Another Memos Sync: Sync Memos - Standard incremental sync
  • Yet Another Memos Sync: Force Sync All Memos - Complete re-sync
  • Yet Another Memos Sync: Open Settings - Quick access to plugin settings

Visual Formats

๐ŸŽจ List Callout Style (Recommended)

The List Callout style creates beautiful, themed memo lists that integrate seamlessly with the List Callouts plugin:

- ๐ŸŒ… 07:30 Morning coffee and planning the day
  - Reviewed project timeline
  - Prepared meeting agenda
- โ˜€๏ธ 14:20 Productive afternoon work session
- ๐ŸŒ† 18:30 Evening wrap-up and notes review
- ๐ŸŒ™ 22:15 Late night reading session

When paired with List Callouts plugin, each time period gets beautiful colored themes

๐Ÿ“‹ Time Period Mapping

The plugin uses a simplified 4-period emoji system for intuitive time organization:

PeriodEmojiTime RangeList Callout ThemeDescription
Early Morning๐ŸŒ…05:00-12:00[!info] BluePeaceful dawn hours
Noonโ˜€๏ธ12:00-17:00[!tip] GreenEnergetic daytime
Evening๐ŸŒ†17:00-21:00[!warning] OrangeWarm sunset
Night๐ŸŒ™21:00-05:00[!note] PurpleQuiet nighttime

๐Ÿ”„ Other Format Examples

Callout Format

> [!memo] ๐ŸŒ… 07:30 Morning Memo
> Planning the day with coffee โ˜•
> - Review project timeline
> - Prepare meeting agenda

Standard Format

- ๐ŸŒ… 07:30 Morning coffee and planning
- โ˜€๏ธ 14:20 Productive work session
- ๐ŸŒ† 18:30 Evening wrap-up

Development

Prerequisites

  • Node.js (v16 or higher)
  • npm or yarn

Development Setup

# Clone the repository
git clone https://github.com/exusiaiwei/yet-another-memos-sync.git
cd yet-another-memos-sync

# Install dependencies
npm install

# Development mode with auto-rebuild
npm run dev

# Build for production
npm run build

# Run tests
npm test

Supported Memos Versions

  • โœ… v0.25.1 (Latest, recommended)
  • โœ… v0.24.x (Fully supported)
  • โœ… v0.23.x (Fully supported)
  • โœ… v0.22.x (Fully supported)
  • โœ… v0.21.x (Fully supported)
  • โœ… Legacy versions (v0.20 and below)

Contributing

We welcome contributions from the community! Here's how you can help:

Ways to Contribute

  • ๐Ÿ› Report bugs via GitHub Issues
  • ๐Ÿ’ก Suggest features through GitHub Discussions
  • ๐Ÿ”€ Submit pull requests for improvements
  • ๐Ÿ“– Improve documentation and translations
  • ๐ŸŒŸ Star the repository to show your support

Development Guidelines

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments


๐Ÿ’ Support

If this plugin helps you, consider:

  • โญ Star this repository
  • ๐Ÿ› Report issues to help improve
  • ๐Ÿ”€ Contribute code or documentation
  • ๐Ÿ’ฌ Share feedback and suggestions

Made with โค๏ธ for the Obsidian community

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.