Bonjorno

unlisted

by Bonjorno Team

Logseq-style daily notes view with chronological scrolling. View and edit your daily notes in a single, continuous timeline from newest to oldest.

View on GitHub

Bonjorno - Daily Notes for Obsidian

Bonjorno Banner Version License

A Logseq-style daily notes plugin for Obsidian that displays all your daily notes in a single, continuous scrollable timeline from newest to oldest.

✨ Features

  • šŸ“… Chronological Timeline View - See all your daily notes in one place, ordered from newest to oldest
  • āœļø Native Obsidian Editing - Full Live Preview mode with native markdown editing experience
  • šŸŽØ Live Preview - Edit markdown with instant formatting - the line you're editing shows syntax, everything else is formatted
  • šŸš€ Performance Optimized - Lazy loading handles years of daily notes smoothly
  • šŸ”„ Auto-Creation - Today's note is automatically created when you open the view
  • šŸ“ Flexible Storage - Configure where your daily notes are stored
  • šŸŽØ Theme Compatible - Respects your Obsidian theme (light/dark mode)
  • šŸ’¾ Auto-Save - Changes are automatically saved as you type
  • šŸ“± Mobile Support - Works on both desktop and mobile
  • ⚔ Full Obsidian Features - Autocomplete, syntax highlighting, and all editor extensions work

šŸ“¦ Installation

From Obsidian Community Plugins (Coming Soon)

  1. Open Obsidian Settings
  2. Navigate to Community Plugins
  3. Search for "Bonjorno"
  4. Click Install
  5. Enable the plugin

Manual Installation

  1. Download the latest release from the Releases page
  2. Extract the files into your vault's .obsidian/plugins/bonjorno/ directory
  3. Reload Obsidian
  4. Enable "Bonjorno" in Settings → Community Plugins

For Developers

# Clone the repository
git clone https://github.com/krak7602/bonjorno.git

# Navigate to your vault's plugins directory
cd /path/to/your/vault/.obsidian/plugins/

# Move the bonjorno folder there
mv /path/to/bonjorno ./

# Install dependencies
cd bonjorno
pnpm install

# Start development build (auto-rebuilds on changes)
pnpm run dev

šŸš€ Usage

Opening the Daily Notes View

  1. Click the calendar icon in the left sidebar ribbon
  2. Or use the command palette: Press Ctrl/Cmd + P and type "Open Daily Notes"

Creating Your First Note

When you open the view for the first time:

  • Today's note will be automatically created if it doesn't exist
  • Start typing in the text area to add content
  • Your changes are automatically saved after you stop typing (default: 500ms delay)

Navigating Your Notes

  • Scroll down to see older notes
  • Additional notes are automatically loaded as you scroll
  • Each date section shows the full formatted date (e.g., "January 15th, 2026")
  • Today's note has a special "Today" badge

File Organization

Daily notes are stored as individual markdown files with the naming format:

YYYY-MM-DD.md

Example:

daily-notes/
ā”œā”€ā”€ 2026-01-15.md
ā”œā”€ā”€ 2026-01-14.md
ā”œā”€ā”€ 2026-01-13.md
└── ...

Manual File Management

You can:

  • āœ… Manually create files in the daily notes directory
  • āœ… Edit files outside the plugin view
  • āœ… Delete files you no longer need
  • āœ… Link to daily notes from other notes using standard Obsidian links

The plugin automatically detects changes and updates the view accordingly.

āš™ļø Settings

Access settings via: Settings → Bonjorno

Daily Notes Directory

  • Default: daily-notes
  • Description: Path to the folder where daily notes will be stored (relative to vault root)
  • The folder will be created automatically if it doesn't exist

Initial Days to Load

  • Default: 30 days
  • Range: 7-90 days
  • Description: Number of daily notes to load when opening the view

Load More Count

  • Default: 20 days
  • Range: 5-50 days
  • Description: Number of additional notes to load when scrolling to older entries

Date Format

  • Default: MMMM Do, YYYY (e.g., "January 15th, 2026")
  • Description: Format for displaying date headers (uses moment.js format)

