pressbooks / pressbooks-network-catalog

A Pressbooks plugin which provides an improved catalog for the Pressbooks Aldine theme
2 stars 1 forks source link

Implement backend structure #8

Closed richard015ar closed 2 years ago

richard015ar commented 2 years ago

As a developer I want to have a improved backend structure for the new plugins, starting from this one. It may include a new coding standard, a new way to handle / render views and new or different dependencies.

DoD: a new structure and implementation that serves as starting point and may be use for future new plugins.

richard015ar commented 2 years ago

Something we would like to discuss the pressbooks/pressbooks dependency handling. We think add pressbooks/pressbooks as a dependency would be a good idea. Product meeting would be a good place to talk about it probably? But we need to unblock it earlier.

richard015ar commented 2 years ago

About pressbooks/pressbooks dependency we decided we would add it in the new plugin. Future steps would be add it for every repo that depends on pressbooks plugin.

We added a new structure for this plugin which includes a Filters main class (with a Filter interface) where the main filters would be managed. We also have a main Books class to get the books list and manage the filter for the front end.

We would need to filter by some information stored as serialized data in blogmeta through the data collector. We decided to store this data in separate metadata to filter it easily.

Regarding the new implementation it follows the PSR-4 and composer autoload. It also includes PHP CS Fixer library for coding standard. More decisions on coding standards (style, JS, CSS, etc) comming next.