Download the PHP package nations-original/sf without Composer

On this page you can find all versions of the php package nations-original/sf. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package sf

PHP Simple Framework

A lightweight, modern PHP 8.3+ framework built on top of Symfony and Doctrine, designed for rapid web application development with clean attribute-based configuration.

Package: nations-original/sf Namespace: PHP_SF\System\ License: ISC Author: Dmytro Dyvulskyi — CEO & Lead Developer, Nations Original


Documentation

Full documentation is available at wiki.nations-original.com/framework.

The wiki covers every aspect of the framework in depth — from installation and first steps to advanced topics like dual-kernel architecture, caching, message queues, and testing. If you are new to the framework, start there.

Section Topics
Getting Started Installation, constants, creating your first page
Core Lifecycle, controllers, routing, middleware, views, sessions, redirects
Dual Kernel PHP_SF kernel + Symfony kernel coexistence, bootstrap order
Data & Persistence Entities, repositories, validation, cache, fixtures, enums
Infrastructure Docker, Redis, RabbitMQ, template cache, kernel config
Supporting Features Helper functions, translation, events, CRUD controller
Development & Testing PHPUnit, dev mode
Frontend Asset building with Webpack

Getting Started

This package is the framework core. To start a new project, use the template:

To add the framework to an existing Symfony project:

Requires PHP 8.3+ with strict typing, plus ext-apcu, ext-redis. See Installation guide for full prerequisites.


Overview

PHP Simple Framework sits alongside Symfony's kernel inside the same PHP process. When a request comes in, the framework's router tries to match it first using its own attribute-based routing. If no match is found, the request falls through to Symfony. This gives you the performance and simplicity of a hand-rolled framework while retaining the full power of the Symfony ecosystem (DI container, console, bundles, Doctrine) when you need it.

See Dual Kernel Architecture for a detailed explanation.

Request Lifecycle

  1. public/index.php bootstraps autoloader, global functions, and constants
  2. PHP_SF\System\Kernel boots — registers controllers, translations and templates
  3. Router resolves the URL against registered #[Route] attributes (cached in Redis)
  4. Middleware chain executes (pre-dispatch)
  5. Controller method is called, producing a Response, RedirectResponse, or JSON
  6. Response is sent; output buffer is flushed

Full 17-step trace: Request & Response Lifecycle.


Core Concepts

Routing

Routes are declared with PHP 8 attributes directly on controller methods. No separate routing file needed.

Full reference: Routing.

Controllers

Extend AbstractController and return a Response, JSON, or redirect.

Available JSON shortcut methods: ok(), created(), badRequest(), unauthorized(), forbidden(), notFound(), conflict(), unprocessableEntity(), etc.

Full reference: Controllers.

Views

Views are PHP classes that extend AbstractView and implement a show() method. Output buffering captures the rendered HTML; the framework injects the configured header and footer automatically.

Full reference: Views.

Middleware

Middleware files extend Middleware and are referenced by name on #[Route] attributes. Middleware can be composed with:

Full reference: Middleware.

Entities

Entities extend AbstractEntity and use Doctrine ORM attributes alongside PHP_SF validation attributes.

Full reference: Entities · Validation.

Multi-Database & EntityManager

The framework supports multiple simultaneous Doctrine entity managers. Use the em() helper with a connection name — never rely on the default EM.

Full reference: Repositories.

Caching

The ca() helper returns the best available cache adapter automatically. Specific adapters are also accessible directly.

Full reference: Cache · Redis.

Helper Functions

Global helper functions cover the most common framework operations without requiring dependency injection.

Function Purpose
em(string $name) Get a Doctrine EntityManager by connection name
qb(string $name) Get a Doctrine QueryBuilder
ca() Get the auto-selected cache adapter
rca() / aca() / mca() Get Redis / APCu / Memcached adapter
rc() Get the Redis client
s() Get the current Session
routeLink(string $name, array $params) Generate a URL from a named route
_t(string $key) Translate a string

Full reference: Helper Functions.

Translation

Translation files live in lang/ and are loaded during kernel boot. Use _t('key') anywhere in templates or controllers.

Full reference: Translation.

Message Queues (RabbitMQ)

RabbitMQ publisher and consumer are available via PHP_SF\System\Database\RabbitMQ and RabbitMQConsumer. Queue names are defined in App/Enums/Amqp/QueueEnum.php.

Full reference: RabbitMQ.


Namespace Structure

Namespace Path Purpose
PHP_SF\System\ src/ Framework core (routing, kernel, cache, base classes)
PHP_SF\Framework\ app/ Framework-provided app skeleton (controllers, middleware)
PHP_SF\Templates\ templates/ Built-in template files
PHP_SF\Tests\ tests/ Framework test suite

License

ISC — see LICENSE.MD.


All versions of sf with dependencies

PHP Build Version
Package Version
Requires php Version 8.5.*
nations-original/sf-cache Version ^3.0
symfony/deprecation-contracts Version ^3.7
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package nations-original/sf contains the following files

Loading the files please wait ...