mirror of
https://github.com/l0ng-ai/openidea.git
synced 2026-11-14 16:07:52 +00:00
File › New Project offers 38 generators grouped by language (Java, Spring Boot, Quarkus, Micronaut, Kotlin, Ktor, Scala, Python/Django/FastAPI/Flask, Node/Vite/Next.js/Nuxt/Angular/SvelteKit/Astro/NestJS/Express, Go, Rust, C/C++, Zig, .NET, PHP/Laravel/Symfony, Ruby/Rails, Dart/Flutter, Swift, Elixir/Phoenix, Haskell, static website, empty). Each is a declaration in generators/<id>.toml run by the new ide-scaffold crate: built-in templates, the framework's official CLI run non-interactively, or a project service zip (Spring Initializr, code.quarkus.io, Micronaut Launch) whose metadata becomes form fields. Projects are built in a staging directory and moved into place only on success. The dialog renders each form from its schema, flags missing toolchains with install hints and streams progress; created projects open trusted. New Project is also on the welcome screen and the title bar project menu. Closes #709
46 lines
792 B
TOML
46 lines
792 B
TOML
id = "spring-boot"
|
|
name = "Spring Boot"
|
|
group = "Java"
|
|
icon = "project-spring-boot"
|
|
order = 1
|
|
description = "A Spring Boot application from Spring Initializr."
|
|
|
|
[[fields]]
|
|
id = "server"
|
|
label = "Server URL:"
|
|
type = "text"
|
|
default = "https://start.spring.io"
|
|
|
|
[[fields]]
|
|
id = "jdk"
|
|
label = "JDK:"
|
|
type = "sdk"
|
|
sdk = "jdk"
|
|
|
|
[[fields]]
|
|
id = "group"
|
|
label = "Group:"
|
|
type = "text"
|
|
pattern = '^[A-Za-z_][\w]*(\.[A-Za-z_][\w]*)*$'
|
|
default = "com.example"
|
|
|
|
[[fields]]
|
|
id = "artifact"
|
|
label = "Artifact:"
|
|
type = "text"
|
|
pattern = '^[A-Za-z0-9_.-]+$'
|
|
default = "{{name|kebab}}"
|
|
|
|
[[fields]]
|
|
id = "package"
|
|
label = "Package:"
|
|
type = "text"
|
|
pattern = '^[A-Za-z_][\w]*(\.[A-Za-z_][\w]*)*$'
|
|
default = "{{group}}.{{artifact|ident}}"
|
|
|
|
[service]
|
|
provider = "spring-initializr"
|
|
|
|
[settings.java]
|
|
jdk = "{{jdk}}"
|