Hackers donate 90% of profit to charity 2019/06/13

NGI Zero awarded two EC research and innovation actions 2018/12/01

EC publishes study on Next Generation Internet 2025 2018/10/05

Bob Goudriaan successor of Marc Gauw 2017/10/12

NLnet Labs' Jaap Akkerhuis inducted in Internet Hall of Fame 2017/09/19

  Help grow the future. Donate

Network Applications

A-A-P -- The A-A-P Project

The A-A-P project intends to provide a series of tools for developing, distributing and installing software. The two main programs are aap (a replacement for make) and agide (the A-A-P GUI IDE).

The agide program provides a portable framework to combine existing programs. Agide provides interfaces between editors, viewers, debuggers, cross referencers, etc. These are used connect any editor to any debugger, without the need to implement every combination. Agide relates to many existing tools and adds the glue to make them work together.

A central element is the A-A-P recipe. It is a powerful replacement for Makefiles and shell scripts. The Aap program is used to execute the recipes. It can be used for building software, version control, maintaining a web site, installing ported software, and much more.

BlenderWeb -- Blender Web Plugin

There is currently no open source platform capable of delivering rich web content similar in scope and impact to Adobe Flash and Shockwave or Microsoft Silverlight. Creators and developers are tied to proprietary tools and software if they wish to create rich interactive content for online distribution and consumption. This creates a high barrier to entry in many countries the cost of Adobe software licenses can be more than a years salary for an artist --so only those individuals of wealth can make use of this communications medium.

This project is devoted to the development of the web plugin of the game engine, improve its security and resource utilization and add functionality, in general produce an end-to-end solution and open source platform capable of delivering 2d and 3d content of a richness and variety similar to that available in the propriety Adobe Flash and Adobe Shockwave plugins.

CP2PC -- Copy To PC

CP2PC (pronounced "copy to pc") develops a minimal programming interface to peer-to-peer (P2P) file-sharing systems. Client side applications can be built on top of this interface by other projects. In addition, the project includes development of a simple GUI client that integrates various file-sharing systems.

CUGAR -- Closed User Group Access Router

This project aims to develop and implement a (Wireless) Access Point and a back-end for it using only Open Source software components.

The Access Point (AP) together with the back-end makes secure environment for Closed User Group Services. This allows a secure connection between AP and the back-end when using a non-secure transport medium (like the Internet).

The whole system is being developed as an "appliance" and a back-end software package. AP itself will be implemented on small embedded systems in order to ease the deployment. The back-end (authentication, management, routing) can run on a generic UNIX system.


Dowse is a smart digital network appliance for home based local area networks (LAN), but also small and medium business offices, that makes it possible to connect objects and people in a friendly, conscious and responsible manner.

FileSender -- FileSender Programme

FileSender is a self-hosted service that allows you to share very large files with anyone.

FreeBSD-3G -- 3G support for FreeBSD

The project started by improving 3GPP support for Option GT GPRS/EDGE cards, to provide a second serial channel to retrieve signal quality and other status info from the data card while being online. Starting off with the OpenMoko 3GPP implementation, this was quickly replaced with own development due to memory constraints on embedded systems. Later, similar functionality was added for data cards which use an internal USB-hub with several serial ports connected.

The project contains:

  1. development of a FreeBSD driver for data cards supported by the Linux hso driver;
  2. development of FreeBSD driver for nozomi type Option cards;
  3. improvements to, and open sourcing of, the 3GPP protocol daemon; and
  4. setup of Knowledge Base website.

Each of these individual subprojects is valuable on its own. Sub0hr-project 'Setup of wiki/website' would provide the Open Source community as a whole a needed central point for information on this topic. Building a new site is necessary to not only gather information but also process the various sources into a coherent source of information, providing more value than information presentation on its own.

FSF Priority -- FSF High Priority Projects

The Freedom Software Foundation high-priority projects list serves to foster the development of projects that are important for increasing the adoption and use of free software and free software operating systems.

The priority projects list shows areas where free software development needs to accelerate in order to stop users from being drawn to proprietary software and operating systems. It lists holes that aren't fully covered by existing projects.

NLnet's contribution will be used to support development sprints around the priority projects, including the project to produce free software drivers for network routers.


JigLib is an open source 3D rigid body physics engine. So far, most of the web browser implementations of this technology (including open source libraries such as Papervision3d and the ARToolkit) are reliant on closed source 3rd party plugins (Flash, Silverlight, Unity3D etc.). The project will create an open source, community driven port of JigLib to JavaScript for use with WebGL, thus providing a portable API for linking to other WebGL JavaScript libraries such as GLGE.

