AMT Blog

Uptime – A simple HTTP remote monitoring utility using Node.js and MongoDB

Uptime, is an open source remote monitoring application that generates gorgeous reports about your sites availability and responsiveness using Node.js and MongoDB. It also uses other third party open source libraries like Socket.io, MongooseJS, jQuery, TwitterBootstrap, Highcharts.js.

 Features

  • Monitor thousands of websites (powered by Node.js asynchronous programming)
  • Tweak frequency of monitoring on a per-check basis, up to the millisecond
  • Receive instant web alerts on every page when a check goes down (thanks socket.io)
  • Record availability statistics for further reporting (powered by MongoDB)
  • Detailed uptime reports with animated charts (powered by Highcharts)
  • Monitor availability, responsiveness, average response time , and total uptime/downtime
  • Get details about failed checks (HTTP error code, etc.)
  • Group checks by tags and get reports by tag
  • Familiar web interface (powered by Twitter Bootstrap 2.0)
  • complete API for integration with third-party monitoring services
  • Easy installation and zero administration

Read more…

Like what we post? Share your thoughts on the comments below. If you wish to get regular updates on what we post, do subscribe to our RSS Feed

Filed under: Node.js Open Source

Brunch – A Handy Assembler for Building Your HTML5 Apps

Brunch is a handy MIT Licensed, assembler for building your HTML5 applications. It is agnostic to frameworks, libraries, programming, stylesheet & templating languages and backend technology.

To simplify app development, brunch watches your files for changes and automatically wraps your scripts and templates in require.js modules. All build errors are printed to console. If you have growl / libnotify, brunch will use them too.

Brunch uses node.js plugins to speak with compilers. There are a bunch of plugins already:

There are some people who are using brunch already. Ranging from internal tooling to high traffic facebook apps. Do check out the other examples given on the website.

Brunch

Read more…

Like what we post? Share your thoughts on the comments below. If you wish to get regular updates on what we post, do subscribe to our RSS Feed

Filed under: HTML 5 Node.js Open Source

Exploring Mangoose, A Node.js object-document mapper [Video Tutorial]

Mongoose is an open source MongoDB object modeling tool designed to work in an asynchronous environment. It can be used on top of the MongoDB Node.js driver to make database access simpler.

Check out this interesting Node Tutorial in which Pedro Teixeira explains how to use the new Mongoose API.

The documentation and a number of presentations provide more detailed information about the driver and how to use it. The driver itself is available from its Github repository and is licensed under the Apache Licence 2.0.

Read more…

Like what we post? Share your thoughts on the comments below. If you wish to get regular updates on what we post, do subscribe to our RSS Feed

Filed under: NoSQL Node.js Tutorials

Ospriet – An Open Source Audience Monitoring App Built on Twitter

Ospriet is an open Source audience moderation app built on Twitter that allows audiences to post and vote on questions/comments for talks, presentations, and events. The application is written in node.js, uses MongoDB for database storage, and is designed for deployment on nodejitsu.

Osp-event-dftg

Ospriet allows anyone with a Twitter account to submit a question or comment, by posting an @-reply to a Twitter account dedicated for an audience-oriented event. The submission will be reposted to the event’s account, with attribution. Audience members can vote up the best submissions by favoriting the submissions on the event account.

Ospriet will then keep track of all of the favorites and provide the top submissions. Ospriet provides one single, simple interface for all of this that audience members can use on most devices.

Ospriet is freely available on GitHub under an Apache License. Check out a demo of the site powered by the application used at a 2012 SXSW panel at Design from the Gut.

Read more…

Like what we post? Share your thoughts on the comments below. If you wish to get regular updates on what we post, do subscribe to our RSS Feed
Filed under: Node.js Open Source

Nodejs Code Snippets and Bindings for Sublime Text 2 Package

The Nodejs Sublime Text 2 Package offer you a set of code completion, scripts and tools to work with node.js. The package code completion is generated from the main nodejs libraries and global namespaces. To invoke the code completion start typing the namespace you want (For example, type fs) and then Ctrl + Space, you get this:

Sublime-text-2-nodejs-package

Salient Features of Sublime Text 2:

  • Easily find, install, upgrade and remove packages without restarting Sublime Text.
  • Keeps installed packages up-to-date with an auto-upgrade feature.
  • Downloads packages from GitHub, BitBucket and the custom JSON channel/repository system.
  • Handles updating packages cloned from GitHub and BitBucket via Git and Hg
  • Provides commands for enabling and disabling packages.
  • Includes a command to bundle any package directory into a .sublime-package file.

Read more…

Like what we post? Share your thoughts on the comments below. If you wish to get regular updates on what we post, do subscribe to our RSS Feed

Filed under: JavaScript Node.js

Dynode – A node.js client for Amazon's DynamoDB

Image representing Amazon Web Services as depi...

Dynode is a node.js client, which enables you to work with Amazon's DynamoDB service with ease. Amazon's http api is complex and interacting with it is not so easy. This client does offer a simpler and more obvious way of working with DynamoDB, notably, without putting any restrictions on what you can accomplish with DynamoDB.

