Custom Frames

by Ellpeck
5
4
3
2
1
Score: 73/100

Description

Category: Customization & UI

The Custom Frames plugin is a powerful tool that allows you to turn web apps into customizable panes within Obsidian. With this plugin, you can add frames from popular sites like Google Keep, Todoist, and more, and customize their appearance with custom CSS and settings. You can also use the plugin's Markdown mode to display your custom frames in your notes, complete with options for height, style, and URL suffix. Additionally, the plugin includes a range of presets for popular services, making it easy to get started. Whether you're looking to streamline your workflow or simply add some extra functionality to Obsidian, Custom Frames is definitely worth checking out.

Reviews

No reviews yet.

Stats

806
stars
231,324
downloads
44
forks
1,509
days
475
days
475
days
13
total PRs
2
open PRs
1
closed PRs
10
merged PRs
145
total issues
47
open issues
98
closed issues
7
commits

Latest Version

a year ago

Changelog

Additions

  • Added Readwise Daily View preset (tyler-dot-earth)

Improvements

  • Sort frame templates by display name in the dropdown
  • Share sessions with the new web viewer core plugin. Note that this will cause all existing sessions to be invalidated (ie websites to be logged out), but will allow for opening external frame links within Obsidian.
  • Display Discord link in the settings tab

Fixes

  • Fixed forward and backward navigation buttons being flipped

README file from

Github

Obsidian Custom Frames

An Obsidian plugin that turns web apps into panes using iframes with custom styling. Also comes with presets for Google Keep, Todoist and more.

A screenshot of the plugin in action, where you can see Google Keep attached as a narrow side pane on the right

A screenshot of the plugin in action, where you can see Google Calendar opened in the center, and the mouse hovering over the corresponding ribbon button

A screenshot of the plugin's settings

🤔 Usage

To use this plugin, simply go into its settings and add a new frame, either from a preset shipped with the plugin, or a custom one that you can edit yourself.

🪟 Pane Mode

To open a Custom Frame as a pane, you can use the "Custom Frames: Open" command.

There are also plenty of settings to customize your frame further, including adding custom CSS to the site, adding a ribbon icon, displaying the frame in the center of the editor, and more.

🗒️ Markdown Mode

You can also display your custom frames in your Markdown documents. Custom Frames adds a special code block syntax that transforms the code block into a custom frame in Live Preview and Reading mode. Your code block should look like this:

```custom-frames
frame: YOUR FRAME'S NAME
```

Optionally, you can also pass custom style settings to the embed, which allows you to change things like the embed's height, as well as an additional suffix that will be appended to the frame's regular URL, which can be useful for things like displaying a specific note in Google Keep.

Here's an example using the Google Keep preset:

```custom-frames
frame: Google Keep
style: height: 1000px;
urlSuffix: #reminders
```

📱 On Obsidian Mobile

Unfortunately, Obsidian Mobile does not run on Electron, which is what allows iframes and webviews to be displayed with very few restrictions related to cookies, cross-origin resource sharing, and so on. This means that a lot of sites won't work there, especially ones that you have to log in to. However, when you create a frame, you can toggle the "Disable on Mobile" option to hide a Desktop-only frame in Obsidian mobile.

Need help using the plugin? Feel free to join the Discord server!

Join the Discord server

📦 Presets

By default, Custom Frames comes with a few presets that allow you to get new panes for popular sites up and running quickly.

If you create a frame that you think other people would like, don't hesitate to create a pull request with a new preset.

🛣️ Roadmap

  • Allow creating links outside of Obsidian that open in a custom frame
  • Add more options to Markdown mode, like allowing for back and forward buttons
  • Possibly allow extracting selected text into a note similar to how the Note composer plugin works, and potentially allow using a note template that includes the link to the site extracted from
  • Allow setting a custom icon for each pane
  • Allow displaying custom frames in Markdown code blocks
  • Add the ability to add a ribbon button for a frame that opens it in the main view
  • Possibly allow executing custom JavaScript in iframes (though security implications still need to be explored)
  • Add a global setting that causes popups to be opened in a new Obsidian window rather than the default browser (See the web viewer core plugin)

⚠️ Known Issues

There are a few known issues with Custom Frames. If you encounter any of these, please don't report it on the issue tracker.

  • Popups and new tabs are opened in the default browser rather than the custom frame by default, which can cause issues logging in to websites that use external logins. To circumvent this issue, enable the web viewer core plugin, which shares its session information with Custom Frames, to open popups within Obsidian.
  • Some links refuse to open from within custom frames, especially before Obsidian 1.3.7. You can find more info in this issue.

🙏 Acknowledgements

Thanks to lishid for their help with making iframes work in Obsidian for a purpose like this. Also thanks to them for motivating me to turn Obsidian Keep into a more versatile plugin, which is how Custom Frames was born.

If you like this plugin and want to support its development, you can do so through my website by clicking this fancy image!

Support me (if you want), via Patreon, Ko-fi or GitHub Sponsors

Similar Plugins

info
• Similar plugins are suggested based on the common tags between the plugins.
Admonition
5 years ago by Jeremy Valentine
Adds admonition block-styled content to Obsidian.md
Base Tag Renderer
3 years ago by Darren Kuro
A lightweight obsidian plugin to render the basename of tags in preview mode.
Checkbox styling helper
2 years ago by JaewonE
Helps you styling checkboxes in preview mode.
Code Styler
3 years ago by Mayuran Visakan
A plugin for Obsidian.md for styling codeblocks and inline code
Contextual Typography
5 years ago by mgmeyers
Convert url to preview (iframe)
6 years ago by FHachez
Plugin for Obsidian.md to convert a selected URL to an iframe.
CSS Inserter
2 years ago by Erika Gozar
Inserts user-defined css snippets into the selected text.
css snippets
5 years ago by Daniel Brandenburg
Obsidian plugin for css snippets
Custom Attachment Location
5 years ago by RainCat1998
Customize attachment location with variables($filename, $data, etc) like typora.
Custom Classes
3 years ago by Lila Rest
A minimal Obsidian plugin that allows you to add your own HTML classes to chosen Markdown elements directly from your notes.
Custom new file name
2 years ago by homu-konamilk
Frontmatter to HTML Attributes
2 months ago by Tarek Saier
Makes YAML frontmatter available as data-* attributes in HTML, enabling metadata based CSS styling.
Hugo preview obsidian
3 years ago by fzdwx
:superhero: Hugo preview in obsidian
Markdown Tags
a year ago by John Smith III
Enhance your Markdown documents with custom tags. Use predefined or custom labels, customizable colors, and arrow indicators to visually track tasks and statuses.
Obsidian Stylist
3 years ago by ixth
Obsidian plugin that allows to add classes and styles on markdown blocks
Sheets Extended
3 years ago by NicoNekoru
Plugin that adds features to tables in obsidian including merging, vertical headers, and custom css
Source Mode Styling
3 months ago by Chris Howard
Obsidian plugin. Provides a customisable raw look in source mode using a monospace font to clearly differentiate from Live Preview.
Tailwind Snippet
2 years ago by Nicholas Wilcox
An Obsidian plugin that enables usage of Tailwind CSS.
Youtube Iframe Timestamps
2 years ago by Nils Leo
Obsidian plugin to embed YouTube videos with clickable timestamps. Take video notes seamlessly without leaving your vault.