No description
Find a file
2026-02-28 17:26:35 -07:00
__mocks__ less any 2025-11-10 12:41:52 -07:00
assets remove unused images 2025-09-30 16:29:04 -06:00
src stack the input below 2026-02-28 17:25:59 -07:00
.editorconfig first commit 2025-01-29 12:59:16 -07:00
.eslintignore first commit 2025-01-29 12:59:16 -07:00
.eslintrc first commit 2025-01-29 12:59:16 -07:00
.gitignore minifiy to dist 2025-05-05 18:14:22 -06:00
.npmrc first commit 2025-01-29 12:59:16 -07:00
AGENTS.md add from most recent seed project 2025-09-27 08:36:24 -06:00
esbuild.config.mjs add theme selector 2025-09-30 17:00:01 -06:00
file_list.txt independent pane streams 2025-12-04 17:58:24 -07:00
jest.config.js add tests for which view to show 2025-11-05 14:17:15 -07:00
LICENSE fix license ownership 2025-06-07 09:46:14 -06:00
main.ts custom dates for files 2026-02-28 16:31:15 -07:00
manifest.json v1.2.9 2026-02-28 17:26:35 -07:00
package-lock.json add tests for which view to show 2025-11-05 14:17:15 -07:00
package.json add tests for which view to show 2025-11-05 14:17:15 -07:00
README.md add updateStreamBarFromFile to plugin api 2025-10-10 22:26:36 -06:00
spec.md remove activestream; replace by reading dynamically 2025-12-06 18:05:28 -07:00
styles.css stack the input below 2026-02-28 17:25:59 -07:00
tsconfig.json vertical slice conversion 2025-09-27 09:23:10 -06:00
version-bump.mjs first commit 2025-01-29 12:59:16 -07:00
versions.json first commit 2025-01-29 12:59:16 -07:00

Streams

Create and manage multiple daily note streams

  • Replaces the Daily Note core plugin.

  • Inspired by the Periodic Notes and Calendar plugins.

assets/logo-transparent

Support

If you find this plugin helpful, please consider supporting its development:

GitHub Sponsors Buy Me a Coffee Venmo PayPal

Donation Options:

Your support helps maintain and improve this plugin! 🙏

Other Plugins

Check out my other Obsidian plugins:

Follow me on GitHub for updates.

Features

  • Multiple daily note streams.
  • Full calendar for each stream.
  • New view for missing notes.
  • Public API for other plugins to access stream data.

Benefits

  • Divide up messy Daily Notes.
  • Create a private stream for work.
  • Encrypt a single stream for added data security.
  • Quickly find and add notes.

Getting started

  • Add new stream in settings, "Daily Notes", pointing to where you store your daily notes.
  • Then create another stream for Work of School.
  • Use the navigation bar to select any stream.

Streams Widget

Streams Widget

Configure Streams

Configure Streams

Move content between streams

Move Content

Public API for Other Plugins

The Streams plugin provides a public API that other Obsidian plugins can use to access stream data and functionality.

Quick Start

// Get the Streams plugin instance
const streamsPlugin = this.app.plugins.getPlugin('streams') as StreamsPlugin;

if (streamsPlugin) {
    // Get all streams
    const streams = streamsPlugin.getStreams();
    
    // Get active stream
    const activeStream = streamsPlugin.getActiveStream();
    
    // Get stream for current file
    const activeFile = this.app.workspace.getActiveFile();
    if (activeFile) {
        const stream = streamsPlugin.getStreamForFile(activeFile.path);
    }
}

Available Methods

  • getStreams() - Get all configured streams
  • getStream(streamId) - Get a specific stream by ID
  • getActiveStream() - Get the currently active stream
  • getStreamsByFolder(folderPath) - Get streams matching a folder path
  • getStreamForFile(filePath) - Get the stream containing a file
  • getStreamInfo(streamId) - Get basic stream information for a specific stream
  • hasStream(streamId) - Check if a stream exists
  • getStreamCount() - Get total number of streams
  • getVersion() - Get plugin version info
  • getStreamsByIcon(icon) - Get streams with a specific icon
  • getRibbonStreams() - Get streams enabled for ribbon display
  • getCommandStreams() - Get streams with commands enabled
  • hasStreams() - Check if any streams are configured
  • updateStreamBarFromFile(filePath) - Update the stream bar to match an opened file

For detailed API documentation, see src/api/README.md.