Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: extension library #935

Conversation

dustinwloring1988
Copy link
Collaborator

@dustinwloring1988 dustinwloring1988 commented Dec 29, 2024

WIP - Bolt Extension Library (https://github.com/dustinwloring1988/extension-library)
WIP - Templates (https://github.com/bolt-starter-templates)

Demo

URL: https://www.useme.cc/

Goal

To enhance the user experience and community involvement

Why This Matters

Currently, the UI can feel overwhelming with providers, models, and options that might not be relevant to every user. This new library aims to streamline the interface by consolidating providers, models, prompts, and starter templates into one centralized, easy-to-navigate resource.

Key Features

  • User-Friendly Setup: For prompts, users will be able to paste a link in the settings, which will automatically download and place the JSON file in the right spot.
  • Starter Templates: These will initially be handled as Git clones for a straightforward implementation.

What’s Next?

Starting with the prompts and will expand the library as the foundation is built.

Short.mp4

@dustinwloring1988 dustinwloring1988 added WIP Work In Progress feedback-wanted Feedback is wanted labels Dec 29, 2024
@dustinwloring1988 dustinwloring1988 changed the title feat: Extension Library feat: extension library Dec 29, 2024
@dustinwloring1988 dustinwloring1988 added this to the v0.0.5 milestone Dec 29, 2024
@dustinwloring1988
Copy link
Collaborator Author

dustinwloring1988 commented Dec 29, 2024

Prompts will be added first and then the use button will be changed to import.

  • you will add a json config to a folder in bolt maybe for each prompt then select it in the features tab?

The Providers tab will need a way to implement this in bolt.diy this is just placeholder now.

  • maybe this option?

The Features tab will need a way to implement this in bolt.diy this is just placeholder now.

  • would work like a plugin system?

@thecodacus
Copy link
Collaborator

thecodacus commented Dec 30, 2024

I think the marketplace should be a separate app, where people can sign in and post their own stuff (template/ prompt/ providers. etc... ) using a git url.
so the code will stay in their git repo and they just link it here, and based on the stars and forks we can rank them in the portal for others to use

@dustinwloring1988
Copy link
Collaborator Author

@thecodacus thanks for the feedback.

  • The marketplace is its own app and you can link any Starters template from any github url to it (just look in the mockData file).
  • I will work on adding the stars and forks as I love that idea.
  • For the logging in part do we want to login or should we have it so that the user adds there extension in the form of a PR and it will update the file that way?

@thecodacus
Copy link
Collaborator

thecodacus commented Dec 30, 2024

  • The marketplace is its own app and you can link any Starters template from any github url to it (just look in the mockData file).

Ohh I just noticed that, 👍

  • For the logging in part do we want to login or should we have it so that the user adds there extension in the form of a PR and it will update the file that way?

again PR will be a hurdle for the community, maybe integrate with supabase cloud service for logging.

Copy link
Collaborator

@mrsimpson mrsimpson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I generally do like the idea of such a library a lot, also that it's a separate repo and deployable. 👍

This PR to the main repo should contain more than just the ✅ in the readme: There should be a section in the docs which explains how to use and contribute to the library.

Speaking of contributions: We need to find a good balance of curated templates with a high quality and ease of contribution. Some aspects I thought about why some hurdles may in fact be beneficial:

  • We need to prevent malicious templates being published
  • Curated templates should update their base (such as dependencies)
  • A CICD pipeline in the library may provide features such as code and prompt analysis
  • Also, the library repo could ensure up-to-dateness by configuring dependabot/renovate config and basic template code validation (like building all templates).

All this could be added on-the-go of course and doesn't need to be there right from the beginning. However, As long as this is not automated, I'd prefer higher hurdles.

Just my 2¢

@dustinwloring1988
Copy link
Collaborator Author

@mrsimpson
Thanks for your response and yes I plan on more thank just the README line, I just wanted to get something started on here while I start building it out.
I just did Starters by doing a git clone for now also just to get something started. My next step was going to be getting prompts to be importable since this will require some work inside bolt.diy's codebase. After that I was going to take the WIP off and make the providers and features import each its own PR. so I'm not changing to many file in one PR.

@coleam00
Copy link
Collaborator

coleam00 commented Jan 10, 2025

@mrsimpson Thanks for your response and yes I plan on more thank just the README line, I just wanted to get something started on here while I start building it out. I just did Starters by doing a git clone for now also just to get something started. My next step was going to be getting prompts to be importable since this will require some work inside bolt.diy's codebase. After that I was going to take the WIP off and make the providers and features import each its own PR. so I'm not changing to many file in one PR.

Sounds like a plan @dustinwloring1988! Thanks for your feedback too @mrsimpson - I agree 100%.

Along with a doc page in this repo covering how to use this extension library, I think it would make sense to have a place explaining things on the site itself! Also calling out somewhere more explicitly that the gear icon in the top right is the place to set the bolt.diy URL since that's SUPER important to have set correctly for the user.

Fantastic work overall Dustin!

Copy link
Collaborator

@coleam00 coleam00 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just posted a comment in the conversation with my thoughts but this looks great Dustin! Nice work!

@dustinwloring1988
Copy link
Collaborator Author

Thank you all for your comments working on a new version with these changes then will start implementing the bolt.diy side one section at a time.

@thecodacus thecodacus removed this from the v0.0.6 milestone Jan 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feedback-wanted Feedback is wanted WIP Work In Progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants