Download the PHP package xama5/valet-neutral without Composer

On this page you can find all versions of the php package xama5/valet-neutral. 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 valet-neutral

Introduction

Valet Neutral (or ValetN) is a development environment for macOS and Linux. No Vagrant, no Docker, no /etc/hosts file.

As neutral as Switzerland, and made in Switzerland. (pretty much hit two birds with one stone)

ValetN vs. Valet+

Yet another Valet? Yes! The "official" Valet and Valet+ are developed for macOS, both lacking official support for Linux.

Time to bring some neutrality in there. This project supports both Linux and macOS, pulling in changes from both upstreams and make them work on Linux too. This means, you can use this very same package on either system and it will work just the same. Depending on your OS, you can enjoy most of the features Valet+ provides.

Although there exists an inofficial Valet fork for Linux, it doesn't incorporate Valet+ features and is again only intended for use on a specific OS. In my opinion it also makes too many changes to the system, leaving you with a huge configuration mess of leftover files, if you ever decide to part ways with Valet.

Valet Neutral makes as little changes as possible to your main system. It is almost completely isolated from your main system, while also following the main philosophy of Valet!

Please note, this package is also intended to replace Valet/Valet+ and also uses the valet command. The documentation of Valet Neutral and Valet+ is pretty much the same.

Valet vs. Valet+

Valet+ is a third-party fork of Laravel Valet. Valet+ adds functionality to Valet with a goal of making things even simpler and faster. We are very grateful to the Laravel team for providing the base that we built Valet+ on. Since this is a fork we'll pull in changes from the original Valet regularly as they are released.

Some of the documentation in this readme was taken from the Valet website and provided here for convenience, so that you can read this document and know about all features provided. The original documentation can be found here: https://laravel.com/docs/valet.

Since Valet+ is intended to replace Valet, it still uses the same valet command-line name. Any changes in its interface are documented below.

Features

ValetN configures your system to always run Nginx in the background when you start your system. Then, using DnsMasq, ValetN proxies all requests on the *.test domain to point to sites installed on your local machine.

In other words, a blazing fast development environment. ValetN provides a great alternative if you want flexible basics or prefer extreme speed.

Differences from Valet

Here are a few key differences compared to the original Valet:

Table of Contents

Installation

:warning: ValetN requires Homebrew, both for macOS and Linux. (yes, Linux is also supported by now!) Before installation, you should make sure that no other programs such as Apache or Nginx are binding to your local machine's port 80. Also make sure you don't have a local DNS server occupying the DNS port.

  1. Install or update Homebrew to the latest version using brew update.
  2. Add the Homebrew PHP tap for Valet+ via brew tap henkrehorst/php.
  3. Install PHP 7.2 using Homebrew via brew install [email protected].
  4. Install Composer using Homebrew via brew install composer.
  5. Install ValetN with Composer via composer global require xama5/valet-neutral.
  6. Add export PATH="$PATH:$HOME/.composer/vendor/bin" to .bash_profile (for bash) or .zshrc (for zsh) depending on your shell (echo $SHELL)
  7. Run the valet fix command. This will check for common issues preventing Valet+ from installing.
  8. Run the valet install command. This will configure and install ValetN and DnsMasq, and register Valet's daemon to launch when your system starts.
  9. Once ValetN is installed, try pinging any *.test domain on your terminal using a command such as ping -c1 foobar.test. If ValetN is installed correctly you should see this domain responding on 127.0.0.1. If not you might have to restart your system. Especially when coming from the Dinghy (docker) solution.

:information_source: ValetN will automatically start its daemon each time your machine boots. There is no need to run valet start or valet install ever again once the initial ValetN installation is complete.

:information_source: To update ValetN to the latest version use the composer global require xama5/valet-neutral command in your terminal. After upgrading, it is good practice to run the valet install command so ValetN can make additional upgrades to your configuration files if necessary.

Serving sites

