All Projects → Ether-CLI → Ether

Ether-CLI / Ether

Licence: MIT license
A Command-Line Interface for the Swift Package Manager

Programming Languages

swift
15916 projects
shell
77523 projects

Projects that are alternatives of or similar to Ether

vintage
[UNMAINTED] command-line tool to check for outdated Swift Package Manager dependencies
Stars: ✭ 33 (-61.63%)
Mutual labels:  homebrew, swift-package-manager, command-line-tool
Match3Kit
Library for simple Match3 games.
Stars: ✭ 38 (-55.81%)
Mutual labels:  swift-package-manager, spm
SwiftDown
📦 A themable markdown editor component for your SwiftUI apps.
Stars: ✭ 203 (+136.05%)
Mutual labels:  swift-package-manager, spm
SwiftGradients
Useful extensions for UIViews and CALayer classes to add beautiful color gradients.
Stars: ✭ 15 (-82.56%)
Mutual labels:  swift-package-manager, spm
SupportEmail
Pre-populates emails with support information in iOS/iPadOS apps
Stars: ✭ 20 (-76.74%)
Mutual labels:  swift-package-manager, spm
CSV
A simple CSV file parser and serializer
Stars: ✭ 31 (-63.95%)
Mutual labels:  swift-package-manager, spm
PagedLists
Paginated UITableView and UICollectionViews for iOS.
Stars: ✭ 69 (-19.77%)
Mutual labels:  swift-package-manager, spm
Carting
🚘 A simple tool for updating Carthage script phase
Stars: ✭ 182 (+111.63%)
Mutual labels:  homebrew, swift-package-manager
danger-swift-xcodesummary
A Danger-Swift plugin that adds build errors, warnings and unit tests results generated from xcodebuild to your Danger report
Stars: ✭ 72 (-16.28%)
Mutual labels:  swift-package-manager, spm
YMFF
Feature management made easy.
Stars: ✭ 26 (-69.77%)
Mutual labels:  swift-package-manager, spm
MMActionSheet
An actionSheet view implement with pure swift
Stars: ✭ 25 (-70.93%)
Mutual labels:  swift-package-manager, spm
swift-watch
Watches over your Swift project's source
Stars: ✭ 43 (-50%)
Mutual labels:  swift-package-manager, spm
extensions-kit
📦 Collection of Swift+Apple Frameworks extensions for speeding up software development [iOS & iPadOS].
Stars: ✭ 71 (-17.44%)
Mutual labels:  swift-package-manager, spm
Table
CLI tables in Swift
Stars: ✭ 53 (-38.37%)
Mutual labels:  swift-package-manager, spm
Iterm Fish Fisher Osx
Complete guide and Bash script to install Command Line Tools + Homebrew + iTerm2 + Fish Shell + Fisher + Plugins for development purposes
Stars: ✭ 249 (+189.53%)
Mutual labels:  homebrew, command-line-tool
SwiftZip
Swift wrapper for libzip — library for reading, creating, and modifying zip archives.
Stars: ✭ 44 (-48.84%)
Mutual labels:  swift-package-manager, spm
cybr-cli
A "Swiss Army Knife" command-line interface (CLI) for easy human and non-human interaction with @cyberark suite of products.
Stars: ✭ 45 (-47.67%)
Mutual labels:  command-line-tool, command-line-interface
Appicon
AppIcon generates *.appiconset contains each resolution image for iOS
Stars: ✭ 1,454 (+1590.7%)
Mutual labels:  homebrew, swift-package-manager
ecs-demo
Minimal demo App for the Fireblade Entity-Component System (ECS)
Stars: ✭ 20 (-76.74%)
Mutual labels:  swift-package-manager, spm
ecs
A dependency free, lightweight, fast Entity-Component System (ECS) implementation in Swift
Stars: ✭ 79 (-8.14%)
Mutual labels:  swift-package-manager, spm

Ether

Mentioned in Awesome Vapor Built with Swift 4.2

What is it?

Ether is a CLI the integrates with SPM (Swift Package Manager), similar to NPM's command-line tool.

How do I install it?

With Homebrew:

brew tap Ether-CLI/tap
brew install ether

If you don't have, want, or can't use Homebrew, you can run the following script to install Ether:

curl https://raw.githubusercontent.com/calebkleveter/Ether/master/install.sh | bash

What features does it have?

Search:

Searches for available packages:

ether search <name>

Example result:

Searching [Done]
vapor/vapor: 💧 A server-side Swift web framework.
License: MIT License
Stars: 13906

vapor/toolbox: Simplifies common command line tasks when using Vapor
License: MIT License
Stars: 111

matthijs2704/vapor-apns: Simple APNS Library for Vapor (Swift)
License: MIT License
Stars: 289

vapor-community/postgresql: Robust PostgreSQL interface for Swift
License: MIT License
Stars: 99

...    

Install

Installs a package with its dependencies:

ether install <name>

Example output:

Installing Dependency [Done]
📦  10 packages installed

Package.swift:

dependencies: [
    .package(url: "https://github.com/vapor/console.git", from: "3.0.0"),
    .package(url: "https://github.com/vapor/core.git", from: "3.0.0"),
    .package(url: "https://github.com/vapor/vapor.git", from: "3.0.0") <=== Added Package
]

Note:

The install command has a rather interesting method of getting the proper package. Because you can have packages with the same name by different authors, Ether will run a search based on the argument you pass in and get the most stared result. If the name contains a slash (/), then the URL will be created directly without a search like this:

https://github.com/<NAME>.git

Note that this is case insensitive.

Fix Install

Fixes the install process when an error occurs during install, such as a git conflict.

ether fix-install

Example Output:

This may take some time...
Fixing Installation [Done]

Remove

Removes the package and its dependencies from the project:

ether remove <name>

Example output:

Removing Dependency [Done]
📦  2 packages removed

Update

Updates the packages. This only needs to be run if packages are manually added.

ether update

Example output:

Updating Packages [Done]

You can pass in the --self flag to update Ether to the latest version:

ether update --self

Example output:

Updating Ether [Done]

Template Create

Saves the current state of the project as a template that can be used later when creating a new project.

ether template create <name>

Example output:

Saving Template [Done]

Template Remove

Saves the current state of the project as a template that can be used later when creating a new project.

ether template remove <name>

Example output:

Deleting Template [Done]

Template List

Saves the current state of the project as a template that can be used later when creating a new project.

ether template list

Example output:

- Vapor
- CLI

New

Creates a project. It can be a Swift package, a Swift executable, or a project from a previously saved template.

ether new <name>

Example output:

Generating Project [Done]

Version Latest

Sets all packages to their latest versions:

ether version latest

Example output:

Updating Package Versions [Done]

Version All

Outputs the name of each package installed and its version

ether version all

Example output:

Getting Package Data [Done]
Bits: v1.0.0
Console: v2.1.0
Core: v2.0.2
Debugging: v1.0.0
JSON: v2.0.2
Node: v2.0.4

How do I make my package available?

If they are on GitHub, they already are! Ether uses GitHub's GraphQL API to fetch projects with a Package.swift file in the project root.

What license is it under?

Ether is under the MIT license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].