Simple Website Framework

Introduction

The motivation behind creating this framework stems from the proliferation of CMS systems like WordPress, Wix, Squarespace, and similar apps. However, a common issue with these platforms is their top-heavy nature. For instance, WordPress comprises around 2,500 files due to its amalgamation of various projects into a single product. While this approach has its merits, it often leads to complexity, making it challenging for both developers and end-users.

Through years of development experience, it has become evident that end-users frequently neglect website maintenance and updates, despite their best intentions. This neglect poses a frustration for developers who strive for their clients' website success but face the reality of eventual disrepair.

A significant pain point lies in the complexity introduced by feature-rich editors. While unavoidable to some extent, I have developed a system aimed at mitigating these challenges.

End Users

Creating new pages or blog posts is as straightforward as creating an HTML file and dropping it in the right folder. Each page file includes a short metadata block at the top — HTML comments that define the title, date, author, image, layout, and SEO information. The framework fills in sensible defaults for anything left blank.

For those who prefer to work in the browser, an optional editor plugin is available. It adds a password-protected editor to any page via a secret URL, letting you edit content and metadata or create new pages without touching the file system directly. See the Editor documentation for setup instructions.

Developers

For developers, the framework provides a customizable template structure located within the 'template' folder. The 'skeleton' template serves as a foundational blueprint, allowing developers ample control over customization. Familiarity with WordPress theme development aids in navigating these template files, which offer extensive documentation and styling cues.

The framework ensures code stability by segregating critical functions from the template files, minimizing the risk of inadvertent breaks. Configuration options are centralized within the 'config' folder, while additional plugins can be seamlessly integrated via the 'plugins' folder, with comprehensive documentation provided.

Exploring the 'index', 'config', 'header', and 'footer' files provides a holistic understanding of the framework's architecture and functionality.

tl;dr

In essence, the Simple Website Framework empowers both end-users and developers with comprehensive control. While this overview scratches the surface, subsequent articles will delve deeper into its functionalities, offering a detailed exploration of its capabilities.

Simple Website Framework

A lean, flat-file PHP framework with no database, no bloat, and no black boxes. Build something clean and keep control of every part of it.

Contribute on GitHub

Found a bug? Have an idea? The project is open source and contributions are welcome. Find it on GitHub.

Documentation

This site is the living documentation for the framework. Every feature is demonstrated in the place it's meant to be used. Start with the introduction or dive straight into the setup guide.