Enable Auto-Save

  • Default: Enabled
  • Description: Automatically save changes after you stop typing

Auto-Save Delay

  • Default: 500ms
  • Range: 100-2000ms
  • Description: Time to wait after you stop typing before auto-saving

šŸŽÆ Use Cases

Daily Journaling

Perfect for:

  • Morning pages
  • Daily reflections
  • Gratitude journals
  • Habit tracking
  • Daily logs

Project Notes

Great for:

  • Daily standup notes
  • Work logs
  • Progress tracking
  • Meeting notes organized by date

Personal Knowledge Management

Ideal for:

  • Fleeting notes (Zettelkasten)
  • Daily ideas capture
  • Learning logs
  • Reading notes

šŸ”— Integration with Obsidian

Linking to Daily Notes

From any note, you can link to a daily note:

See [[2026-01-15]] for more details

Backlinks

Daily notes appear in Obsidian's backlinks panel, making it easy to:

  • See which notes reference a specific day
  • Build connections between daily notes and other notes
  • Navigate your knowledge graph

Tags

Use tags in your daily notes:

# 2026-01-15

Today I learned about #obsidian plugins!

- Built my first plugin #development
- Need to review #todo

šŸ› ļø Development

Building

# Development build (watches for changes)
pnpm run dev

# Production build
pnpm run build

Project Structure

bonjorno/
ā”œā”€ā”€ src/
│   ā”œā”€ā”€ main.ts              # Main plugin class
│   ā”œā”€ā”€ DailyNotesView.ts    # Custom view implementation
│   ā”œā”€ā”€ DailyNotesManager.ts # File management
│   ā”œā”€ā”€ DateService.ts       # Date utilities
│   ā”œā”€ā”€ SettingsTab.ts       # Settings UI
│   ā”œā”€ā”€ types.ts             # TypeScript interfaces
│   └── constants.ts         # Constants
ā”œā”€ā”€ styles.css               # Plugin styles
ā”œā”€ā”€ manifest.json            # Plugin metadata
ā”œā”€ā”€ package.json             # Dependencies
└── README.md                # This file

Technologies Used

  • TypeScript - Type-safe development
  • Obsidian API - Plugin framework
  • Embedded Editors - Uses Obsidian's internal editor system for native Live Preview
  • CodeMirror 6 - Obsidian's editor engine (accessed via embedRegistry)
  • pnpm - Fast, efficient package manager
  • esbuild - Fast bundling

šŸ”§ Technical Details

Native Editor Integration

Bonjorno uses Obsidian's internal embedRegistry to create native markdown editors for each date section. This provides:

  • True Live Preview: The same editing experience as normal Obsidian notes
  • Full Feature Support: All editor extensions, plugins, and commands work
  • Automatic Formatting: Markdown is rendered while you type, with syntax visible only on the current line

This approach is based on community patterns from plugins like Obsidian Kanban and uses Obsidian's WidgetEditorView system.

Performance Considerations

  • Lazy Loading: Only visible editors are created
  • Auto-Save: Changes are saved 500ms after you stop typing
  • Memory Management: Editors are properly cleaned up when scrolled out of view
  • File Syncing: Each editor is connected directly to its markdown file

šŸ¤ Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

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

šŸ“ Roadmap

  • Native Obsidian Live Preview editing
  • Full markdown rendering with syntax highlighting
  • Search within daily notes
  • Date picker for quick navigation
  • Custom templates for new notes
  • Calendar view integration
  • Export multiple days
  • Weekly/Monthly summaries
  • Hierarchical folder structure option
  • Editor command palette integration

šŸ› Known Issues

  • None currently reported

šŸ“„ License

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

šŸ’– Support

If you find this plugin helpful:

  • ⭐ Star the repository
  • šŸ› Report issues
  • šŸ’” Suggest features
  • šŸ¤ Contribute code

šŸ™ Acknowledgments

  • Inspired by Logseq's daily notes interface
  • Built with the Obsidian Sample Plugin
  • Thanks to the Obsidian community for their support and feedback

šŸ“§ Contact


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.