An open API service indexing awesome lists of open source software.

https://github.com/andy87/nano-framework

simple PHP framework.
https://github.com/andy87/nano-framework

faststart framework microframework php

Last synced: about 1 year ago
JSON representation

simple PHP framework.

Awesome Lists containing this project

README

          


+

Simple PHP framework `Nano` v1

#### Fast start with
> [nano-application](https://github.com/andy87/nano-app/)

# En
* fast, low size, easy expand
* Nice interaction interface (subjectively)

## Application structure

```
📁
├─📁 config Directory with config files
│ ├─📄 common.php Common config file
│ └─📄 main.php Main config file
├─📁 controllers Library Controllers
│ ├─📁 console Comingsoon...
│ └─📁 web Directory with `web` Controller class
│ └─📄 Controller.php file
├─📁 static Directory with public files & templates views
│ ├─📁 css Library `CSS files`
│ ├─📁 js Library `JS files`
│ └─📁 img Library `Images`
├─📁 vendor Composer directory
├─📁 views Library with `views`
│ ├─📁 _layouts `views` for layouts
│ └─📁 `views` for
│ └─📄 .php `views` for
├─📄 .gitignore Git ignore file
├─📄 .htaccess Apache config file
├─📄 composer.json Composer config file
├─📄 endpoint.php Endpoint
└─📄 README.md This file O_O
```

## endpoint

```php

const ROOT = __DIR__;

include ROOT . "/vendor/autoload.php";

framework\Nano::setup([
require ROOT . "/config/common.php",
require ROOT . "/config/web.php"
])->run();

```

## More example/info:
- [📄 Structure](Docs/en/structure.md) [(rus)](Docs/ru/structure.md)
- [📄 Endpoint](Docs/en/endpoint.md) [(rus)](Docs/ru/endpoint.md)
- [📄 Config](Docs/en/config.md) [(rus)](Docs/ru/config.md)
- [📄 Controllers](Docs/en/controller.md) [(rus)](Docs/ru/controller.md)

# Ru

* быстрый, мало "весит", легко расширяемый
* Приятный интерфейс взаимодействия (субъективно)

#### Быстрый старт с
> [шаблоном приложения](https://github.com/andy87/nano-app/)

#### Цель фреймворка:
> Быстрое создание простых сайтов и прототипов

Что он умеет? Что-то умеет, но так и хочется сказать: да практически ничего!
Фреймворк был специально написан с минимальным количеством функционала, но имеет простой способ расширить этот функционал.

#### Возможности фреймворка:
- разделять код на `controllers` и `views`
- `views` может отрендерить другие `views`
- `views` может использовать обёртку(`layout`)
- `action` имеет 3 `Content-Type` ответа:
- HTML (по умолчанию), JSON, RAW
- легко расширить функционал фреймворка, создавая свои компоненты на основе базовые классов