Once ValetN is installed, you're ready to start serving sites. ValetN provides a command to help you serve your sites: valet park. Which will register the current working directory as projects root. Generally this directory is ~/sites.

  1. Create a sites directory: mkdir ~/sites
  2. cd ~/sites
  3. valet park

That's all there is to it. Now, any project you create within your "parked" directory will automatically be served using the http://folder-name.test convention.

For example:

  1. mkdir ~/sites/example
  2. cd ~/sites/example
  3. echo "<?php echo 'Valet+ at your service';" > index.php
  4. Go to http://example.test, you should see ValetN at your service

Switching PHP version

Switch PHP version using one of four commands:

Xdebug

Xdebug support is built-in. It works on port 9000 after you enable it.

The [--remote_autostart=] option can be used by typing: valet xdebug --remote_autostart=0 or changing both settings: valet xdebug on --remote_autostart=1

Enable Xdebug:

Disable Xdebug:

Enable/disable xdebug.remote_autostart:

:warning: Xdebug makes your environment slower. That's why we allow to fully enable / disable it. When not debugging it's best to disable it by running valet xdebug off.

PhpStorm

To use Xdebug with PhpStorm you don't have to configure anything. Just run valet xdebug on and click the Xdebug button on the top right:

Then install Xdebug helper for Chrome and enable it when viewing the page you want to use Xdebug on.

Ioncube

Enable Ioncube:

Disable Ioncube:

Database

ValetN automatically installs MySQL 5.7 with 5.6 compatibility mode included. It includes a tweaked my.cnf which is aimed at improving speed.

Username: root

Password: root

Change password

List databases

Creating databases

Create databases using:

When no name is given it'll try to find the closest git repository directory name. When it can't find one it'll use the current working directory name.

Dropping databases

Drop a database using:

When no name is given it'll try to find the closest git repository directory name. When it can't find one it'll use the current working directory name.

Resetting databases

Drop and create a database using:

When no name is given it'll try to find the closest git repository directory name. When it can't find one it'll use the current working directory name.

Exporting databases

Export a database:

When no database name is given it'll try to find the closest git repository directory name. When it can't find one it'll use the current working directory name.

When no filename is given it will use <database>-<date>.sql.gz. Optionally you can use valet db export - <database> to automatically generate the filename for a custom database.

All database exports are gzipped.

Importing databases

Import a database with progress bar

When no name is given it'll try to find the closest git repository directory name. When it can't find one it'll use the current working directory name.

You can import .sql directly as well as gzipped .sql.gz database exports.

Open database in Sequel Pro

Valet+ has first class support for opening databases in Sequel Pro, a popular MySQL client for Mac.

When no name is given it'll try to find the closest git repository directory name. When it can't find one it'll open Sequel Pro without pre-selected database.

Logging

To easily read the log file of php, php-fpm, nginx, mysql, mailhog or redis you can use command below.

Subdomains

You can manage subdomains for the current working directory using:

For example:

Will create welcome.yourproject.test.

Domain Alias / Symlinks

Display all of the registered symbolic links based on the current folder.:

Add new alias:

For example:

Will create a symbolic link to the current folder yourproject2.test.

Remove alias:

For example:

Mailhog

Mailhog is used to catch emails send from PHP. You can access the panel at http://mailhog.test.

Enable Mailhog:

Disable Mailhog:

Redis

Redis is automatically installed and listens on the default port 6379. The redis socket is located at /tmp/redis.sock

Enable Redis:

Disable Redis:

Elasticsearch

Elasticsearch 2.4 can be installed using:

To uninstall:

The most recent version of Elasticsearch – 5.6 at the time of writing – can be installed using:

It will run on the default port 9200, and is accessible at http://elasticsearch.test/.

Elasticsearch 2.4 is installed by default because Magento 2.1 does not support Elasticsearch 5.

Framework specific development tools

ValetN will automatically install framework specific development tools for you:

Git Tower (macOS only)

Open current git project in Tower

PhpStorm

Open current git project in PhpStorm

SourceTree (macOS only)

Open current git project in SourceTree

VScode

Open current git project in Visual Studio Code

