create-eleva-app
Version:
Create Eleva apps with zero configuration
112 lines (85 loc) ⢠3.34 kB
Markdown
# Create Eleva App
<p align="center">
<img src="https://raw.githubusercontent.com/TarekRaafat/eleva/master/docs/imgs/Eleva%20Logo.png" alt="Eleva Logo" width="200">
</p>
<p align="center">
<strong>Set up a modern Eleva.js app by running one command.</strong>
</p>
<p align="center">
<a href="https://github.com/TarekRaafat/create-eleva-app/blob/main/LICENSE">
<img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="License">
</a>
<a href="https://www.npmjs.com/package/create-eleva-app">
<img src="https://img.shields.io/npm/v/create-eleva-app.svg?style=flat" alt="npm version">
</a>
<a href="https://nodejs.org/en/">
<img src="https://img.shields.io/badge/node-%3E%3D14.0.0-brightgreen.svg" alt="Node.js Version">
</a>
</p>
## Overview
Create Eleva App is an officially supported way to create Eleva.js applications. It offers a smooth development experience by providing a professional project structure, development server, modern Vite-based build system, and more.
## Quick Start
```bash
# Using npx (recommended)
npx create-eleva-app my-app
# Using npm
npm init eleva-app my-app
# Using yarn
yarn create eleva-app my-app
# Using pnpm
pnpm create eleva-app my-app
```
Then follow the prompts to configure your project.
## Features
- š **Instant Setup**: Go from zero to application in seconds
- š **Interactive Experience**: Helpful prompts guide you through setup
- š§© **Optional Router**: Easily add Eleva Router to your project
- š ļø **Modern Build System**: Powered by Vite for lightning-fast development
- šØ **Elegant Structure**: Professional project organization
- š **Best Practices**: Follows Eleva.js recommended patterns
- š§ **Fully Configurable**: Customize to your project needs
## Commands
```bash
# Create a new project with default settings
npx create-eleva-app my-app
# Skip prompts and use defaults
npx create-eleva-app my-app --yes
# Create a project with router
npx create-eleva-app my-app --router
# Create a project without router
npx create-eleva-app my-app --no-router
# Create a TypeScript project
npx create-eleva-app my-app --typescript
```
## Project Structure
The generated project will have the following structure:
```
my-app/
āāā public/ # Static assets
ā āāā favicon.ico
ā āāā index.html
āāā src/
ā āāā assets/ # Project assets
ā ā āāā styles/
ā ā ā āāā main.css
ā ā āāā images/
ā ā āāā logo.svg
ā āāā components/ # Reusable components
ā ā āāā App.js
ā ā āāā HelloWorld.js
ā āāā routes/ # Router-specific files (if enabled)
ā ā āāā Home.js
ā ā āāā About.js
ā ā āāā NotFound.js
ā āāā routes.js # Route definitions (if router enabled)
ā āāā main.js # Application entry point
āāā .gitignore
āāā package.json
āāā README.md
āāā vite.config.js
```
## System Requirements
- Node.js 14.0.0 or later
- npm 6.0.0 or later, yarn 1.22.0 or later, or pnpm 6.0.0 or later
## License
Create Eleva App is open-source software licensed under the [MIT license](https://github.com/TarekRaafat/create-eleva-app/blob/main/LICENSE).