Git Product home page Git Product logo

wplib's Introduction

Stories in Ready Latest Stable Version Total Downloads License

WPLib

A PHP Library plus Conventions for Building Complex Custom WordPress Apps

WPLib was designed for use by teams who build custom sites and need professional workflow. The library is a thin layer that provides a simple Module System and a lightweight Model+View architecture.

WPLib is for those professionals who want their custom-developed WordPress sites to be both robust and easy to manage and maintain as site complexity grows.

##Features and Benefits

The WPLib Library includes:

  1. Implementation of a Module system with Auto-Loader,
  2. The concept of an "App" that uses app-specific Modules,
  3. Code optimized for use with a persistent cache, and
  4. Prescriptive conventions for code consistency across many developers.
  5. A Model+View Architecture (see next)

Model+View Architecture

Unlike MVC plugins WPLib does not take control of WordPress URL routing. Instead Models+Views are about data elements in WordPress. Currently in WPLib core we have Model+View classes for Posts and Post Types, Taxonomy and Terms; and Roles and Users.

The Model+View architecture provides:

  1. The ability to build really complex yet maintainable WordPress sites,
  2. A clear separation of concerns between backend developer and front-end themer,
  3. Familiar yet consistent functionality to address common use-case, and
  4. An architecture that results in naturally reusable modules.

Can Be Used Incrementally

Note WPLib can be used a little or a lot. It can be added incrementally to a site, or a site can be started with WPLib as its base. The latter obviously provides the most benefits.

##Status WPLib is in beta status at version 0.13.4 in master.

We are actively working on it with a goal to develop stable beta versions that can be used in production, and then a 1.0.0 version when we are comfortable that the majority of the API will not need to change.

##Demo Themes Unfortunately these are woefully out-of-date, and may have bugs with the latest version of WPLib (remember, we are still pre-1.0 and are still changing things.)

We plan to update them in the near future, sooner if we have people who are pushing us to do so. :-)

  • Underscores4WPLib - A port of an Underscores starter theme that can be used as a starter theme but is intended more to allow for comparison between standard WordPress theming practices and using WPLib best practices instead.
  • LawPress - A demo theme that will eventually be a full-fledged law firm CMS starter theme.

##History WPLib is based on at least five (5) generations of code developed over seven (7) years.

The 1st and 2nd generations were named Sunrise and the 3rd and 4th were called NewClarity Lib (we did not release that publicly as it was focused on meeting the short term needs of clients and not focused on being widely usable.)

The architecture concepts and the implementation is now simple enough and mature enough to release publicly.

##Discussion Join the discussion on Slack. To gain access email [email protected].

##Core Committers

##License

GPLv2+

wplib's People

Contributors

devbox-newclarity avatar mikeschinkel avatar sarutole avatar syntacticnacl avatar waffle-iron avatar wpscholar avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.