Analog of MEAN.JS stack for Hapi.js - mean-stack

MEAN.JS is a full-stack JavaScript solution that helps you build fast, robust, and maintainable production web applications using MongoDB, Express, AngularJS, and Node.js.
In this formula I want to replace Express by Hapi.js.
Does anybody know analog of MEAN.JS but for Hapi.js?

As far as I can tell hanx.js is the closest match to MEAN.js. The downside is as you already mentioned that it uses PostgreSQL and you are looking for MongoDB.
There is also frame but it brings only the server side to the table. You need to build your own client.
Hope this helps you a bit.

Related

What are the differences between using a websocket based technology versus a realtime database like RethinkDB?

Recently, I found myself wanting to develop a web application using real-time technologies. As far as I see, I have two ideal solutions.
Use WebSockets. (in my case Socket.io)
use a real-time database like RethinkDB (I guess stuff like Pusher and PubNub also fall into this category too)
I am lost, however. What are the technical differences between these two solutions? When should I prefer one over the other?
They actually work really well together. Using RethinkDB changefeeds to watch for changes in the database and then using socket.io to pass those changes to the client(s) is a good way to use them in tandem. I'd recommend taking a look at Jorge Silva's answer to this similar question.
socket.io vs RethinkDB changefeed
I was only familiar with this because of a tutorial I did with an interesting tech stack of React, Redux, RethinkDB, Express, & Socket.io. I'm not sure what you're using for your front-end/view layer but this might be helpful for learning how to integrate RethinkDB+Socket.io
http://webapplog.com/reactive-web-stack/
Good Luck!

Making a chat app using AJAX, Servlet and JSP on GAE

I'm a CS student trying to do some side projects during this summer. One of my aims to is create a chat app which will be ultimately hosted on GAE. I am new to web development so I'm trying to shoot around in the dark hoping to hit the target but I guess it will be a major waste of my time. The rationale for using servlets and JSP is that GAE requires Java for the backend. I hope to use AJAX to do the front-end.
However it is hard for me to put all the technologies together to make it work. I am having trouble with the design. I don't need any codes, but rather help with the design patterns.
I am confused with how GAE works. Since GAE requires Java/PHP/Python etc, is it possible to deploy the client coded in AJAX using GAE? Do I require two GAEs, one for the client and one for the server which is coded in Java?
I am also quite lost with how to connect the AJAX technologies with the Servlet & JSP technologies. I'd appreciate it very much if you guys can provide a step by step instruction on the design pattern. Links to online tutorials will be very much appreciated. My style is to learn as I go.
Ultimately, my aim is to get an chat app (very simple one where all users can see each other messages) up and running on GAE to get a feel of the whole web development process (code, run, deploy).
Just a side note, I don't know any PHP/MySQL (but will learn later if I get the whole web dev thingy down to include database features).
Thank you all.
There's a LOT of stuff available out there to read if you just search for Google App Engine. Start with the documentation and work through the tutorials. It's not a waste of your time to learn, since you don't already understand it.
Google App Engine is essentially a distributed web server + database. AJAX on App Engine is no different from AJAX anywhere else - the server serves HTML+Javascript which runs on a web browser, and communicates back to the server.

Ruby / Rails working with Delphi back end

Can anyone point me to some sources or tutorials that would help me wrap my head around using Rails to connect/inquire with a Delphi backend (using a Firebird database).
Also, a few questions regarding this setup.
Is a Delphi back-end faster than a rails back end? Delphi seems to have far better support for connecting to firebird than the ruby drivers would.
What is the current best choice method for making requests? The REST stuff, or some kind of RPC? or something else?
Since we are currently a Delphi shop, i assumed the back end being in delphi would help us leverage current skills better.
Any help is appreciated.
EDIT: Little bit about the set up.
So to make this easier to explain lets just say its essentially a todo organizer. So the frontend would be a calendar showing what is due on each day. Or perhaps list views of that information, etc. The "back-end" as I had called it would be something that is storing to a Firebird database. the RoR calendar site would then request information about Todos, or todos on a given day or date range, perhaps information about certain contacts. All of which is stored in Firebird.
I do realize you can do the front-end part in delphi as well but I'm trying to phase out Delphi in favor of newer languages.
AFAIK you need much more than a RESTful API to run a RoR application.
Most of the work is done on the server side: MVC model, data persistence, routing, etc...
Using Delphi as back end will need a huge amount of work.
Take a look at some projects, if you need a RESTful server built in Delphi:
Delphi on rails https://code.google.com/p/delphionrails
Delphi Web Script https://code.google.com/p/dwscript
Delphi Relax http://code.marcocantu.com/p/delphirelax
DataSnap (directly in Delphi)
our mORMot framework http://mormot.net
All implement direct connection to Firebird, and DoR + mORMot + DWS sounds to have better performance.
A Delphi based server will in all cases be more responsive.
DoR is more close to RoR - as the name states! Delphi Relax seems also close to it (even if I wonder if Marco will still maintain it - 5 months without commit).
DataSnap is more RAD, and integrated within the IDE.
DWS has a new DB backend, and the same high performance HTTP server than mORMot.
mORMot has a full client-server ORM, but web clients are to be build in AJAX - SmartMobileStudio is preferred.

