The easiest way to develop Craft CMS websites.
The goal of
craftup is twofold:
Make it super easy to start your next Craft CMS project.
We do this by providing a single
craftup init command which sets up a project scaffold based on the Craft CMS starter template, with some improvements. It also sets up all of the configuration files required to run this new site in Docker, so that you don't need to install Apache, PHP and MySQL locally.
Make deployments painless.
If you haven't already set up continous integration for your project, deploying usually means copying files over via FTP, manually exporting your local database and then re-importing that data in the production database. We simplify that by providing the
craftup pull and
craftup push commands, which automate every step of this process.
As a bonus, having a single CLI command that performs the whole deployment makes setting up continous integration a lot easier!
Make sure you have a recent version of Node (8+) installed. If you plan to develop locally, you will also need to install Docker.
After making sure those dependencies are met, installing
craftup is as simple as running this command:
npm i -g craftup
Verify your install by running
Starting your project
Init a project
To start a new project, run:
craftup init <projectname>
This will create a new directory that contains a clean Craft CMS project.
Start local server
From there, you can start your local development server by changing into the newly created directory (
cd <projectname>) and running:
This might take a while the first time, since it needs to download the appropriate Docker images to run the project. Subsequent runs will be much, much faster.
Tools during development
Install a dependency
Use the built-in
composer command to install a composer package:
craftup composer craftcms/aws-s3
This is the same as running
composer require craftcms/aws-s3. It is run within the Docker container however, meaning that you don't need to have Composer installed on your machine.
Dump the database
During development you might want to export your database contents. You can do so from within the Craft dashboard, but also by running:
craftup dump [path]
If you don't specify a path, this will create a file called
database.sql in your root project directory.
Warning: this will overwrite any existing files with the same filename.
The default template contains these plugins pre-installed:
- Redactor - the rich text editor of choice in Craft
- AWS S3 - an easy way to store assets in the cloud
- SEO - a simple SEO plugin from Ethercreative
This project is in beta status. Our team has been using it internally for dozens of projects, but there's still a lot to do, especially for non-Mac users.
- Create and run new projects with
- Import and export database with
- Add FTP support for
- Add SSH support for
- Add support for Windows and Linux
Please do feel free to help out by submitting pull requests and opening issues.