[idea] interactive build creation / template builds
Opened this issue · 5 comments
creating new builds with vite has this nice feature where you select from common frameworks. test frameworks and if you want a TypeScript project. I think this would be a really cool feature to have.
These templates would have to build on some common Scala use-cases.
Some common template ideas:
Web
- Http4s
- Cask
- Tapir (w/o backend?)
- Smithy4s
- ZIO-http
Frontend
- Slinky
- Tyrian
- Laminar
Scala-native
- No idea
Fullstack
- Maybe too many opinions here
This kind of thing would be an adoption booster as it would get people into coding much faster. We could reuse sbt g8 templates and import the sbt builds, but I don't think this would provide a good experience. Rather we could set up some common interface for adding a template. The issue with keeping the templates in bleep is that the maintenance burden is on bleep maintainers. I think identifying the most commonly used project structures and adding those would be important.
Personally I think the benefits would outweigh the costs on this one if adoption is a long term goal.
this would be a very good feature. some things are in place for this already with bleep build new
, where you can specify wanted platforms and scala versions, and it'll generate a (cross) build for you. it wouldn't take too much to support adding a bunch of dependencies on demand, and some very simple code fragments
There's already this for templates (maybe even interactive).
https://www.foundweekends.org/giter8/
Bleep could have a built-in repository of blessed templates for common setups (while also allowing for arbitrary ones).
using g8 we could fork already established sbt templates and rewrite them to bleep and give them our "blessing", similar to the sbt-plugins.
Or just create g8 templates designed for Bleep from the start...
Or just create g8 templates designed for Bleep from the start...
Sure, if that is less work :)