Open project in browser

To open the current project in your default browser:

Copy ssh key

Automatic configuration [beta]

Automatically configure environment for the project you're in.

Supported systems

Magento 2

Automatically configure the env.php, config.php base url, seo url rewrites and elastic search configuration in the database for Magento 2.

Magento 1

Automatically configure the local.xml and base url in the database for Magento 1.

Securing Sites With TLS

By default, Valet serves sites over plain HTTP. However, if you would like to serve a site over encrypted TLS using HTTP/2, use the secure command. For example, if your site is being served by Valet on the example.test domain, you should run the following command to secure it:

To "unsecure" a site and revert back to serving its traffic over plain HTTP, use the unsecure command. Like the secure command, this command accepts the host name you wish to unsecure:

Log locations

The nginx-error.log, php.log and mysql.log are located at ~/.valet/Log.

Other logs are located at /usr/local/var/log

PHP.ini location

The PHP.ini location is /usr/local/etc/valet-php/VERSION/php.ini.

Valet drivers

Valet uses drivers to handle requests. You can read more about those here.

When using ValetN drivers are automatically cached using APCu to avoid doing a driver lookup every time there is a request. You can reset the cache for a specific site by running valet which. APCu is temporarily turned off due to a compatibility issue with PHP-FPM, see https://github.com/weprovide/valet-plus/issues/49.

By default these are included:

A full list can be found here.

Custom Valet Drivers

You can write your own Valet "driver" to serve PHP applications running on another framework or CMS that is not natively supported by Valet. When you install Valet+, a ~/.valet/Drivers directory is created which contains a SampleValetDriver.php file. This file contains a sample driver implementation to demonstrate how to write a custom driver. Writing a driver only requires you to implement three methods: serves, isStaticFile, and frontControllerPath.

All three methods receive the $sitePath, $siteName, and $uri values as their arguments. The $sitePath is the fully qualified path to the site being served on your machine, such as /Users/Lisa/Sites/my-project. The $siteName is the "host" / "site name" portion of the domain (my-project). The $uri is the incoming request URI (/foo/bar).

Once you have completed your custom Valet+ driver, place it in the ~/.valet/Drivers directory using the FrameworkValetDriver.php naming convention. For example, if you are writing a custom valet driver for WordPress, your file name should be WordPressValetDriver.php.

Let's take a look at a sample implementation of each method your custom Valet+ driver should implement.

The serves Method

The serves method should return true if your driver should handle the incoming request. Otherwise, the method should return false. So, within this method you should attempt to determine if the given $sitePath contains a project of the type you are trying to serve.

For example, let's pretend we are writing a WordPressValetDriver. Our serve method might look something like this:

The isStaticFile Method

The isStaticFile should determine if the incoming request is for a file that is "static", such as an image or a stylesheet. If the file is static, the method should return the fully qualified path to the static file on disk. If the incoming request is not for a static file, the method should return false:

{note} The isStaticFile method will only be called if the serves method returns true for the incoming request and the request URI is not /.

The frontControllerPath Method

The frontControllerPath method should return the fully qualified path to your application's "front controller", which is typically your "index.php" file or equivalent:

Local Drivers

If you would like to define a custom Valet driver for a single application, create a LocalValetDriver.php in the application's root directory. Your custom driver may extend the base ValetDriver class or extend an existing application specific driver such as the LaravelValetDriver:

Valet Documentation

Documentation for Valet can be found on the Laravel website.

Credits

This project is a fork of laravel/valet. Thanks to all of the contributors, especially the original authors:

And a huge thanks to Valet+ and its contributors.

ValetN Authors


All versions of valet-neutral with dependencies

PHP Build Version
Package Version
Requires php Version >=5.6
illuminate/container Version ~5.1
mnapoli/silly Version ~1.5.0
symfony/process Version ~2.7|~3.0
nategood/httpful Version ~0.2
tightenco/collect Version ~5.4.0
sebastian/version Version ^2.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 xama5/valet-neutral contains the following files

Loading the files please wait ....