Within the project a demo application showcasing the potential of this library and of WebGL will be produced, this in order to stimulate interest and participation in the open source community. The major aims of this project are:

  • to prove the use of WebGL as a viable replacement for plugins.
  • to help with the implementation of WebGL in browsers by providing regression and performance test results.
  • to stimulate growth in the Open Source community around WebGL by giving them a library and an attractive Demo to work with.
  • to attract and encourage contributors to WebGL by placing all source code and documentation in the public domain using the BSD license for both code and documentation.
  • to stimulate the use of the open standard WebGL (instead of closed solutions such as Flash, Silverlight etc.) by the web development community.
  • to facilitate innovation in 3D physics based UI design and interactivity online.

Log files are often treated like the unwanted by-product of IT activity, sitting somewhere in a dark corner of a computer system, examined only occasionally, usually in the case of after-the-fact reactive problem solving. LogReport aims to change this. These files contain the traces of computer activity, and by intelligently analyzing these traces, one can increase existing system efficiency and improve future system design.

The LogReport project serves a dual purpose: developing and maintaining Lire, an Open Source reporting and analysis software package, and serving as a nexus of documentation, ideas, and thoughts on the topic of log files and their potential applications.

There are quite a few specific tools for analyzing particular types of log files. However, LogReport's Lire is designed as a generic tool, with plug-in capability for handling a wealth of different types of log files and report integration features.

From 2000 till 2005, the activities of this project were bundled in the Foundation Stichting LogReport. Thereafter, the project continued on voluntary basis.

Mail::Box -- Improving Mail::Box

Mail::Box is a module for the Perl programming language. This module can be used for automation of various e-mail related tasks. With support of NLnet, the module is promoted and improved.


Meemoo is intended to lowering the threshold for app makers - ideally everybody should be able to create web apps.

When people think of an app, thy do not think of something that one can open, hack, and change how it works. Meemoo will give everybody this freedom. Meemoo is a framework that connects Open Source modules, powered by any web technology - it is a browser-based modular dataflow/patching framework. It all happens on the web, so it is easy to share a hacked app by copying the source code.

The way that the data flows from module to module is defined and visualized by colorful wires. It becomes simple like that: If you can connect a video player to a TV, you can program a Meemoo app.

The project will also build a community site for sharing, forking, and creating with Meemoo apps. The site will also be open source, so schools and other organizations can set up their own open or closed version. The site will be built on Unhosted/ownCloud for maximum data portability.


Morphle is a project to stitch and glue together a large number of web 2.0 and 3.0 technologies. The principle technologies to be used will be HTML and javascript-tool-kits and the web-tools built into Squeak. And it will be through Squeak's web-tools that Morphle will be able to hide the former tools (HTML, javascript and the like) from the end-user. What will be achieved through this arrangement is, among other things, to provide the end-user with the ability to combine very easily web page parts such as snippets, widgets or components to create incredible web-sites. This tying together of these kinds-of-parts is often referred to as web mash-ups.

The second component of the Morphle project is to offer all of these tools through the Internet and accessed directly through the browser. Eventually, Morphle's hosting system will served-up from next-generation large scalable web-server (called Morphel) at very low costs.

This project is about putting an alpha release of a meta-website online. The website will offer free and anonymous powerful but simple to use end-user website editing based on state of the art component ecapsulation technologies in the hands of everyone.

NILO -- Network Interface LOader

NILO wants to create an Open Source reference implementation of a PXE-based network boot module, with a footprint that is small enough to include in the EPROM on the most popular Network Interface Cards.


Parrot is a virtual machine (VM) designed to execute bytecode for interpreted languages efficiently. Many modern programming languages do not translate programs into machine native instructions, but produce some intermediate bytecode which needs be interpreted by a virtual machine when the program is run.

Parrot will run the bytecode for the Perl 6 programming language, which is being developed. There is already a partial Perl 6 compiler which uses Parrot. But Parrot is also able to be the run-time environment for various other compilers, of which some already have demonstration implementations.

Proxy App -- Generic Proxy Appliance

The "Generic Proxy Appliance" projects will develop and implement an (internet) proxy appliance helping to utilize unused bandwidth in (wireless) networks

