Download the PHP package xmlsquad/xml-authoring-project without Composer

On this page you can find all versions of the php package xmlsquad/xml-authoring-project. 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 xml-authoring-project

xml-authoring-project

A structured directory where we build and store xmls.

This acts as a project template which forms the base for creating an xml-authoring-directory for a particular client.

Prerequisites

Work with commands

Create your composer.json file

This project comes with a default set of dependencies in composer.json.dist in the root of the project folder.

Make a copy of that composer.json.dist file for the next step.

Install dependencies

For users:

Developers may wish to use --prefer-source to work on git repositories of dependent components):

Who needs this anyway?

So, you are a staff member who is responsible for creating and editing a client's Xml files.

We have a client who wants some Xmls authored. We need to set up a folder on your computer that acts as a 'working directory' for the client's Xml project.

We use Git SCM to track changes to the files within this directory.

Each instance of this xml-authoring-project has a composer.json file in the root directory which specifies an ever-increasing set of custom software tools that can speed up your most repetitive tasks.

Custom software tools

These tools have been built to work in the context of this xml-authoring-project.

We will use software tools to:

We also use custom tools (along with the project's configuration settings) to convert the client's Google Sheets into snippets of Xml that are stored here.

Getting started

We assume that you have installed :

Navigate to your Projects directory

Given a client, we may or may not already have their working directory set up as a git repository in the cloud.

Using an existing working directory.

Now, you should be able to work on the Xml files.

Once your edits are finished, use git to commit your changes to the origin.

Set up a new xml authoring project working directory for a client

We create a new git repository (based on this xml-authoring-project), alter the remotes then push it to our git hosting solution. Effectively, we fork it.

Query the setting to ensure it worked:

Ensure the tools are installed

Now, you should be able to work on the Xml files.

Once your edits are finished, use git to commit your changes to the origin.

Configure the tools

As the end user, you will need to add some configuration files to the root of the project:

Connecting to GSuite

NOTE: At the time of writing we have 2 sub-projects that are connecting to GSuite. Each project's developer has been given freedom to solve the issue of Google API authentication as they need. In the next few hours, I will look at all solutions and pick one to be the definitive method.

In the mean time, you could copy the pattern used by another devloper to determine where your credential files will be stored.

Check the project's dev branches and pull requests. The one's that connect to GSuite are:

A third sub project is being built called:

We have a library for shared code at:

XmlAuthoringProjectSettings.yaml

One instance of an xml-authoring-project is created for each of our company's clients. This configuration file is used to store client-wide configurations like the location of the client's key files and folders on GSuite.

Using the tools

See: https://github.com/xmlsquad/xml-authoring-tools

Keeping the tools updated

The custom tools are always improving.

To update to the latest versions of the tools.

Known bugs

We use OAuth authentication for the bin/console inventory:gsheet-to-xml command to access a Google Sheet.

However, when you first run the command, it asks for an Auth code, but does not give any advice on how to get your Auth code.

The workaround is to run a different command, ping-drive, to 'get logged in' and save your authentication token. Once, done, gsheet-to-xml will use that same token to access the Google Sheet.

Example

Assuming you have a Google OAuth Key and XmlAuthoringProjectSettings.yaml defines the OAuth Key (gApiOAuthSecretFile) location and the name of the token file (gApiAccessTokenFile).

Ensure you have navigated to the project folder:

Run ping-drive:

Now you can run the inventory:gsheet-to-xml using the token.

Development Notes

Composer validation notice is OK

Before 2019-11-03, the team used a trick to check dependencies. This trick leaves a validation warning when the project's composer.json file is checked by composer validate.

So, although it might look painful. It is harmless. So, we ignore it. We will remove it once the project is more settled.


All versions of xml-authoring-project with dependencies

PHP Build Version
Package Version
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 xmlsquad/xml-authoring-project contains the following files

Loading the files please wait ....