Skip to content

plxx/develop

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HydePHP - Source Monorepo

Contribute to the Core HydePHP Components in one place

Test & Build Framework Tests (Matrix) Hyde Tests

Test Coverage Scrutinizer Code Quality Psalm Type Coverage

Latest Version on Packagist Total Downloads on Packagist License MIT

This repository holds the source code for the HydePHP core components. If you want to create a website with Hyde, checkout the HydePHP/Hyde repository.

Projects in this monorepo

Upcoming Documentation API Documentation HTML Code Coverage This project is using Percy.io for visual regression testing.

HydePHP consists of a few core components, the development of which is done in this monorepo.

The code pushed here is automatically split into separate read-only repositories for each component. The two most important components are Hyde and Framework. We also use HydeFront for frontend assets.

The Hyde package is what the end-user sees and interacts with. When creating a new HydePHP site, this is done using the Hyde project. The package contains all the necessary files to run a HydePHP site and bootstraps the entire system.

The Framework package holds most of the logic of the Hyde framework. This is where all the data models, static site generators, HydeCLI commands, Blade views, and more, are stored. Having this in a package makes it much easier to version and update using Composer.

The HydeFront package contains stylesheets and scripts to help make HydePHP sites accessible and interactive. It also includes a pre-compiled TailwindCSS file containing all the styles needed for the built-in Blade templates.

Quick reference overview

Package Monorepo path Readonly repository Package location
Hyde Root directory* hydephp/hyde hyde/hyde
Framework packages/framework hydephp/framework hyde/framework
Realtime Compiler packages/realtime-compiler hydephp/realtime-compiler hyde/realtime-compiler
HydeFront packages/hydefront hydephp/hydefront npm@hydefront

*The Hyde/Hyde project is stored in the monorepo root and works a bit differently from the others. Before pushing to the readonly repository, we apply persisted changes in the packages/hyde directory, then remove monorepo specific files.

How the monorepo works

Changes to HydePHP including some first-party packages are made here. The changes are then pushed to the develop or master branches of the readonly repositories seen in the table above. These branches could be unstable.

This monorepo project is still new, and the internal structure of it may be changed without notice.

Releases

While in the v0.x range, we consider both major and minor release versions to be the same. This means that when a new feature is added, it should be added as a minor version even if it is breaking. Patch versions should always be compatible. Once we reach v1.0 we will follow semantic versioning strictly.

The versioning between the Framework and Hyde packages are linked together Meaning that if Hyde get's a minor release, so must Framework, and vice versa. To make this easier, we also publish minor releases in the monorepo. Patch releases are not published in the monorepo, and are instead handled by the individual packages.

About

The HydePHP Monorepo

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 89.7%
  • Blade 6.4%
  • HTML 3.1%
  • JavaScript 0.4%
  • SCSS 0.3%
  • CSS 0.1%