Installation
Get Soli MVC up and running on your machine in minutes. Follow these steps to bootstrap your new project.
1
Prerequisites
Node.js
v16 or higher (for Tailwind CSS)
node --version
npm
Package manager
npm --version
2
Install Soli CLI
Recommended Quick Install
curl -sSL https://raw.githubusercontent.com/solisoft/soli_lang/main/install.sh | sh
This detects your OS and architecture, downloads the latest release binary, and installs it to ~/.local/bin.
For system-wide installation:
curl -sSL https://raw.githubusercontent.com/solisoft/soli_lang/main/install.sh | sh -s -- --system
Via Cargo
cargo install solilang
From Source
# Clone the repository
git clone https://github.com/solisoft/soli_lang.git
cd soli_lang
# Build and install the soli CLI
cargo install --path .
# Verify installation
soli --version
3
Create Your Project
# Create a new Soli app
soli new my_app
This command creates a new project with everything you need:
- MVC directory structure (
app/controllers,app/views,app/models) - Tailwind CSS configuration and dependencies
- Home controller and welcome page
- Application layout with responsive design
- Helper functions for views
4
Start Development Server
cd my_app
soli serve . --dev
Your app is now running at http://localhost:5011
Hot Reload Enabled
The --dev flag enables hot reload. Edit any controller, middleware, or view file
and refresh your browser to see changes instantly. No restart needed!
Project Structure
Understanding the layout of a Soli MVC application.
my_app/
├── app/
│ ├── controllers/ # Request handlers
│ │ └── home_controller.sl
│ ├── helpers/ # View helpers
│ │ └── application_helper.sl
│ ├── models/ # Data models
│ └── views/ # Templates
│ ├── home/
│ │ └── index.html.slv
│ └── layouts/
│ └── application.html.slv
├── config/
│ └── routes.sl # Route definitions
├── db/
│ └── migrations/ # Database migrations
├── public/ # Static files
│ ├── css/
│ │ ├── app.css # Source (Tailwind directives)
│ │ └── output.css # Compiled CSS
│ ├── js/
│ └── images/
├── tests/ # Test files
├── .env # Environment variables
├── package.json # Node.js dependencies
└── tailwind.config.js # Tailwind configuration
Production Deployment
# Start production server
soli serve . --port 5011
# Or run as a daemon (background process)
soli serve . -d
Troubleshooting
- If changes don't appear, check the terminal for errors
- Make sure port 5011 isn't in use by another process