Git Product home page Git Product logo

aetherinox / obsidian-gistr Goto Github PK

View Code? Open in Web Editor NEW
8.0 1.0 1.0 17.9 MB

Obsidian.md plugin which allows you to use your notes to embed, create, and update gists for Github and Opengist. Light & dark theme support, create / update public & private gists either manually or with autosave.

Home Page: https://aetherinox.github.io/obsidian-gistr/

License: MIT License

JavaScript 1.01% TypeScript 89.40% CSS 9.59%
gist gists obsidian obsidian-md obsidian-notes obsidian-plugin obsidianmd opengist obsidian-community obsidian-publish

obsidian-gistr's Introduction

Salute

obsidian-gistr's People

Contributors

aetherinox avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

obsidian-gistr's Issues

Roadmap: Ability to Get & Save gists from Obsidian

Summary

Give users the ability to get and save Github gists directly from Obsidian

  • Implement Github API Token configuration
  • Add right-click Save Gist menu item
  • (Autosave) Allow updating gists after creation
  • Support public gists
  • Support private gists

Roadmap: Change codeblock syntax

Summary

Gist codeblock syntax to be modified and move away from an individual URL to a codeblock that supports property names and values.




Tasks

  • Add new regex pattern with matching groups
  • Revise methods to utilize new pattern
  • Allow for regular URL without properties / values



Example

```gistr
url:          https://path/to/username/gist_id
background:   https://path/to/image.png
theme:        dark
```

Roadmap: Github Repo Integration

Summary

Now that gists have been fully integrated; regular Github repos should be focused on now in order to develop a single plugin which takes care of all aspects of Github.




Tasks

  • Allow user to push their vault to a Github repo
    • Public
    • Private
  • Honor .gitignore file to exclude certain files from being pushed
  • Support specifying a commit message for each push
  • Support autosaving vault notes to repo
  • Option to support different branches

Roadmap: OpenGist Integration

Summary

OpenGist integration works well, however, the way gists are displayed could be better. Currently working with the OpenGist developer to make revisions to his HTML / CSS so that gists display in a similar fashion to Github.

At present, this plugin had to introduce custom edits to make gists for OpenGist look better. Topic areas are:

  • Header background of gist can cut off if the user has a gist which scrolls horizontally (applied plugin-side fix)
  • Applied custom CSS properties to ensure the gist snippet background color continues past the Obsidian frame for the gist.

While the plugin has fixes to address these, this should really be handled by OpenGIst to make for a more seamless integration.


Objectives

  • Move gist snippet details to footer of embedded gist (filename, view raw button, etc)
  • Migrate scrollbar to separate gist snippet and gist footer
  • Paint scrollbar with CSS
    • Scrollbar should be thinner, and customizable by user depending on the theme selected.

Roadmap: Create gists from plugin / obsidian

Summary

Review adding a new feature which would allow a user to create new gists from Obsidian itself.

  • Must utilize API token
  • Activated by menu / context
  • Specify both private and public gists before snippet uploaded

Roadmap: Dark Theme Support [Github]

Tasks

  • Add dark mode support for Github via plugin settings.
  • Add theme selector to plugin settings
  • Add scrollbar painting similar to #13

Details

While Github and OpenGist share the same structure, both handle styling completely different. Introduce a new set of functions to allow users to display their gists using a dark theme.

Roadmap: Support Github mermaid graphs

Summary

At present, Github gists now support Mermaid diagrams. Github provides a share button to the top right which includes a javascript file you must include on your page. However, even on a stock HTML page with no engine, Github mermaid graphs do not render. Unknown if Github plans to fix this, but it currently has issues with:

  • Firefox
  • Opera
  • Chrome



Proposal

An alternative way to render mermaid diagrams would be to utilize webviewer to render the diagram in the user's Obsidian note. It has been tested, and gives the user full control over viewing the diagram and navigating.

The downside is that webviewer treats the window as a full-blown browser, so they would be viewing the entire page for the gist. They would be unable to edit the diagram from their Obsidian note unless they physically sign into that browser window as they would on a normal browser.

This brings up the issue of also supporting cookies and storing them for the user.

Roadmap: Support mermaid graphs for Github

Summary

At present, Github gists now support Mermaid diagrams. Github provides a share button to the top right which includes a javascript file you must include on your page. However, even on a stock HTML page with no engine, Github mermaid graphs do not render. Unknown if Github plans to fix this, but it currently has issues with:

  • Firefox
  • Opera
  • Chrome



Proposal

An alternative way to render mermaid diagrams would be to utilize webviewer to render the diagram in the user's Obsidian note. It has been tested, and gives the user full control over viewing the diagram and navigating.

The downside is that webviewer treats the window as a full-blown browser, so they would be viewing the entire page for the gist. They would be unable to edit the diagram from their Obsidian note unless they physically sign into that browser window as they would on a normal browser.

This brings up the issue of also supporting cookies and storing them for the user.




Objectives

  • Integrate electron web browser
  • Support signin / cookies
  • Integrate new integrated browser into gistr
  • Add control options for user to modify how the window appears:
    • Zoom setting
    • Height setting

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.