Download the PHP package chevere/xr-server without Composer

On this page you can find all versions of the php package chevere/xr-server. 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 xr-server

xrDebug

xrDebug is a lightweight web-based debug software. Play video

Build Code size

Installation

xrDebug is available for Windows, macOS, Linux and FreeBSD. Download the latest xrdebug binary from the releases page.

From binary

  1. Go to the releases page.
  2. Download the appropriate binary for your operating system.
  3. Extract the downloaded file.
  4. Move the binary to a directory included in your PATH.

Optionally, you can run this command to install the latest version:

From source

Ensure you have Go installed.

Docker

Container images are available at ghcr.io/xrdebug/xrdebug.

Run the following command to start the server at port 27420:

Usage

Run the server with the following command. Use a HTTP API to send messages to the server.

See the run documentation for examples.

Options

Client libraries

The following clients are available:

(Contributions for other clients are welcome!)

Screens

Documentation

Documentation available at docs.xrdebug.com.

Features

Security & privacy

Real-time collaboration

Advanced debugging

Developer experience

Modern interface

System architecture

xrDebug follows a modular architecture with the following key components:

Core Components

The system consists of these main components:

  1. Server

    • Handles incoming debug messages
    • Manages SSE connections
    • Implements security measures
    • Provides HTTP endpoints
  2. Message Handler

    • Processes incoming debug data
    • Sanitizes content
    • Manages message queuing
    • Handles message broadcasting
  3. Security Layer

    • TLS encryption for HTTPS
    • End-to-end message encryption
    • Request signature verification
  4. Client Interface
    • Real-time updates via SSE
    • Message decryption
    • Interactive debugging tools (pause, resume, stop)
    • Editor integration (jump to file, line)

Data flow

HTTP API

Learn more about the HTTP API at the documentation.

GET /

To access the web interface, open a web browser and navigate to the server's root URL. The server will serve the web interface.

POST /messages

Sends a message to the server.

Parameters:

All parameters are optional, but at least one is required.

Responses:

POST /pauses

Creates a pause lock.

Parameters:

The following parameters are optional:

Responses:

GET /pauses/{id}

Retrieves the status of an existing pause lock.

Parameters:

Responses:

DELETE /pauses/{id}

Deletes a pause lock.

Parameters:

Responses:

PATCH /pauses/{id}

Updates a pause lock status to stop: true.

Parameters:

Responses:

GET /stream

Establishes a Server-Sent Events (SSE) connection.

Responses:

Signed requests

Request signing using Ed25519 digital signatures to verify message origin authenticity. To use signed requests pass the -s flag to the xrdebug command. Optionally, you can pass the private key using the -x flag.

To sign a request, the client must include the X-Signature header on requests made to the xrDebug server. The signature is a base64 encoded string generated by signing the serialized post fields with the private key. If there's no fields sign an empty string.

Sign workflow

To sign a request server expect the following data workflow:

  1. Sort the post fields by key
  2. Concatenate the key-value pairs
  3. Sign the concatenated string
  4. Base64 encode the signature at X-Signature header

Example in PHP:

Example in Python:

The X-Signature header should contain the base64 encoded signature generated by the client.

End-to-End encryption

End-to-end encryption (AES-GCM AE) between xrDebug server and the debugger web user interface client. To enable end-to-end encryption pass the -e flag. Optionally, you can pass the symmetric key using the -k flag.

The SSE stream at /stream will be encrypted using the symmetric key. Decryption happens on the client-side (web browser).

License

Copyright Rodolfo Berrios A.

xrDebug is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.


All versions of xr-server with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
chevere/filesystem Version ^1.0.1
chevere/http Version ^0.4.0
chevere/parameter Version ^1.0.2
chevere/router Version ^0.6.0
chevere/schwager Version ^0.2.0
chevere/schwager-html Version ^0.1.0
chevere/standard Version ^1.0.1
chevere/throwable-handler Version ^1.0.0
chevere/var-dump Version ^2.0.0
middlewares/utils Version ^3.0
phpseclib/phpseclib Version ~3.0
relay/relay Version ~2.0
rodber/php-sse-react Version ^0.2.1
samejack/php-argv Version ^1.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 chevere/xr-server contains the following files

Loading the files please wait ....