# FolderWeb A minimal, file-based PHP framework for publishing content that will work for decades. **Just enough, nothing more.** FolderWeb applies minimal PHP to enable modern conveniences while remaining maintainable for years or decades. No frameworks, no build tools, no JavaScript—just HTML, PHP 8.3+, and CSS. This is not a CMS with an admin panel, not a single-page application. ## Getting Started ### Requirements - PHP 8.3 or higher - A web server (Apache, Nginx, or PHP's built-in server) ### Quick Start 1. Clone or download this repository 2. Point your web server's document root to /content ## Development ### Creating Content 1. Create a directory for your content in the document root 2. Add a content file (.md, .php or .html) 3. Optionally add `metadata.ini` for title, date, and summary 4. Optionally add `cover.jpg|webp` for list view thumbnails Content is immediately accessible at the URL matching the directory path. **Example structure:** ``` /content/ about/ page.md blog/ 2025-11-01-hello-world/ article.md cover.jpg metadata.ini ``` ### Customization All customization lives in `custom/`: - **Styles:** Place CSS in `custom/styles/base.css` - **Templates:** Override defaults by placing files in `custom/templates/` - **Fonts:** Add font files to `custom/fonts/` - **Configuration:** Copy `app/config.ini` to `custom/config.ini` and modify Never modify files in `/app/default/`—always override them in `custom/`. ### File-Based Routing The folder hierarchy dictates URL structure: - `/about/page.md` → `yoursite.com/about` - `/blog/2025-11-01-post/article.md` → `yoursite.com/blog/2025-11-01-post` - Dates in folder names are automatically extracted and formatted - Directories with subdirectories automatically show list views ### Metadata Use `metadata.ini` files for structured data: ```ini title = "My Page Title" date = "2025-11-01" summary = "A brief description of the page" ```