Stormmore PHP Framework.

Developer-friendly framework without boilerplate.
All you need in one file with powerful cache system controlled by you not by server.
Forget about time-depended cache system.

index.php
<?php
require("stormmore.php");
$app = app();
$app->addRoute("/", function() { echo "Hello World" });
$app->run();
?>

Getting started

Getting started

Learn how to build robust applications with Stormmore Framework and Stormmore Cache.

Installation

Step-by-step guides to setting up your system and installing framework.

Guide

Learn how the build applications from scratch.

Stormmore Cache Api

Learn how to keep entry in cache until it change.

Stormmore Word

Learn how working application is build on.

Install on your computer, go through guide, learn how to use cache, run Stormmore Word platform, contact if you need help or any consultation.


Quick start

The obvious question is why another framework ?

Answer is simple - it's not like other frameworks you have seen.

It was made by reversing things - started making application and then I was developing framework to satisfied requirements. Abstraction over implementation, similar concept is used in TDD.

Powerful cache system!

Every asset of your application can be cached and controlled by you.
Rebuild entry cache only when is needed.
It means that blog entry will be loaded from cache until end of the world or changed by author. It's not time-dependant cache, one write to database and hundred thousands reads from cache omitting database.

Code first

No configuration is needed. All you need is to include one file framework to start coding your application.

Closs loader

Create your class and allow Stormmore Framework to load it for you, no include directive is needed.
Namespace aren't necessary and don't have to reflect directory structure, refactoring code is much simpler. It sounds magically but it's not.

Dependency injection

It works out of box. Add your component and use, no need to configure or registering things.

Routing

Just make class and give it simple annotations informing about routing.

#[Controller]
#[Route("/admin/articles")]
readonly class ArticleController
{
}

Small footprint

There is no unnecessary code so everything is one file - literally 100% tools needed to accomplish everyday tasks (and more!) are in there.

Docker

Template project comes with docker-compose.yml. You don't need to install PHP, just run command.

docker compose watch

Stop worry about PHP versions, extensions and other incompatibilities.

Intuitive template system

Clear syntax

@foreach($articles as $article)
    <div>{{ $article->title }}</div>
@end

Build-in formatters and view helpers

@foreach($articles as $article)
    <div>{{ $article->created_at | date }}</div>
@end

Build-in i18n support

 <div>{{ _ $myI18nStringToDisplay }}</div>

Jetbrains PhpStorm

Use JetBrains PhpStorm to enhance user experience.