A wireless community network, e.g. Wireless Leiden, can be used for various applications. First of all, it provides point-to-point communication between the users of the local the network: between individual users (using P2P, VoIP or VPN) or the user and some service provider which is directly connected to the network. Secondly, the network can be used as a Last Mile for the Internet access for both mobile and 'fixed' users.

With the current broadband services, there is unused bandwidth at any given moment in time. This project's goal is to develop an internet proxy appliance with additional features allowing to utilize unused bandwidth in (wireless) networks.

The proxy appliance will use Wireless Leiden infrastructure as breeding place for the prototype implementation.


The project aims to extend the PulseAudio sound server to support echo cancellation technologies needed to be able to do high quality VoIP conferencing.

With the growing popularity of VoIP and videoconferencing, the issue of echo cancellation on the Linux desktop is growing in importance. The Linux audio layer has long been a struggling beast with a lot of competing solutions, all of them with their own set of flaws. Thanks to the increased resources put into the media layers by Linux distribution vendors, it seems that a combination of ALSA and PulseAudio is emerging as the standard sound system layer, with GStreamer being the de-facto application writers interface. Therefore the natural place to put a system wide echo cancellation would be in the Pulse Audio sound server.

Development tasks:

  • Implement echo cancellation ALSA test application
  • Implement PulseAudio audio filter infrastructure
  • Implement echo cancellation for PulseAudio
  • Enable echo cancellation in Empathy Desktop linux

Run by Collabora Multimedia.

Sabayon -- Sabayon Linux

Sabayon is a free, open source, GNU/Linux distribution aimed to compete with Ubuntu in terms of hardware support, features and packages availability. The aim is to create an unpresended smart package manager.

The challenge is

  • creating a fast binary package manager (using relational databases),
  • with strong AI (allowing just 2/3 developers to maintain about 12000 packages),
  • able to solve most of the user-side issues automatically (such as API/ABI breakages, missing libraries, database corruptions, automatic kernel dependencies for external drivers, inverse dependencies),
  • able to provide users a web2.0-alike experience by allowing them to share, extend, manipulate any content connected to packages (like screenshots, URLs, images, videos, rankings) directly from their system,
  • able to provide a transparent client/server infrastructure to remotely manage infinite Sabayon installations,
  • able to provide hot packaging formats, like Smart Packages (multiple packages packaged into one) and Smart Applications (unpack & run applications).
  • All this while keeping a complete Portage compatibility and cooperating tightly with Gentoo Linux developers in bug hunting and feature proposals.
TimeWalker -- TimeWalker implementation project

Timewallker is a multi-focal time-lens for visual data-mining. Its application domain is information visualization, which is characterized by handling huge data sets with unkown correlations and by real-time zooming within multiple graphical and textual representations. TimeWalker is primarily intended to be a useful instrument for people like system-administrators that are confronted with unmanageable amounts of logging data.

VDD -- Virtual Distro Dispatcher

Virtual Distro Dispatcher is a distributed system which aim is to project virtual, fully operational operating system instances on arbitrary terminals. Client terminals can be obsolete PCs or energy saving thin clients (such as mini-ITX) managed by a powerful, multiprocessor (and possibly clustered) central system. The VDD gives users a possibility to enjoy their own favourite operating systems, including those that are not Open Source, possibly at the same time, simply by switching from one to another, on each single thin client, on demand, across a network.

Thin clients are interfaces to proper and isolated machines, that can be made to measure for whatever need and in whatever number. This is completely transparent to users, who, even from an obsolete machine, can select a particular machine with certain characteristics and then do absolutely everything they would do on such a machine as if it was physical and with its virtual performance.

Contrary to other systems, like LTSP (Linux Terminal Server Project) the VDD offers not only the host operating system to thin clients, but projects virtualized guest systems, i.e. fully operational and independent machines.

VirtNet -- Network Stack Virtualization

Traditionally, UNIX operating systems have been equipped with monolithic network stack implementations, meaning all user processes have to cooperatively share a single networking subsystem. The introduction of the network stack cloning model enables the kernel to simultaneously maintain multiple independent and isolated network stack instances. Combined with forcible binding of user processes to individual network stacks, this concept can bring us a step closer to an efficient pseudo virtual machine functionality which opens new possibilities particularly in virtual hosting applications, as well as in other less obvious areas such as network simulation and advanced VPN provisioning. This project is focused on design, implementation and performance aspects of experimental clonable network stack support in the FreeBSD kernel.


Send in your ideas.
Deadline August 1st, 2019.

Help fundraising for the open internet with 5 minutes of your time

Project list

Project abstracts