web-dev-qa-db-ja.com

Node.js MVCフレームワーク

Node.jsを使用してウェブサイトを開発したいと思います。私はここで多くのフレームワークを見てきました: https://github.com/joyent/node/wiki/modules#web-frameworks-micro しかし、どれが最も受け入れられているかわかりませんコミュニティ(たとえば、最も人気のあるコミュニティ)。誰かがこれらのフレームワークのいずれかを試したり、本番環境で使用したりしましたか?あなたの経験は何ですか?ありがとう。

31

Express.jsは、一般的なフレームワークとして使用することが非常に人気があるようです。と組み合わせ socketio.jsおよびunderscore.jsこれらは非常に人気のあるライブラリですが、MVCではありません。

MVCの場合、私はbackbone.js/spine.jsと他の人に推奨を与えることはできません。 node.jsは本番環境ではあまり使用されていないため、人気の高いフレームワークはまだないと思います。

どこかにnpmで人気のあるダウンロードの統計があります。あなたがそれらを見つけることができるかどうかを確認してください。

24
Raynos

今後登場するもう1つの優れたMVCフレームワークは、Sails.JSです。 Ruby on Rails)から着想を得ており、ソケットのサポート、Restful APIなどの機能を備えています。

http://www.sailsjs.com/

15
user2137661

試す RailwayJSCompoundJS

RailwayJSは殺され、CompoundJSに置き換えられたようです。

Railwayで始まり、Compoundに移行したい人のための guide があります。

15
Dan Midwood

私は Locomotive をリリースしました。これはRuby on Railsに触発されたMVCフレームワークです。

Expressは、特に小さなアプリでは驚異的です。それを認識して、機関車はExpressの上に完全に構​​築されます(ExpressがConnectの上に構築する方法と同様)。機関車は、本質的に、リソースの豊富なルートを宣言してルーティングヘルパー関数を生成できるルーターと共にコントローラーレイヤーを追加します。内部的には、すべてがExpressによって提供されています。つまり、ビューレイヤーは同じままで、すべてのミドルウェアを再利用できます。

Nodeを学習する際のより大きなハードルの1つは、Webアプリケーションを最適に構造化する方法を理解することです。機関車は、Ruby on Railsの規則を使用してその問題を解決しようとします、ExpressとNodeの全機能を保持します。

14
Jared Hanson

matador があります。これはMVCであり、継承モデル、express、hogan.js、valentineの Klass など、さまざまな既存のコンポーネントで構成されています。 Backbone.jsは、クライアント側でほとんど使用されます。ノードの場合、私が知っているのはおそらくマタドールだけだと思います。

マタドールを本番環境で使用する場合、または既存のMVCプラットフォームを置き換える場合(または少なくともそれを使用するためのボトルネック/正当な理由がある場合)、それはかなり新しく、生産性もJavaScriptに依存するため、使用しないことをお勧めしますあなたが持っているリソース。私たちは自分でnode.jsを非常に幅広く使用しており(私たちのnode.jsの展開は、現在までに+4百万人近くのユーザーにサービスを提供しています)、ここにはかなりの数のJavaScriptスペシャリストがいます。お役に立てば幸いです。

4
Benny Tjia

GeddyはNodejsの元のMVCフレームワークでした。興味がある場合は http://geddyjs.org をチェックしてください。

3
Techwraith

Derby と呼ばれる新しいものに出くわしました。その主な利点は、Railsとバックボーン、またはDjangoを使用しようとするときに私たちがよく書く「接着コード」の多くを削減することです(彼らが言うとおり)。 _とバックボーンを一緒に。ドキュメントは、ノードフレームワークにとってもかなりまともです。

2
Greg Guida

チェックできるフレームワークがいくつかあります。

ThinkJS https://thinkjs.org/ ES6/7の全機能を使用してNode.jsアプリケーションを開発できる最初のNode.js MVCフレームワーク。

羽毛 http://feathersjs.com/ ミニマリストのリアルタイムフレームワーク。

流星 https://www.meteor.com/

Keystone.js http://keystonejs.com/ ExpressとMongoDBに基づいて構築されています(MITライセンス)。

seneca.js http://senecajs.org/ ビジネスロジックの外部にあるすべてのもの(データベース、キャッシュ、サードパーティの統合など)は、マイクロサービスの背後に隠されています。

Catberry http://catberry.org/ は、サーバーとクライアントの両方の環境で同じコードベースを使用して、クライアントが「単一ページアプリケーション」として表示するものをレンダリングするアプリを作成するのに役立つように開発されました。

Nuke.js http://nukejs.com/#/ 高速フレームワーク。スタックには、プリムス、エクスプレス、ミスリル、モンゴッド、レディスが含まれています

Hapi.js http://hapijs.com/ Node.js用のリッチWebアプリケーションサーバーフレームワーク。

total.js https://www.totaljs.com/ フレームワークには、完全なWebサーバー、ビューエンジン、SMTPメール送信者、ローカリゼーション、画像処理、WebSocket、同形コード、および多くのユーティリティが含まれています

1
sg7

Monorail.js-Node.js用の超軽量MVCフレームワーク https://github.com/runexec/Monorail.js

1
Dan Smart