Make It Rain Documentation

Documentation for the 'Make It Rain' Obsidian plugin

View on GitHub

Tag Management

This guide explains how Make It Rain handles tags from Raindrop.io and integrates them with your Obsidian vault.

Table of Contents

Tag Basics

Tag Structure

Tags in Raindrop.io are simple strings that can be:

Tag Properties

Each tag has the following properties:

Tag Import

Basic Import

Tags are automatically imported with your Raindrop items and added to the YAML frontmatter:

---
title: My Bookmark
tags:
  - work
  - research
  - to_read
---

Tag Processing

During import, tags are:

  1. Sanitized for Obsidian compatibility
  2. Converted to lowercase
  3. Spaces replaced with underscores
  4. Special characters removed

Import Options

Tag Filtering

Basic Filtering

Filter imports by tags using:

Filter Syntax

Advanced Filtering

Tag Customization

Tag Transformation

Customize how tags are processed:

interface TagOptions {
    prefix: string;          // Add prefix to all tags
    suffix: string;          // Add suffix to all tags
    transform: (tag: string) => string;  // Custom transformation
    filter: (tag: string) => boolean;    // Filter tags
}

Tag Mapping

Map Raindrop tags to Obsidian tags:

interface TagMapping {
    'to read': 'status/to_read';
    'in progress': 'status/in_progress';
    'done': 'status/done';
}

Tag Templates

Use tags in templates:


Tags: 

Best Practices

Organization

  1. Tag Structure
    • Use consistent naming
    • Plan hierarchy
    • Keep it simple
  2. Tag Categories
    • Status tags
    • Topic tags
    • Project tags
    • Custom tags
  3. Tag Maintenance
    • Regular cleanup
    • Merge similar tags
    • Archive unused tags

Performance

  1. Tag Processing
    • Efficient filtering
    • Optimize mapping
    • Cache results
  2. Large Collections
    • Batch processing
    • Incremental updates
    • Monitor memory usage
  3. Search Optimization
    • Use tag patterns
    • Optimize queries
    • Cache results

Maintenance

  1. Regular Tasks
    • Check for duplicates
    • Update mappings
    • Clean up tags
  2. Backup Strategy
    • Export tag list
    • Version control
    • Regular backups
  3. Error Handling
    • Validate tags
    • Handle errors
    • Log issues

Troubleshooting

Common Issues

  1. Missing Tags
    • Check import settings
    • Verify tag format
    • Check permissions
  2. Tag Formatting
    • Check sanitization
    • Verify mapping
    • Check templates
  3. Filter Problems
    • Check syntax
    • Verify logic
    • Test filters

Solutions

  1. Import Issues
    • Check settings
    • Verify format
    • Test import
  2. Format Problems
    • Update mapping
    • Check templates
    • Verify output
  3. Filter Errors
    • Check syntax
    • Test patterns
    • Verify logic

Advanced Features

Tag Analytics

Tag Automation

Tag Integration

API Reference

Tag Properties

interface Tag {
    name: string;
    count: number;
    type?: string;
}

Tag Options

interface TagOptions {
    prefix?: string;
    suffix?: string;
    transform?: (tag: string) => string;
    filter?: (tag: string) => boolean;
    mapping?: Record<string, string>;
}

Filter Options

interface TagFilterOptions {
    tags: string[];
    logic: 'AND' | 'OR';
    exclude: string[];
    patterns: string[];
}

Examples

Basic Tag Import

---
title: My Bookmark
tags:
  - work
  - research
  - to_read
---

Tag Filtering

// AND Logic
const andFilter = 'work+research';

// OR Logic
const orFilter = 'work|research';

// Complex Filter
const complexFilter = '(work|personal)+research';

Tag Mapping

const tagMapping = {
    'to read': 'status/to_read',
    'in progress': 'status/in_progress',
    'done': 'status/done'
};

Tag Templates


## Tags

- [[]]