renegare/weblet-base

Silex Weblet Base 应用

v0.0.0 2014-08-29 10:00 UTC

This package is not auto-updated.

Last update: 2024-09-24 02:44:14 UTC


README

此项目包含一组基础类,可用于创建 Web 应用。它是一个库,应该作为依赖项包含并扩展以满足您的需求。

实际的基础是 Silex*,本质上是一个预配置的 Silex 应用。目标是提供尽可能低的入门曲线。

但是,不要让这限制您项目的雄心壮志 ;).

此库的目标是提供以下功能

  • 可功能测试的架构 #WTH**
  • 配置
  • 错误处理
  • Cookie 会话管理
  • 日志管理
  • 通用健康检查端点(可在 OAuth2 安全之外访问)
  • URL 生成器(Silex 的现成功能)

(此列表不完整,将根据需求增长)

* 使用 Silex v1.2.x(将升级到 2.0,一旦稳定)

** #WTH 是可功能测试的架构 - 这是一个自创的短语,用于描述对您的整个应用程序的集成测试。这不应与“端到端”或“单元”测试混淆(尽管使用了 PHPUnit 作为测试运行器!)。您只测试应用程序,而不是互联网。

文档...

...不存在。然而,至少有一个测试针对每个功能。如果它们太复杂而难以阅读,我可能需要重新编写它们。但不要害怕。当我有时间的时候,文档将是优先事项!

用法

要使用此库,请通过 composer 将其作为项目依赖项包含

composer require renegare\weblet-base:dev-master

(!!! 请使用实际标记的版本进行生产使用,因为 dev-master 可能会未经通知更新并包含错误。 !!!)

然后创建一个实例或扩展类 \Mendeley\Social\Weblet

// Example index.php

/**
 * Pass the app name and configuration to the constructor
 * - No errors are thrown if any yaml file does not exist
 */
$app = new Renegare\Weblet\Base('weblet',
    __DIR__ . '/../app-constants.yml.dist',
    __DIR__ . '/../app-constants.yml',
    ['app.root' => dirname(__DIR__)] // required
);

// enable built in functionality
$app->enableCookieSession();
$app->enableLogging();

// register a route
$app->get('/', function(){
    return 'All Good!';
})->bind('homepage');

// and away we go!
$app->run();

测试

composer test

许可协议

MIT 许可协议 (MIT)

版权 (c) 2014 Renegare

特此授予任何获得此软件及其相关文档副本(“软件”)的人免费使用权,不受限制地处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件的副本,并允许向获得软件的人提供本软件,前提是符合以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“原样”提供,不提供任何形式的保证,明示或暗示,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论是在合同行为、侵权行为或其他行为中产生的,与软件或其使用或其他交易有关。