question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

What is roam-toolkit's relationship with Roam's eventual API/plugin system?

See original GitHub issue

The goal of this issue is to collect thoughts about what’ll happen to roam-toolkit once Roam’s API/plugin system is released.

roam-toolkit’s current role

Value proposition

Currently, contributing to roam-toolkit rather than making your own extension is beneficial because:

Easier to build the tool

Infrastructure such as typing, modules, hot reloading, and reusable code make it easier to build more complex plugins, compared to hacking with vanilla js in a userscript.

Easier to reach audience

Tool makers can access the existing/future users of roam-toolkit, which also helps them get more feedback about their idea.

Don’t have to deploy the tool

Tool makers don’t have to set up and maintain their own extension in browser app stores.

Barriers to contribution

Tool makers may not contribute to roam-toolkit to avoid the overhead of integrating with the codebase, and going through the PR/contribution process. Example: (https://github.com/roam-unofficial/roam-toolkit/issues/91)

As roam-toolkit accumulates more features, supporting old features plus reviewing new features will be harder to keep up, unless roam-toolkit recruits more maintainers.

Relationship with Roam’s API/plugin system?

I don’t really know what the plan for Roam’s plugin system is, but it’d be ideal if we could focus on complementary functionality.

I’m guessing they’ll eventually have:

  • APIs for reading/writing the database (doesn’t conflict)
  • A marketplace for distributing plugins (doesn’t conflict)
  • APIs for implementing user facing features (kinda conflicts)

Potential futures for roam-toolkit

SDK/Library

Some helpers, and testing/development infrastructure might still be useful after Roam’s API/plugin system is released. roam-toolkit could become a library for tool makers to reuse, or a template that tool makers clone when developing their tool.

Deprecate the project, and salvage the features themselves

Maybe Roam will release an SDK/API that obsoletes roam-toolkit’s core functionality. In that case, we’d probably just migrate the features to Roam’s plugin instead, and celebrate the value roam-toolkit gave up until that point.

In either case, it’d be ideal if the roam-toolkit -> roam-toolkit setting interface was close to Roam’s eventual plugin interface.

Other thoughts

If we see roam-toolkit as a temporary solution for the lack of Roam plugin system + SDK, then we can probably afford to be less picky when accepting contributions, as long it doesn’t touch reusable helpers and break other features. It’s role would be to just help people prototype plugin ideas, until the real plugin system arrives.

If we see roam-toolkit as having a role, then it makes sense to prioritize more of the infrastructure/meta features, and keep PRs high quality.

Issue Analytics

  • State:open
  • Created 3 years ago
  • Reactions:2
  • Comments:12 (8 by maintainers)

github_iconTop GitHub Comments

2reactions
TDHTTTTcommented, Sep 8, 2020

I tried that actually. I failed at pasting it in sweat_smile - it causes code block to stop render properly and so roam does not even try to execute it. Also it’s a few hundred KB of text and roam takes it poorly when you try to paste that into single block =\

@Stvad 😄 Maybe instead of directly pasting, importing from outside like @roamhacker did in roam42 could help?

var s = document.createElement('script')
  s.type = "text/javascript"
  s.src =  "https://roam42.glitch.me/main.js"
  s.async = true
1reaction
Stvadcommented, Nov 29, 2020

fyi uploaded poc for running on roam/js in #164

Read more comments on GitHub >

github_iconTop Results From Across the Web

The Ultimate Roam Tool Kit - Bernard-Joseph Burch
The Roam Toolkit browser extension is designed to improve your experience of using Roam Research.
Read more >
Athens Research (YC W21) – Open-Source Roam Research
Roam Research is a notetaking application, and what they really got right was the "bidirectional link." The problem with notetaking is that we ......
Read more >
anJ - River Thames Conditions - Environment Agency - GOV.UK
Ehrenfelder genossenschaft, Ultimate r31233, Tatuagens significativas masculinas, Is the power of love lyrics, Motorcycle gearing system, Tribal seeds in ...
Read more >
XenApp and XenDesktop 7.15 LTSR
If Citrix Provisioning is not part of your deployment, you do not need to install or update it. © 1999‒2022 Citrix Systems, Inc....
Read more >
Eve Online Tristan Pvp Fit
Tristan pvp fit with dual shield-armor repair, afterburner and energy neutralizers. a solo pvp roam i had in eve online in my alpha...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found