Invoice Ninja バージョン 5 が登場しました!バージョン 4 の最良の部分を取り入れ、最もリクエストの多かった機能を追加して、他にはない請求書発行アプリケーションを作成しました。 Invoice Ninja YouTube チャンネルをチェックして最新情報を入手するか、今すぐデモを試してください。
セットアップを選択してください
ホストされているアプリのすべての Pro 機能と Enterprise 機能は、ソースコードに含まれています。アプリのクライアント側の部分から Invoice Ninja ブランドを削除するための年間 30 ドルのホワイトラベル ライセンスを提供します。
注:セルフホスト型オプションは、デスクトップ アプリとモバイル アプリをサポートします。
公式の Invoice Ninja - セルフホスト型インストール ガイドに加えて、いくつかのコマンドが用意されています。
git clone --single-branch --branch v5-stable https://github.com/invoiceninja/invoiceninja.git
cp .env.example .env
composer i -o --no-dev
注意: .env ファイル内の APP_KEY はデータの暗号化に使用されます。これを紛失すると、アプリケーションを実行できなくなります。
サンプル データをロードする場合は実行してください。.env を構成することを忘れないでください。
php artisan migrate:fresh --seed && php artisan db:seed && php artisan ninja:create-test-data
Webサーバーを実行するには
php artisan serve
に移動します (localhost を適切なドメインに置き換えます)。
http://localhost:8000/setup - To setup your configuration if you did not load sample data.
http://localhost:8000/ - For Administrator Logon
user: [email protected]
pass: password
http://localhost:8000/client/login - For Client Portal
user: [email protected]
pass: password
公式の Invoice Ninja - 開発者ガイドに加えて、いくつかの洞察を提供します。
API とクライアント ポータルは Laravel を使用して開発されています。このプロジェクトに貢献するには、Laravel に精通していることが不可欠です。
API の機能を検査する場合、使用可能なすべての API エンドポイントを説明する Routes/api.php ファイルから始めるのが最適です。次に、コントローラー メソッドは、アプリケーションの各ドメインへのすべてのエントリ ポイント、つまり InvoiceController / QuoteController を記述します。
平均的な API リクエストは、このパスをたどってアプリケーションに到達します。
public function store ( StoreInvoiceRequest $ request )
{
$ invoice = $ this -> invoice_repo -> save ( $ request -> all (), InvoiceFactory:: create ( auth ()-> user ()-> company ()-> id , auth ()-> user ()-> id ));
$ invoice = $ invoice -> service ()
-> fillDefaults ()
-> triggeredActions ( $ request )
-> adjustInventory ()
-> save ();
event ( new InvoiceWasCreated ( $ invoice , $ invoice -> company , Ninja:: eventVars ( auth ()-> user () ? auth ()-> user ()-> id : null )));
return $ this -> itemResponse ( $ invoice );
}
たとえば、ここでは新しい請求書を保存しており、検証されたリクエストをファクトリとともに請求書リポジトリに渡し、そこで処理および保存されます。
返された請求書は、サービス クラス (app/Services/Invoice) を通過し、そこでさまざまなアクションが実行されます。
次に、非ブロッキング サブタスクを実行するアプリケーション (app/Providers/EventServiceProvider) のリスナーに通知するイベントが発生します。
最後に、請求書が変換され (app/Transformers/)、Fractal 経由の応答として返されます。
上記のクイック ホスティング セットアップを使用すると、開発環境の構築をすぐに開始できます。使用する代わりに
composer i -o --no-dev
使用
composer i -o
これにより、テスト スイートの実行を可能にする phpunit を含む開発者ツールが提供されます。
メイン リポジトリに貢献することを検討している場合は、新しい機能や変更のテストを追加してください。これにより、あなたのPRが受け入れられる可能性が大幅に高まります
また、メイン リポジトリへの追加を計画している場合は、まず Slack で相談してください。技術的な情報があればサポートし、アドバイスを提供できます。
このアプリケーションにセキュリティ上の問題が見つかった場合は、[email protected] に電子メールを送信してください。問題を発見した場合は、責任ある開示手順に従ってください。責任ある開示に関する詳細については、こちらをお読みください。
Invoice Ninja は Elastic License に基づいてリリースされています。
詳細については、「ライセンス」を参照してください。