Main Content RSS FeedRecent Articles

Awesome Sysadmin »

A curated list of amazingly awesome open source sysadmin resources inspired by Awesome PHP

Open Source Graph Database–Cayley »



Cayley is an open-source graph inspired by the graph database behind Freebase and Google’s Knowledge Graph.

Its goal is to be a part of the developer’s toolbox where Linked Data and graph-shaped data (semantic webs, social networks, etc) in general are concerned.

  • Written in Go
  • Easy to get running (3 or 4 commands, below)
  • RESTful API
    • or a REPL if you prefer
  • Built-in query editor and visualizer
  • Multiple query languages:
    • JavaScript, with a Gremlin-inspired* graph object.
    • (simplified) MQL, for Freebase fans
  • Plays well with multiple backend stores:
  • Modular design; easy to extend with new languages and backends
  • Good test coverage
  • Speed, where possible.

Rough performance testing shows that, on consumer hardware and an average disk, 134m triples in LevelDB is no problem and a multi-hop intersection query — films starring X and Y — takes ~150ms.

Javascript XMPP Library » is a library for using modern XMPP in the browser, and it does that by exposing everything as JSON. Unless you insist, you have no need to ever see or touch any XML when using



Open Source Mind Mapping »

Freeplane is a free and open source software application that supports thinking, sharing information and getting things done at work, in school and at home. The software can be used for mind mapping and analyzing the information contained in mind maps. Freeplane runs on any operating system that has a current version of Java installed. It can be run locally or portably from removable storage like a USB drive.



Open Source Photography »

darktable is an open source photography workflow application and RAW developer. A virtual lighttable and darkroom for photographers. It manages your digital negatives in a database, lets you view them through a zoomable lighttable and enables you to develop raw images and enhance them.


Apache Allura »

Apache Allura is an open source implementation of a software forge, a web site that manages source code repositories, bug reports, discussions, wiki pages, blogs, and more for any number of individual projects. Read about all of Allura’s features or compare features to other OSS forge software.

The Allura project is self-hosted on an instance of Allura:

Google Open Source PDF Library »

PDFium is an open-source PDF rendering engine.

Source is hosted at

A sample consumer of this library is Chromium’s PDF plugin. You can see the source for it at

Open Source Android Spy Camera »

Spy Camera OS is open source Android spy camera project.

- Small size application
- Minimize to background
- Support Back/front camera
- HD/All image capture resolution
- Burst shot
- Auto shot with delay setting
- Face detection auto shot
- Auto focus
- Black screen (touch to capture)
- Hide/custom* folder
- Video Recording (Experimental)
- Save to internal/external storage*
- Widget for faster capture & more secure shortcut naming
- Various customizable setting
- Auto email images



Open Source WhatsApp Alternative–Telegram »

Telegram is like SMS, but more powerful. You can send messages, photos, videos and documents to people who are in your phone contacts (and have Telegram). You can also create groups for up to 200 people.

Unlike WhatsApp, Telegram is cloud-based and heavily encrypted. As a result, you can access your messages from several devices (including desktops!) and share an unlimited number of photos, videos and documents (doc, zip, mp3, etc). Telegram is also faster and way more secure. On top of that, Telegram is free and will stay free — no ads, no subscription fees, forever.


Open Source Project Management Tools »


LibrePlan is a collaborative tool to plan, monitor and control projects and has a rich web interface which provides a desktop alike user experience. All the team members can take part in the planning and this makes possible to have a real-time planning.


ProjectLibre – Open source replacement of Microsoft Project.


OpenProject is free and open source software for project management with a wide set of features and plugins and an active community


Agilefant is the most advanced open source web based tool for agile management today, with a rapidly growing user base and a dedicated community behind it.

Android HTTP Library »



Android Async HTTP

An asynchronous callback-based Http client for Android built on top of Apache’s HttpClient libraries. All requests are made outside of your app’s main UI thread, but any callback logic will be executed on the same thread as the callback was created using Android’s Handler message passing.

  • Make asynchronous HTTP requests, handle responses in anonymous callbacks
  • HTTP requests happen outside the UI thread
  • Requests use a threadpool to cap concurrent resource usage
  • GET/POST params builder (RequestParams)
  • Multipart file uploads with no additional third party libraries
  • Tiny size overhead to your application, only 25kb for everything
  • Automatic smart request retries optimized for spotty mobile connections
  • Automatic gzip response decoding support for super-fast requests
  • Binary file (images etc) downloading with BinaryHttpResponseHandler
  • Built-in response parsing into JSON with JsonHttpResponseHandler
  • Persistent cookie store, saves cookies into your app’s SharedPreferences