There are two different ways to use dynode: directly via the default dynamoDB client, or by instantiating your own client. The former is merely intended to be a convenient shared client to use throughout your application if you so choose.

Using the Default DynamoDB Client

The default client is accessible through the dynode module directly. Any method that you could call on an instance of a client is available on the default client:

var dynode = require('dynode');

  // When using the default client you must first give it auth credentials
  dynode.auth({accessKeyId: "AWSAccessKey", secretAccessKey: "SecretAccessKey"});

  dynode.createTable("NewTable", console.log);
  dynode.listTables(console.log);

Instantiating your own DynamoDB Client

If you would prefer to manage your own client, potentially with different auth params:

Read more…

Don't like to miss out any of our posts? Do

Cloudshift - A Node.js App Framework for haXe Programmers

Cloudshift_logo

Cloudshift is a Node.js web application framework coded in haXe, an open-source multi-platform programming language. Being a multi-platform language, haXe targets other platforms, like JavaScript, Flash, NekoVM, PHP, C++, C# and Java etc.

Cloudshift is UI agnostic, the emphasis is on server side plumbing and infrastucture. Cloudshift is self-contained and complete, it includes:

  • Core functionality of Futures, Observables and mixins.
  • Component model (Parts and Assemblies).
  • Caching web server.
  • Typed RPC using haXe remoting.
  • Session management.
  • Seemless haXe workers (sub process) for Node.js server.
  • Embedded Sqlite or Redis haXe object storage with indexable and relatable objects.
  • Powerful messaging system including push and web sockets both client/server and server/server.  

Read more…

Like what we post? Share your thoughts on the comments below. If you wish to get regular updates on what we post, do subscribe to our RSS Feed

Filed under: Node.js Open Source

Thimble – An Open Source Middleware for effortless Web Development

Thimble is a middleware for express.js and aims at simplifying modern web development. 

In this fast pace development world, there are some new languages to learn or techniques to apply. New tools often get added to our workflow to take advantage of these new features. These tools generally help us build our products better and faster. 

However, every time we add a new tool, our application becomes more complex gradually. Eventually these tools we add to our workflow, in order to work faster might end up slowing us down, if they aren’t put in place carefully. 

Thimble is an endeavor to break free from our self-destructive habits and take advantage of all these fantastic innovations while keeping the same development speed that we love. By adding an HTML parser to the development cycle, we can manipulate our response on the fly, allowing us to dynamically embed templates, compile languages, minify assets, and much more. 

How Timble Works

Thimble's architecture is influenced by connect. Connect's layering system is fantastic for providing modular middleware on the server. Thimble borrows this concept to provide modular HTML transformers for page requests. 

During development, thimble inserts two middleware layers. The first layer manipulates your page request, running plugins like flatten and embed. The second layer catches requested assets, offering seamless integration with the latest languages and preprocessors like coffeescript and stylus. 

The following is an example of thimble's first layer during the development cycle:

How-timble-works

In this diagram the requested page passes through thimble's plugins to transform its source before reaching you, the developer. These plugins do things like include other files, embed templates, dim distracting elements, and expose functions and objects from the server to the frontend.

For production, thimble provides a build tool that compiles and bundles your assets into a single package that you can dish out to your servers.

Read more…

Don't like to miss out any of our posts? Do

Filed under: JavaScript Node.js

nide – A Nice IDE for node.js

nide is an open source web-based IDE for node.js. It’s designed with simplicity and ease-of-use in mind. nide was originally developed as part of the Node Knockout 48 hour coding competition. 

Current Features of nide includes:

  • Project tree display
  • File operations (create/delete/rename files and folders, hide/show hidden files)
  • Syntax highlighted code editing
  • OS X Lion-style automatic save
  • OS X Lion-style version management with revert and side-by-side editing features
  • Real time project tree filtering (using regular expressions)
  • NPM integration (display currently installed packages, add/remove packages)
  • Sleek interface reminiscent of TextMate
  • Node.JS Documentation browsing 

Features to watch out for in future:

  • Git integration
  • Simultaneous multi-user editing

Nide-webide-for-nodejs

Read more…

Don't like to miss out any of our posts? Do

Filed under: JavaScript Node.js

Passport – A Simple Authentication framework for Node.js

Passport is an open-source authentication framework for Connect and Express, which is extensible through "plugins" known as strategies.  

Passport is designed to be a general-purpose, yet simple, modular, and unobtrusive, authentication framework. Passport's sole purpose is to authenticate requests. In being modular, it doesn't force any particular authentication strategy on your application. In being unobtrusive, it doesn't mount routes in your application. The API is simple: you give Passport a request to authenticate, and Passport provides hooks for controlling what occurs when authentication succeeds or fails. The Key features of this framework are:

  • Single sign-on with OpenID and OAuth
  • Easily handle success and failure
  • Supports persistent sessions
  • Dynamic scope and permissions
  • Pick and choose required strategies
  • Implement custom strategies
  • Does not mount routes in application
  • Lightweight code base
  • 30+ authentication strategies

Read more…

Like what we post? share your thoughts on the comments below.  If you wish to get regular updates on what we post, do subscribe to 

Filed under: JavaScript Node.js
12
To Posterous, Love Metalab