# PressXO
## PxO Ink LLC

PressXO is a TALL (Tailwind, Alpine, Laravel, and Livewire) platform by PxO Ink LLC, with the following features and functionality:

* Content management system using the Filament panel (with Livewire support)
* Server-side rendered pages through the Blade templating system
* Alpine.js and Tailwind driven design theme

## Install

### Setup the environment variables.

Copy `.env.example` to `.env` and populate `.env` as completely as possible.

You do not need to fill in `APP_KEY`, as that will be handled by the installer.

### Install node dependencies and build the initial design framework.

Run `npm install` and then follow it up with `npm build`.

### Install Composer and install framework vendor packages.

Download Composer by visiting: [https://getcomposer.org/download/](https://getcomposer.org/download/).

Run `php composer.phar setup`.

### Create an administrator account from the command line.

Run `php artisan make:admin` and follow the on-screen prompts.

### Setup scheduled tasks.

Setup the scheduler by visiting: [https://laravel.com/docs/13.x/scheduling#running-the-scheduler](https://laravel.com/docs/13.x/scheduling#running-the-scheduler).

### Setup site.webmanifest.

The `site.webmanifest` file is found in the `public` directory.

## Documentation

### Settings

#### Redirects

The special `redirects` setting can take the following formats for 301 redirects:

* `from,to`
* `from.to`
* `from;to`
* `from:to`
* `from;to`
* `from->to`
* `from→to`
* `from=>to`
* `from⇒to`

Example:

`/call-me=>/contact`: will redirect all requests from `/call-me` to `/contact`.

## Troubleshooting

### Chmod

On Windows, if you encounter any of these errors, you are likely using WSL.

You must override the chmod to `return true`.

```
vendor/league/flysystem-local/LocalFilesystemAdapter.php
vendor/ezyang/htmlpurifier/library/HTMLPurifier/DefinitionCache/Serializer.php
```

You must override the touch to not use utime:

```
vendor/laravel/framework/src/Illuminate/View/Compilers/BladeCompiler.php
```

## License

Please see LICENSE.md.
