mkuettel / htfx
Declarative streaming templating engine for PHP 8
Requires
- php: ^8.3
Requires (Dev)
- codeception/codeception: 5.2.x-dev
- codeception/module-asserts: *
- codeception/module-phpbrowser: *
- phpstan/phpstan: 2.0.x-dev
- vimeo/psalm: ^6.0@dev
This package is auto-updated.
Last update: 2025-03-03 19:13:05 UTC
README
Declarative Hypertext Template Engine for PHP.
Features
- Decorate your html to suit your needs
- Partials, Layouts
- Extensibility, Customization
- Streaming of Tokens for rendering
- more coming...
Roadmap
- implement fibers or passing lazy functions to, to allow for rendering template as soon as possible
Installation
Clone this repository. Once you've navigated into the just cloned directory you'll first need to install all the dependencies using composer. (If you can't simply install composer on your machine there is a composer.phar file available)
composer install
(Note: use composer install --no-dev
when deploying, preventing the installing of dev tools)
Then to configure the application to your computing environment you can copy
the env
file at the root folder of this repository and adjust the .env
file like this:
cp env .env
$EDITOR .env
Development
Configuration
First, if you plan to develop this software, you'll probably want to set FX_ENVIRONMENT=development
variable in your .env
file to development.
Support
Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc.
Roadmap
If you have ideas for releases in the future, it is a good idea to list them in the README.
- more modules based upon this repo will follow
Repo management
- Set up protected environments
- Automatically close issues from merge requests
- Enable merge request approvals
- Set auto-merge
Contributing
State if you are open to contributions and what your requirements are for accepting them.
For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self.
You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser.
Authors and acknowledgment
- Development: Moritz Küttel moritz_kuettel+htfx_readme@fastmail.com, Küttel Informatik moritz_kuettel+hostmax_website@fastmail.com
License
Lesser GNU General Public License version 3 or later. See the file COPYING
.
Copyright © by Moritz Küttel
Project status
Beta, Unfinished