A custom CLI built for the purpose of installing and managing SolidJS apps and projects. The goal of the CLI is to provide a useful and powerful utility to installing any dependencies, searching the Solid ecosystem etc.
- Templates
- From Degit
- Docs
- Primitives
- Add/remove/update primitives
- Search list of primitives
- Integrations
- Auth.js
- Tailwind
- PandaCSS
- Cypress
- PostCSS
- UnoCSS
- Vanilla Extract
- Vitest
- Tauri
- Playwright
- Utilities
- eslint-plugin-solid
- solid-devtools
- Misc
- Launch new Stackblitz
- Launch new CodeSandBox
- SolidStart
- New route
- New data file
- Enable Adapters
- Enable SSR/CSR/SSG mode
The CLI will use solid
as the initialiation keyword. The CLI commands will then cascade based on groupings determined baed on what the action does defined by higher level actions. The actions will be:
version
: Displays a changelog of recent Solid versionsstart
: Specific command for Start versions
docs
: List aman
-like page for versioned docs or link out to the docsprimitives
: Potential integration with Solid Primitivesadd
,remove
: Used for adding and installing integrations/packages ie.solid add tailwind
config
: For enabling a certain features ie.solid config vite _____
start
: Special keyword for SolidStart commandsmode
: Changes the Start serving mode (ssr/csr/ssg)solid mode ssr
route
: Creates a new route ie.solid start route login
new
: Opens your browser to a new template via CSB/SB ie.solid new bare --stackblitz
opens https://solid.new/bareecosystem
add
: Starts the process of submitting your current project to our ecosystem listing (Solidex) ie.solid ecosystem publish
search
: Initializes an ecosystem search resultsolid ecosystem search auth
We will need to decide what framework and language we will use to develop this utility.
Solid Ink
- Needs to be maintained but expands our ecosystemInk
- React-based and popularClack
- Used by AstroTiny Bin
- By Fabio!Prompts
- Popular and well maintained
TUI-RS
- Great for using SWC
Please feel free to contribute to this repo by expanding on this design document. Once we lock a general design a choice of technology will be decided.