swiff-4 v4.0.4
Swiff 2024
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-4
Run
swiff-4
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
This plugin requires an LTS Node version (v16.0.0+).
filename: swiff.config.js
add to root of your application.
/**
* Swiff Project Configuration
* Head to 'https://github.com/simple-integrated-marketing/swiff' for further information.
*/
// Remote SSH server details
export default {
// set Default Environment staging, production, etc !make sure server config consits with environment name
environment: "staging",
server: {
staging: {
// The SSH login username
user: "",
// The IP/hostname of the remote server
// host: '100.100.100.100',
host: "",
// The working directory of the remote app folder
// appPath: '/srv/users/[user]/apps/[app]',
appPath: "",
// The SSH port to connect on (22 is the SSH default)
port: 22,
},
},
local: {
ddev: true,
},
// Folders to upload and sync with the server
pushFolders: [
// 'templates',
// 'config',
// 'public/assets/build'
],
// Folders to pull new or changed files from
pullFolders: [
// 'public/assets/volumes'
],
disabled: ["databasePush"],
};
Works with mysql database and ddev ( requires local.ddev = true)
Technology
- Node.js - A JavaScript runtime built on Chrome's V8 JavaScript engine
- Ink 2 - React for interactive command-line apps
- Babel - JavaScript transpiling
- Rollup - JavaScript module bundler
- Prettier - Code cleaning
Credits
Sounds by Emoji Sounds Created by @benrogerson and Sam Stevens Updated & Maintained by @suprim12
Swiff has been agency battletested by Simple who specialise in Craft CMS websites
9 days ago
10 days ago
9 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
10 days ago
13 days ago
13 days ago
13 days ago
13 days ago
13 days ago
13 days ago
14 days ago
15 days ago
15 days ago
16 days ago
16 days ago
16 days ago
16 days ago
16 days ago
16 days ago
16 days ago
16 days ago
16 days ago
16 days ago
16 days ago
16 days ago