Joomlatools Pages is a very fast just-in-time page generator and flexible framework that makes building websites with any CMS, API, or database fun again. It can be installed in Joomla as a component, or be used standalone


README

Build package

Joomlatools Pages

What is Joomlatools Pages?

Joomlatools Pages is a very fast page generator and flexible framework that makes building websites with any CMS, API, or database fun again. It can be installed in Joomla as a component, or be used standalone.

It's written in PHP and inspired by the ideas and concepts of flat-file CMS systems like Grav and Statamic, static site generators like Jekyll, Hugo, Gatsby and Headless CMS system like Strapi and Prismic etc.

Make no mistake, Pages is not a static site generator (SSG), Pages works in a dynamic, lazy and smart way. Pages are dynamically generated, and cached and incrementally re-generated when their content or layout has changed.

Pages is more than a page generator, it's an engine for creating websites, combining the power of a dynamic web application, with the performance of a static site generator.

Pages takes your custom HTML/CSS/JS and churns through layouts to create a page. Throughout that process, you can tweak how you want the page to look, what data gets displayed in the layout, all that is required is a little bit of PHP logic to bring it all together.

Pages is datasource agnostic, your data can come from anywhere, for example you could use, a Joomla component, a database table, a headless CMS or even a webservice like Airtable or Google Sheets.

Pages can both be installed in Joomla and be used standalone, it's 100% compatible with every Joomla template, and also offers it's own a very powerful theming system.

We built it to be your perfect buddy, and bring joy to web development, it doesn't get in your way and it's always there if you need it.

Why Joomlatools Pages?

For the rebuild of Joomlatools.com we needed a solution that would allow us to easily include, and update, content on our site. Using Joomla would make the site very hard to manage. Pages solves this in an elegant and simple way, not to mention it's super fast and easy to work with too!

Who is Joomlatools Pages for?

Joomlatools Pages is for website developers and designers who create bespoke (Joomla) sites and have experience with html, markdown, etc. If you know how to use notepad you can work with Pages, knowledge of PHP is not required to get started.

Requirements

  • PHP8.0
  • Joomlatools Framework 4.0

Installation

In Joomla

Go to the root directory of your installation in command line and execute this command:

composer require joomlatools/pages --ignore-platform-reqs

When installing in Joomla you need to use the --ignore-platform-reqs flag if not the installation will fail due to a mismatch in the platform constraint. Joomla's requires PHP 5.3.10 as minimum while Joomlatools Pages is set to minimum PHP7.4

Standalone

Go to the root directory of your installation in command line and execute this command:

composer require joomlatools/pages

Documentation

You can find all the documentation for Joomlatools Pages in the wiki. Happy coding!

Contributing

Joomlatools Pages is an open source, community-driven project. Contributions are welcome from everyone. We have contributing guidelines to help you get started.

Contributors

See the list of contributors.

License

Joomlatools Pages is open-source software licensed under the GPLv3 license.

Community

Keep track of development and community news.