Is CodeIgniter suitable for large intranet applications that do not use MySQL?

I don't really plan on using active record or any of the built in database constructs native to CodeIgniter for database access. I have Oracle, SQL Server, and others. I want to use PHP PDO (unless anyone thinks that's bad) because of the universal aspect of it.
I mainly want CI because of some of the built in libraries and MVC. I also like that it is small and easy to work with.
2.x if it matters.
I did see other questions but none exactly about databases.
Thanks.
edit: It's not that I don't think CI and PHP can take it with large websites. This is solely about using multiple databases of varying companies. I have mostly seen MySQL used with it. I know I can use other databases but again, I don't know if it is more trouble than worth or what.
MySQL is the default just because of how widely-adopted it is, especially in the PHP world. Almost everyone has a *AMP stack to work on so it ends up being the main driver used in almost every example out there.
If you're not planning on using the database class, then it really doesn't matter what type of database you are using, just don't load the class. You can still use routing, helpers, libraries, and other CI features.
So yes, I do think it is suitable for your purposes.
CodeIgniter was built with the idea of being the framework closest to native PHP that doesn't tell you what to do. The entire framework is modular and you are not required to use any single component.
Yes, it is absolutely suited to what you are doing. You can plug and play whatever DB driver you want and CI will not complain one bit.
I think CI is more suited for this role than any other of the 'big' frameworks.

Node.js MVC framework [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I would like to use Node.js to develop a website. I've seen a lot of frameworks here: https://github.com/joyent/node/wiki/modules#web-frameworks-micro but do not know which one is the most accepted by the community (let's say: the most popular). Did anyone tried any of these frameworks and/or used it in production and what is your experience? Thanks.
Express.js seems to very popular to use as a general framework. Combined with socketio.js and underscore.js these are very popular libraries but they are not MVC.
For MVC I've only used backbone.js / spine.js and can't give any recommendation for the others. I don't think there is a framework with a dominating popularity going yet because node.js doesn't have much use in production.
There are statistics for popular downloads with npm somewhere. See if you can find them.
Another great MVC framework that is up and coming is Sails.JS. It is inspired by ruby on rails and has features such as socket support, Restful API and more.
http://www.sailsjs.com/
Try RailwayJS. CompoundJS
RailwayJS seems to have been killed and replaced with CompoundJS.
There's a guide for anyone that started with Railway and wants to migrate to Compound.
I just released Locomotive, which is an MVC framework inspired by Ruby on Rails.
Express is phenomenal, especially for smaller apps. Recognizing that, Locomotive is built completely on top of Express (similar to how Express builds on top of Connect). Locomotive essentially adds a controller layer along with a router that can declare resourceful routes and generates routing helper functions. Internally, everything is powered by Express, which means the view layer remains the same and all middleware can be reused.
One of the bigger hurdles when learning Node is figuring out how to best structure a web application. Locomotive attempts to solve that problem, using conventions from Ruby on Rails, while retaining the full power of Express and Node.
There is matador. It is MVC and it consists of many different existing components, such as Klass for inheritance model, express, hogan.js, and valentine. Backbone.js is pretty much used for client side. For node, i think there's probably only matador that I know.
I'd suggest you against using it if you're to use matador for production or replace your existing MVC platform (or at least have a bottleneck/good reason to use it) since it's pretty new, and your productivity also depends on the javascript resources you have. We ourselves use node.js very extensively (our node.js deployment serves close to +4 Million users to date) and we have a significant number of javascript specialists here..so we experiment a lot and probably look into using matador soon. Hope that helps.
Geddy was the original MVC framework for Nodejs, check out http://geddyjs.org if you're interested.
Just came across a new one called Derby which looks like it has a lot of promise. Its main benefit seems to be that it cuts down on a lot of the "glue code" (as they put it) that we often write when trying to use rails and backbone, or django and backbone together. The documentation seems pretty decent for a node framework as well.
Monorail.js - Ultra lightweight MVC Framework for Node.js
https://github.com/runexec/Monorail.js
There are a few more frameworks which you could check:
ThinkJS https://thinkjs.org/ the first Node.js MVC framework that can use full ES6/7 features to develop Node.js application.
Feathers http://feathersjs.com/ a minimalist real-time framework.
Meteor https://www.meteor.com/
Keystone.js http://keystonejs.com/ built on Express and MongoDB (MIT license).
seneca.js http://senecajs.org/ Everything external to a business logic - such as databases, caches and third-party integrations - is hidden behind microservices.
Catberry http://catberry.org/ was developed to help create apps that use the same codebase on both the server and client environments to render what the client would see as a "Single Page Application".
Nuke.js http://nukejs.com/#/ Fast framework. The stack contains primus, express, mithril, mongodb and redis
Hapi.js http://hapijs.com/ rich web application server framework for Node.js.
total.js https://www.totaljs.com/ The framework contains full web server, view engine, SMTP mail sender, localization, image processing, websockets, isomorphic code and a lot of utilities

Resources