The easiest way to develop Craft CMS websites.
Introduction
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!
Installation
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 craftup -v
.
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:
craftup start
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.
Default template
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
Project status
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.
Please do feel free to help out by submitting pull requests and opening issues.