swiff
v1.5.10
Published
Swiff saves you time with common SSH tasks during the development of websites/apps
Downloads
91
Readme
Swiff
Swiff saves you time with common SSH tasks during the development of websites/apps
🚀 Folder push and pull Keep folders in sync between servers
💫 Database push and pull Manage the database between servers (auto backup)
🎩 Composer file push and pull Move composer files between servers (auto backup)
💻 Remote terminal connection Launch a SSH session directly into the remote site/app folder
Getting started
Install Swiff globally with npm:
npm install --global swiff
Run
swiff
within a project folder to start the task interface
Run swiff --help
for a list of flags to run a specific task
Additional features
- Custom SSH identity: Swiff will attempt to use your identity located at:
/Users/[currentUser]/.ssh/id_rsa
You can specify a custom SSH key path in your .env file with:SWIFF_CUSTOM_KEY="/Users/[your-user]/.ssh/[key-filename]"
- Gzipped backups: Your files and database get backed up and gzipped whenever they change
- Disable specific tasks: Specify the tasks to disable with a config setting
Requirements
Swiff requires MySQL to use the database features.
We recommend using MariaDB, an enhanced, drop-in replacement for MySQL.
brew install [email protected]
(latest as of April 2019)
For the Database & Composer tasks, a PEM format SSH key is required Read about how to create and add a new SSH key
Running Windows or Linux? Swiff has been tested on macOS so issues are likely on other operating systems
Technology
- Node.js - A JavaScript runtime built on Chrome's V8 JavaScript engine
- Ink 2 - React for interactive command-line apps
- Babel - JavaScript transpiling
- Prettier - Code cleaning
Credits
Sounds by Emoji Sounds Created by @benrogerson and Sam Stevens
Swiff has been agency battletested by Simple who specialise in Craft CMS websites