Download the PHP package boke0/boke0ick_mecha without Composer

On this page you can find all versions of the php package boke0/boke0ick_mecha. 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 boke0ick_mecha

ボケマリック機構

モダンなAPI実装を目指したPHP製CMSです。 Twig(PythonのJinjaと同じ文法のテンプレートエンジン)用のHTMLを用いてテーマを作成でき、 Markdownで記事を書くことができます。

設定ファイルを記述することでテーマやルーティングをページごとに細かく設定できる柔軟さが作者なりの売りです。

インストール方法

Composerを使う

GitとComposerを使う

ディレクトリ構造

サイトの構造の設定

URL設計はcontents/struct.jsonに記述します。

上記の設定では、以下のようにルーティングされます

URLの例 テーマ 適用されるテンプレート 記事のパス
/ default index.tpl.html contents/__index.md
/about default about.tpl.html contents/about.md
/article/0001 hoge article.tpl.html contents/article/0001.md
/news/001 hoge article.tpl.html contents/n/files/001.md

例の用に、基本的にはURLと同じルールで記事ファイルを参照します。 例外的なルールを適用したい場合は、ruleディレクティブを指定してください。

contentsにおける参照先がディレクトリの場合は、そのディレクトリの__index.mdをロードします。

記事の投稿

記事はMarkdownを用いて記述してください。

このとき、HugoなどでもサポートされているYAML形式のFrontMatterを記述し、メタ情報を設定することができます。

テーマのインストール

themes/ディレクトリにディレクトリごとコピーしてください。

プラグインのインストール

plugins/ ディレクトリにプラグインのディレクトリごとコピーしてください。 このとき、 plugins/<プラグイン名>/_construct.php というパスに \_construct.php が設置されるようにしてください。

テーマ作成

テーマは themes/ ディレクトリ内にディレクトリを作成し、 その中にtwig用のHTMLテンプレートファイルを設置するだけで作成することができます。

テーマの公開

テーマのソースコードを公開したい場合は、 テーマのディレクトリごとGitで管理してしまうことをおすすめします。 そうすることで、利用者は themes/ ディレクトリ下でリポジトリをcloneするだけで利用を始めることができます。

テーマで独自の素材を利用したい場合は、テーマのディレクトリ内に素材を設置し、以下のURIを指定してください。

プラグイン開発

プラグインは plugins/ ディレクトリ内にディレクトリを作成し、 その中にPHPファイルを設置することで作成できます。

プラグインのディレクトリ内には、最低限 __construct.php を設置する必要があります。ボケマリック機構本体からはこのファイルが呼び出され、 このファイルに記述されている通りにプラグインの挙動を設定します。

デフォルトで設置されているSamplePluginを例に解説します。

プラグインの名前空間はPsr-4に従い、 Boke0\Mechanism\Plugins\<プラグイン名> としてください。

このプログラム内で一つの Boke0\Mechanism\Api\Plugin クラスを継承したオブジェクトを作成し、 拡張機能を設定してオブジェクトを返却してください。

API使用

ボケマリック機構から提供されているAPIを紹介します。初版では、

の2つの機能が搭載されています。

エンドポイントの作成

任意のURLにおいて特定のクラスメソッドを実行するように設定することができます。

エンドポイントを作成するときは、 Boke0\Mechanism\Api\Endpoint を継承したクラスを定義してください。

例のように、ドキュメントコメントでパスを設定しましょう。 パスだけでなく、リクエスト時のメソッドも設定することができます。

クラスはPSR-15で定められているRequestHandlerインターフェースを実装している必要があります。 EndpointクラスにはPSR-7準拠のレスポンスオブジェクトを生成するメソッド Endpoint::createResponse($status_code,$reason); が定義されているので、これを呼び出してレスポンスを返却してください。

また、Endpoint::twig($filename,$placeholder,$status_code,$reason)メソッドを用いることで、Twigでテンプレートを描画したレスポンスを直接取得することができます。 ここで用いられるTwigはプラグインのディレクトリのtpl/ディレクトリを参照します。 また、csrf_field()関数をコールすることで、ボケマリック機構本体に適用されているCSRF対策を利用することができます。

プラグインのエンドポイントで独自の素材を利用したい場合は、/assetsディレクトリ内に素材を設置し、以下のURIを指定してください。

テンプレートはプラグインのディレクトリ内のtpl/ディレクトリのファイルを参照します。

テンプレートエンジンの拡張

ボケマリック機構内でレンダリング時に使用されるTwigに対し、 拡張機能(TwigExtension)を設定できます。 Twigでサポートされている拡張方法であればここでも適用することができます。 以下に、

と実行すると

と表示されるテンプレートエンジン拡張の例を示します。

Twigの拡張を行うときは、 Boke0\Mechanism\Api\TemplateExtension クラスを継承したクラスを定義してください。

プラグインの公開

テーマのソースコードを公開したい場合は、 こちらもテーマと同様にGitを使用することをおすすめします。


All versions of boke0ick_mecha with dependencies

PHP Build Version
Package Version
Requires boke0/skull Version ^2.1
boke0/clavicle Version ^1.6
boke0/scapula Version ^1.6
boke0/rose Version ^1.2
twig/twig Version ^3.0
mnapoli/front-yaml Version ^1.6
erusev/parsedown-extra Version ^0.7.1
cosmicvelocity/media-types Version >=1.0
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 boke0/boke0ick_mecha contains the following files

Loading the files please wait ....