こんにちは、しぐれがきです。
自作のWebアプリ作成にあたり、グリッドライブラリを導入しようと考えています。
一応、自作といっても公開も視野に入れたいので、事前に商用利用可能かを調査しました。
せっかく調査したので、本記事で備忘録としてまとめたいと思います。
目次
目次
グラフ描画ライブラリへの要件
■商用利用
・商用利用可能なこと
■必須機能
・グリッドの入力が可能なこと
・グリッドないデータの変更ができること
・行削除ができること
■あればうれしい機能
・検索機能
・ソート機能
調査結果
グリッドライブラリ一覧
特定キーワードでググってグリッドライブラリをリストアップしました。
調査方法は調査方法を参照
※紹介サイト数は検索結果が重複したものはカウントしてません。
グリッドライブラリのライセンス調査結果
それぞれのWebサイトでライセンスについて調査しました。
結果は以下です。(2019年4月にag-Gridのライセンス形態を更新)
ライブラリ | 無償商用利用 | ライセンス形態 | 補足 | |
---|---|---|---|---|
1 | ag-Grid | ・ag-Grid Community ・ag-Grid Enterprise |
community版はMITライセンスで商用利用可能 | |
2 | DataTable | MIT License | サポート契約は有料で結べる(https://datatables.net/purchase/index) | |
3 | dhtmlGrid | ?GNU GPLv2 ?Commercial License ?Enterprise License |
機能の制限がつくが?を選べばフリーで商用利用可能 (https://dhtmlx.com/docs/products/licenses.shtml) |
|
4 | ExtJS Grid | |||
5 | FlexGrid | ユーザーライセンス +ランタイムライセンス |
||
6 | Gelsheet | GNU GPLv3 | パッケージ内のlicense.txtに記載 日本語のサイトあり(https://ja.osdn.net/projects/sfnet_gelsheet/) |
|
7 | grrid.js | MIT License | パッケージ内のMIT-LICENCEに記載 (https://github.com/Swirrl/grrid/blob/master/MIT-LICENCE) |
|
8 | Handsontable | MIT License | “If you need full Excel-like interactivity in a web app, look no further” エクセル的な感じで使えるかも グラフライブラリを合わせて使えそう (https://docs.handsontable.com/pro/1.11.0/tutorial-licensing.html) 有償版は高機能のものがある |
|
9 | IgniteUI | 1ソフトウェアに付き、1 開発者ライセンス | 有償ライセンス (https://www.componentsource.co.jp/product/netadvantage-for-ignite-ui-j/licensing) |
|
10 | jqGrid | ?FREE ? NON-COMMERCIAL ?COMMERCIAL AND GOVERNMENT LICENSES |
?は$199以上(http://guriddo.net/?page_id=103334) | |
11 | jQuery EasyUI | ?Freeware Edition ?Commercial Edition |
非営利目的なら?でもOK (https://www.jeasyui.com/license_freeware.php) |
|
12 | jQuery quicksearch plug-in | MIT License | jQueryと同じライセンス (https://jquery.org/license/) |
|
13 | jQuery-KingTable | MIT License | パッケージ内のjQuery-KingTable/LICENSEに記載 (https://github.com/RobertoPrevato/jQuery-KingTable/blob/master/LICENSE) |
|
14 | jQWidgets | ?Non-Commercial License ?Commercial License |
Website Licenseは$199、Developer Licenseは$399、Team Licenseは$1499 | |
15 | kawasima/jagrid | Eclipse Public License -v 1.0 | パッケージ内のjagrid/LICENSE.mdに記載 (https://github.com/kawasima/jagrid/blob/master/LICENSE.md) |
|
16 | Knockout-Contrib/KoGrid | MIT License | パッケージ内のKoGrid/README.mdに記載 (https://github.com/Knockout-Contrib/KoGrid/blob/master/README.md) |
|
17 | mmurph211/Grid | MIT License | パッケージ内のGrid/README.mdに記載 (https://github.com/mmurph211/Grid/blob/master/README.md) |
|
18 | OmniGrid | – | サイト見つからず | |
19 | SpreadJS | ?一般商用ライセンス ?特別契約ライセンス ?企業向けライセンスオプション |
???は有償 (http://jp.spread.grapecity.com/spreadjs/purchase/license/) |
|
20 | Sensei Grid | MIT License | パッケージ内のsensei-grid/LICENSE.mdに記載 (https://github.com/datazenit/sensei-grid/blob/master/LICENSE.md) |
|
21 | Sigma Grid | LGPL | 2010から更新なし (http://freecode.com/projects/sigmagrid) |
|
22 | SitePen/dgrid | BSD License | ライセンスについてはトップページに記載 | |
23 | SlickGrid | MIT License | パッケージ内のSlickGrid/MIT-LICENSE.txtに記載 (https://github.com/mleibman/SlickGrid/blob/master/MIT-LICENSE.txt) |
|
24 | sorttable | GPLライセンスみたい? | ||
25 | Super Tables | – | サイト見つからず | |
26 | Table Sorter | MIT License GPL Liscense |
ライセンスについてはトップページに記載 | |
27 | TOMUSS | GPL | ダウンロードページにライセンスの情報が記載 (http://perso.univ-lyon1.fr/thierry.excoffier/TOMUSS/home.html#n10) |
|
28 | w2ui | MIT License | ライセンスについてはフッターに記載されている Code licensed under the MIT License. Documentation licensed under CC BY 3.0. |
|
29 | ZK Spreadsheet | ?LGPL ?ZOL or Commercial License |
?はfree for open source and proprietary use |
グリッドライブラリの機能調査結果
商用利用可能なグリッドライブラリについて機能要件として以下を調査しました。
【必須要件】
?グリッドの入力が可能なこと
?グリッド内データの変更ができること
?行削除ができること
【あればうれしい機能】
?検索機能
?ソート機能
また、GPLライセンスは商用の場合、公開義務が出てくるので対象外としました。
ライブラリ | ライセンス形態 | 必須要件 | あれば | 備考 | ||||
---|---|---|---|---|---|---|---|---|
? | ? | ? | ? | ? | ||||
2 | DataTable | MIT License |
参考: (http://qiita.com/nissuk/items/7ac59af5de427c0585c5) 編集機能もありますが有償です。 |
|||||
3 | dhtmlGrid | ?GNU GPLv2 ?Commercial License ?Enterprise License |
bootstrapはうまくいっていないみたい (https://stackoverflow.com/questions/33388564/how-to-debug-a-bootstrap-dhtmlxgrid-css-conflict) GPLライセンスのため対象外 |
|||||
6 | Gelsheet | GNU GPLv3 |
エクセルな感じでいい GPLライセンスのため対象外 |
|||||
7 | grrid.js | MIT License |
デモページ参考 (https://codingmania.net/demo/table/0001/) |
|||||
8 | Handsontable | MIT License | エクセルな感じでいい | |||||
12 | jQuery quicksearch plug-in | MIT License | 使い方:http://www.sukicomi.net/2015/06/quicksearch-jquery.html | |||||
13 | jQuery-KingTable | MIT License | 使い方:http://archive.fo/HCSA9 | |||||
15 | kawasima/jagrid | Eclipse Public License -v 1.0 | ||||||
16 | Knockout-Contrib/KoGrid | MIT License | ||||||
17 | mmurph211/Grid | MIT License | ||||||
20 | Sensei Grid | MIT License |
デモページが開けない 画像から判断 |
|||||
21 | Sigma Grid | LGPL |
デモページが開けない 2010から更新なし、GPLライセンスのため →今回は非該当 |
|||||
22 | SitePen/dgrid | BSD License |
デモページにて確認 (http://dgrid.io/#demos) |
|||||
23 | SlickGrid | MIT License | ||||||
26 | Table Sorter | MIT License GPL Liscense |
デモページにて確認(http://tablesorter.com/docs/) GPLライセンスのため対象外 |
|||||
27 | TOMUSS | GPL |
複数人でドキュメントを作り上げるアプリ デモページではよくわからない、GPLライセンスのため今回は非該当 |
|||||
28 | w2ui | MIT License | デモページにて確認(http://w2ui.com/web/demo/grid) |
グリッドライブラリの選定
本章では要件を満たすグリッドライブラリに対して、私自身が使用するグリッドライブラリを1つ選定したので、そのときの観点を紹介したいと思います。
フリーで商用利用可能かつ機能要件も満たすグリッドライブラリは以下の4つでした。
・Handsontable
・kawasima/jagrid
・Sensei Grid
・SlickGrid
あとはこの中で一番人気なライブラリを選ぶことにします。
Google Trendsを調べてみると人気なグラフ描画ライブラリは以下の順番だと分かりました。
1.Handsontable
2.SlickGrid
3.jagrid
4.Sensei Grid
SlickGridは明らかに下がり気味です。Handsontableは2012年から2015年まで右肩上がりです。最近は横ばいですが、Handsontableが良さそうです。
これより、Handsontableに決定しました。
※残念ながら、2019年4月現在、Handsontableのフリー版は商用利用できなくなってしまったようです。詳細は以下のURL参照。
Handsontable Pricing
(補足)グリッドライブラリの調査
調査方法
以下の検索キーワードで検索をして、上位10コのWebサイトで紹介しているグリッドライブラリをピックアップします。
ヒットしたWebサイト
1.Qiita JavaScriptのGridライブラリ決定版 – SlickGrid
<紹介されているグリッドライブラリ>
・SlickGrid
・DataTable
・jqGrid
・dhtmlGrid
・FlexGrid
2.hifive開発者ブログ 業務システムで使えるグリッドライブラリ×8選
<紹介されているグリッドライブラリ>
・Sensei Grid
・kawasima/jagrid
・mleibman/SlickGrid
・mmurph211/Grid
・SitePen/dgrid
・Knockout-Contrib/KoGrid
・jqGrid
・Sigma Ajax Grid ? Ajax editable data grid ? DHTML grid control with flexibility and user API.
3.OPEN TONE 第1回 JavaScriptによるデータグリッドことはじめ
<紹介されているグリッドライブラリ>
・dhtmlxGrid
・jqGrid
・ExtJS Grid
・OmniGrid
4.NAVERまとめ Javascript グリッドの紹介
<紹介されているグリッドライブラリ>
・jqgrid
・DataTables
・SlickGrid
・Handsontable
5.Build Insider 人気上昇中のJavaScriptライブラリを調べてみた【2016年版】
<紹介されているグリッドライブラリ>
なし
6.Build Insider Excelライクなグリッド表示(スプレッドシート、表計算)を簡単に作れるJavaScriptライブラリ「SpreadJS」の機能概要[PR]
<紹介されているグリッドライブラリ>
なし
7.JavaScript/参考メモ/jQueryでData Table, Grid 操作が出来るライブラリ(2015-03時点)
<紹介されているグリッドライブラリ>
・jQuery EasyUI
・IgniteUI
・jQWidgets
・DataTables
・jqGrid -> Guriddo
・w2ui
・Handsontable
・SlickGrid
8.トイロハ 業務システム開発に役立つ。テーブルによる一覧表示を高機能化するライブラリ×13選
<紹介されているグリッドライブラリ>
・Super Tables
・Flexigrid?
・Table Sorter
・Sigma Grid
・jQuery quicksearch plug-in
・sorttable
・grrid.js
・Gelsheet
・TOMUSS
・ZK Spreadsheet
・jQuery-KingTable
・Handsontable
・Sensei Grid
9.MOONGIFT ag-Grid – 業務要件の殆どを満たせそうなグリッドライブラリ
<紹介されているグリッドライブラリ>
・ag-Grid
10.エンジニア特化型Q&Aサイトteratail 商用利用が無料なJavascriptグリッドライブラリは、どのようなものが存在するでしょうか
<紹介されているグリッドライブラリ>
なし
まとめ
本記事ではグリッドライブラリの特にフリーで商用利用可能かを重点に置いて調査しました。
グリッドはWebアプリを作るときに欲しい機能だと思います。
同じように商用利用を考えている場合は、本記事を参考に検討をしてみてください。
以上!
コメント
とても役に立つブログありがとうございます。お一つ教えて頂ければ幸いです。
初級本一冊を読んでlaravelを触ってみたのですが、
なかなか難しく、ララ帳などの解説サイトも辞書のような解説が多く、
かつ自分の作りたいダウンロードマーケットのような投稿サイトを作る情報も、
ぴったりの物が見つかりませんでした。
まだ新しいので恐らくあまり情報がないのでしょうね。
レンタルサーバもドメインキングなどssh非対応の物は使えないようなので、
このフレームワークを採用してよいか心配になってきました。
もし他にもっと今後伸びそうで簡単なものをご存知でしたら教 えていただければ幸いです。
また、いっそ生のphpで作ってしまうという選択肢もありますが、
圧倒的にフレームワークを使った方が生産性が高く、
セキュリティ対策も考えると危険なのでやめたほうが良いでしょうか?
今時なまで作るなどほぼあり得ないという話も聞きます。
js好さん
お返事遅れてしまい、申し訳ございません。
結論から申し上げますと、フレームワークとしてはLaravelを使ったのが初めてでして、その他のフレームワークについては不明です。
しかし、どのフレームワークを使うかの事前調査をしており、Laravelは今後伸びていきそうで将来性があったため、Laravelを使うことに決めました。
※以下のようなPHPフレームワークを比較しているサイトを参考にしました。
https://www.webprofessional.jp/the-state-of-php-mvc-frameworks-in-2017/
また、フレームワークを使わない点については、js好さんがおっしゃるとおりでセキュリティや生産性の面であまりおすすめしません。
作りたいサイトが商用を意識したもののようですので、なおのこと一から作るのではなく、世界中の方々がアップデートしているLaravelのようなフレームワークを利用するのが良いかと思います。
自分も商用で利用可能なグリッドライブラリを調べているところなのですが
ag-gridは商用無償利用可能です。
pricingにはcommunity版はMITライセンスと書かれており
https://www.ag-grid.com/license-pricing.php
issueにも質疑応答があります。
https://github.com/ag-grid/ag-grid/issues/1526
> Yes, you can use the free version commercially provided you dont use any of the enterprise features
返信が遅れてしまい申し訳ございません。community版はMITライセンスで商用利用できそうですね。情報ありがとうございます。
Handsontable7.0.0以降、フリー版は非商用のみとなったようです。
情報ありがとうございます。確かに、以下URLのHandsontable Pricingで、フリー版の商用利用は不可と記載されていますね。
https://handsontable.com/pricing
フリーでよく使えていたライブラリだったのに、、、残念です。