A CLI tool for rapidly scaffolding websites using Flexiwind or UnoUI.
Flexi CLI is a command-line interface tool designed to help developers quickly set up and configure web applications. It supports multiple JavaScript frameworks and provides theming capabilities out of the box.
- 🚀 Multiple Framework Support: Works with Astro, Vue, Svelte, and Vite
- 🎨 CSS Framework Integration: Choose between Tailwind CSS and UnoCSS
- 🧩 Starter Templates: Quickly bootstrap projects with pre-configured templates
- 🌈 Theming Support: Built-in themes (Air, Earth, Fire, Water) for rapid styling
- 🔧 Automatic Configuration: Sets up all necessary configuration files
- 📦 Icon Library Integration: Includes popular icon libraries
You can use Flexi CLI without installing it by using npx:
npx flexi-cli@latest init
Or install it globally:
npm install -g flexi-cli
The primary command is init
, which can be used to create a new project or configure an existing one:
npx flexi-cli@latest init
This interactive command will guide you through the setup process, asking for your preferences regarding:
- Project framework (Astro, Vue, Svelte, Vite)
- CSS framework (Tailwind or UnoCSS)
- Theming options
- Icon libraries
You can also specify options directly in the command:
npx flexi-cli@latest init --styles tailwind --new vite-ts
--styles <framework>
: CSS framework to use (tailwind|unocss)--starter <starter>
: Starter template to use (astro|vite|vue|svelte)--new <framework>
: Target framework for the project (astro|vite|vite-ts|vue|vue-ts|svelte|svelte-ts)--js-path <path>
: Path to the JavaScript/TS entry file (for Vite Vanilla and Astro)--css-path <path>
: Path to the CSS file (for Vite Vanilla and Astro)
The init
command is the primary entry point for Flexi CLI. When you run npx flexi-cli@latest init
, the following process occurs:
- Project Detection: The CLI checks if you're in an existing project or need to create a new one
- Framework Selection: If no project exists, you'll be prompted to select a framework
- CSS Framework Selection: Choose between Tailwind CSS and UnoCSS
- Theming Options: Select from built-in themes or use the default
- Configuration Generation: The CLI generates all necessary configuration files
- Dependency Installation: Required dependencies are automatically installed
If you prefer to use a pre-configured starter template, the CLI offers several options:
npx flexi-cli@latest init --starter astro
This will clone a starter template with the selected framework and CSS configuration, saving you time on initial setup.
To create a brand new project with specific settings:
npx flexi-cli@latest init --new vue-ts --styles tailwind
This command will:
- Create a new Vue.js project with TypeScript
- Configure Tailwind CSS
- Set up the necessary file structure
- Install all required dependencies
npx flexi-cli@latest init --new vue --styles tailwind
npx flexi-cli@latest init --new astro --styles unocss
npx flexi-cli@latest init --starter astro
Flexi CLI comes with several built-in themes:
- Air
- Earth
- Fire
- Water
- Default Flexiwind
Contributions are welcome! Please feel free to submit a Pull Request.
MIT
Johnkat MJ
Built with ❤️ by the Johnkat MJ