Open Source Android WebSocket Library »



AndroidAsync is a low level network protocol library. If you are looking for an easy to use, higher level, Android aware, http request library, check out Ion (it is built on top of AndroidAsync). The typical Android app developer would probably be more interested in Ion.

But if you’re looking for a raw Socket, HTTP client/server, WebSocket, and Socket.IO library for Android, AndroidAsync is it.

  • Based on NIO. One thread, driven by callbacks. Highly efficient.
  • All operations return a Future that can be cancelled
  • Socket client + socket server
  • HTTP client + server
  • WebSocket client + server
  • Socket.IO client



AutobahnAndroid implements The WebSocket Protocol and The WebSocket Application Messaging Protocol (WAMP):

  • library for WebSocket and WAMP clients
  • implements WebSocket RFC6455, Draft Hybi-10+ and WAMP v1
  • works on Android 2.2+
  • very good standards conformance
  • high-performance asynchronous design
  • easy to use API
  • seamless integration in Android UI apps
  • no (really none) network activity on UI thread
  • Open-source (Apache 2 license)

You can use AutobahnAndroid to create native Android apps talking to WebSocket servers or any WAMP compatible server.

Using WAMP you can build applications around asynchronous RPC and PubSub messaging patterns.



android-websockets is a very simple bare-minimum WebSocket client for Android.

Java NIO Asynchronous Sockets »

Naga aims to be a very small NIO library that provides a handful of java classes to wrap the usual Socket and ServerSocket with asynchronous NIO counterparts (similar to NIO2 planned for Java 1.7).

All of this is driven from a single thread, making it useful for both client (e.g. allowing I/O to be done in the AWT-thread without any need for threads) and server programming (1 thread for all connections instead of 2 threads/connection).

Internally Naga is a straightforward NIO implementation without any threads or event-queues thrown in, it is "just the NIO-stuff", to let you build things on top of it.

Naga contains the code needed to get NIO up and running without having to code partially read buffers and setting various selection key flags.

Here is an example opening a server socket:

NIOService service = new NIOService;
NIOServerSocket serverSocket = service.openServerSocket(1234);

This is how working with a regular socket looks like:

NIOService service = new NIOService;
NIOSocket serverSocket = service.openSocket("", 1234);
// Asynchronous write by default:
socket.write("Some message".getBytes());

Java–Realtime Client Server Framework »

The Atmosphere Framework contains client and server side components for building Asynchronous Web Application. The majority of popular frameworks are either supporting Atmosphere or supported natively by the framework. The Atmosphere Framework supports all majors Browsers and Servers

Atmosphere transparently supports WebSockets, Server Side Events (SSE), Long-Polling, HTTP Streaming (Forever frame) and JSONP.

The Atmosphere Framework Stack works on all Servlet based server including Tomcat, JBoss Jetty, Resin, GlassFish, Undertow, WebSphere, WebLogic etc. Not running a Servlet Container? Netty Play! Framework orVert.x

AJAX Push Engine »

APE is a full-featured OpenSource solution designed for Ajax Push. It includes a comet server and a Javascript Framework. APE allows to implement any kind of real-time data streaming to a web browser, without having to install anything on the client-side.

The Ajax Push Engine Project is divided into two distinct parts communicating via a very efficient protocol. The most central part is our epoll-driven HTTP streaming server, the APE Server. Through the APE Protocol, the APE JavaScript Framework sends and receives the actions on the client side.

APE Server is an Comet server implementing the POST and GET methods of the HTTP protocol. It does not replace a regular Web Server (such as Apache, Lighttpd or Nginx), however, the APE Server is only used for AJAX Push.

The APE JavaScript Framework receives information sent by the server (RAWs), handles the data, and sends back the users commands (CMDs). With a very small footprint (~10KB), the APE Framework loads really fast on your web browser, thus it’s fully adapted for slow connections such as EDGE or 3G.

Java–CORS Filter »

Cross-origin resource sharing (CORS) is a mechanism that allows JavaScript on a web page to make XMLHttpRequests to another domain, not the domain the JavaScript originated from. Such “cross-domain” requests would otherwise be forbidden by web browsers, per the same origin security policy.

