Download the PHP package soy-php/soy without Composer

On this page you can find all versions of the php package soy-php/soy. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package soy

Soy

Latest Stable Version Total Downloads Latest Unstable Version License

Introduction

Soy is a PHP task runner focused on clean syntax and allowing flexible implementation.

For more information, see the Why Soy? section.

Tasks

Usage

Include soy in your project with composer:

Include the tasks you need using composer, Soy doesn't come with any default tasks. For this example we can include the Gulp Task:

Then create a recipe.php in your project's directory and put your tasks in there. This is the simplest example:

This is a more advanced example using custom CLI arguments and such:

API

The core of Soy is the Recipe, it has two main methods: prepare and component.

Prepare

Prepare can be used to setup defaults for any of the tasks, the first parameter is the class name and the second parameter is a closure which accepts an instance of the class as a first parameter. Make sure you always return the object.

You can have as many prepare methods as you want and even for the same class. You can also pass a third parameter to prepend the preparation instead of appending it.

Component

Component can be used to execute your tasks, the first parameter is the name of the component, the second parameter is a closure (or null) to execute and the third parameter is an array of dependencies on other components.

You can put anything in the signature of the closure, the corresponding objects will be injected based on the type-hint.

CLI

There are three ways of defining CLI commands, each suitable for different situations.

If you want to introduce a global argument:

If you want to add arguments from a specific task to your component:

You can also use fluent interfacing:

If you want to add your own component specific arguments:

Why Soy?

Soy's focus is to give power back to the developer.

PHP

Soy's recipes are written in plain PHP, no new language you have to familiarize yourself with, nor are we forcing you to use a markup language. The result of this decision is that you are no longer limited in what you can do.

Tasks

Soy's tasks are mostly CLI wrappers, every task has at least one run() method that doesn't accept any arguments. That means tasks are focused on doing one thing and all options are passed through setters. Because the tasks are CLI wrappers, there's no risk of strange integration bugs and debugging becomes easy.

Reusability

Reusability is something we all strive for when developing code, Soy has two ways to reinforce that mindset.

The first pillar to support this is the concept of preparing a task. Task preparations are stacked and can be either appended or prepended. These preparations will be run during the bootstrap phase of Soy, allowing you to manipulate any task. An interesting object you can prepare is CLImate, preparing CLImate allows you to add required/optional arguments/flags, giving you full control over how you interact with your task runner.

The second pillar in supporting reusability is picking setters overs run() method arguments, every task accepts its options through setters allowing you to set defaults in your task preparations. You could create a recipe with sane defaults, require it in your project's recipe and customize only a few things like file paths and such.

Output

Soy doesn't like to talk, it leaves the talking to you. You can enable verbose mode on CLI tasks to get some more insights on the command line used and the output of the command, but there's no default output when a component gets executed. You can add CLImate as an argument in your component and use its awesome output functions to your own likings.


All versions of soy with dependencies

PHP Build Version
Package Version
Requires league/climate Version ^3.0
php-di/php-di Version ^5.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package soy-php/soy contains the following files

Loading the files please wait ....