eBay CORS filter is a Java Servlet Filter implementation of server-side CORS for Java web containers such as Apache Tomcat. Salient features:

  • Easy to integrate and use – enable CORS capability with a few lines in your web.xml!
  • Protects against CRLF injection / response splitting attacks.

Another CORS filter for Java is is also available here.

Java/Android UPnP Library »

Cling is a complete, clean, and very flexible Java/Android UPnP library, implementing the UPnP Device Architecture 1.0specification. Additional UPnP service modules and graphical tools are also part of this project. Cling helps you create, control, and monitor UPnP-compatible services on your local network.

Cling Core is a Java UPnP library that implements this infrastructure, it offers clean and natural APIs for any developer who wants to implement either UPnP services or control points.

The main features of Cling Core are:

Fine-grained and safe APIs

Cling Core is not just a thin layer on top of the low-level UPnP protocol, it offers rich and natural APIs for developers. Every UPnP header, every message, and every piece of metadata is exposed as a type-safe API with as few type casting and string-lookups as possible. Much of the API is thread-safe, thus simplifying the pervasively multi-threaded environment in which UPnP operates.

Modular design and extensive SPIs

Almost all functionality of Cling Core can be overridden or replaced with custom code. Subsystems such as network transport, message parsing, and even individual aspects of the UPnP protocol implementation (such as discovery, control, eventing) offer SPIs for extension and customization.

Specification compliance

Many vendors who implement UPnP software violate the UPnP device architecture (UDA) specification in one way or another. Cling Core’s goal is to implement and respect every detail of the UDA specification. Currently, Cling Core is targeting UDA 1.0, with preparations already made for future UDA 1.1 compliance.

Complete implementation

Cling Core does not take any shortcuts, no parts of the specification are omitted just because they are difficult to implement.

Full support for Android

All features of Cling Core are supported on Android (see manual, platform level 7/Android 2.1 required). Use Cling to write UPnP/DLNA Android clients or even server applications. The full source code of the UPnPBrowser example application of the manual can be found here. You can see the application in action in this video.

Opus–Open Source Audio Codec »

Opus is a totally open, royalty-free, highly versatile audio codec. It is primarily designed for interactive speech and music transmission over the Internet, but is also applicable to storage and streaming applications. It incorporates technology from Skype’s SILK codec and Xiph.Org’s CELT codec. It has been standardized by the Internet Engineering Task Force (IETF) as RFC 6716.

Opus has been in development since early 2007. Programmers associated with Xiph.Org, Skype, and several other organizations have contributed to its development and to the standardization process as part of the IETF’s codec working group.

Opus can handle a wide range of audio applications, including Voice over IP, videoconferencing, in-game chat, and even remote live music performances. It can scale from low bit-rate narrowband speech to very high quality stereo music. Supported features are:

  • Bit-rates from 6 kb/s to 510 kb/s
  • Sampling rates from 8 kHz (narrowband) to 48 kHz (fullband)
  • Frame sizes from 2.5 ms to 60 ms
  • Support for both constant bit-rate (CBR) and variable bit-rate (VBR)
  • Audio bandwidth from narrowband to fullband
  • Support for speech and music
  • Support for mono and stereo
  • Support for up to 255 channels (multistream frames)
  • Dynamically adjustable bitrate, audio bandwidth, and frame size
  • Good loss robustness and packet loss concealment (PLC)
  • Floating point and fixed-point implementation

Open Source Prediction Engine for Big Data »

H2O makes hadoop do math! H2O scales statistics, machine learning and math over Big Data. H2O is extensible and users can build blocks using simple math legos in the core. H2O keeps familiar interfaces like R, Excel & JSON so that big data enthusiasts and experts can explore, munge, model and score data sets using a range of simple to advanced algorithms.

Data collection is easy. Decision making is hard. H2O makes it fast and easy to derive insights from your data through faster and better predictive modeling.

Open Source Javascript SVG Library »

SVG is an excellent way to create interactive, resolution-independent vector graphics that will look great on any size screen. And the Snap.svg JavaScript library makes working with your SVG assets as easy as jQuery makes working with the DOM.

Snap.svg is designed for modern browsers and therefore supports the newest SVG features like masking, clipping, patterns, full gradients, groups, and more.