1. Technology

An open Source C Code Library for Linux/Unix

An open Source C Code Library for Linux/Unix

AROS - AmigaOS 3.1
The AROS Research Operating System is a lightweight, desktop operating system written in c aimed at being compatible with AmigaOS at the API level. There's also an archive sight with software for games, utilities etc.

Caucus - A Classroom server
Interacting with the web through a Web server like Apache, Caucus is an application server handles the management of a class room with assignments, class members (users), lessons and content, gradebook, quizzes and conversations much as in a real class.

CCAN C Archive, a collection of EMails
Modelled on the CPAN repository for Perl source files, CCAN is a C archive that contains useful modules. Each module comes with an _info file and a testsuite. There are all sorts of useful stuff like dynamic array management, random number generator, string and file helpers, string helpers and even a transactional database.

DataparkSearch - Web Search Engine
DataparkSearch Engine is a full-featured open sourced web-based search engine released under the GPL License. it's designed to organize search within a website, group of websites, intranet or local system and works with a variety of protocols (http, https, nntp and News Search) and can store its index in a database.

Fast C String operations

for Linux and Mac, stringencoders provides faster than normal transformations using 32 bits at a time. Up to 66 times faster upper and lower case conversion (than clib) and number to string conversion.

GTK+ Object Oriented Widget Library
GTK+ is a toolkit for creating graphical user interfaces with cross platform compatibility and an easy to use API. GTK+ it is written in C and has bindings to many programming languages such as C++, C# and others. GTK+ is licensed under the GNU LGPL 2.1 allowing development of both free and proprietary software with GTK+ without any license fees or royalties.

HeatShrink LZSS Compression for Embedded Systems

This is also for anywhere where small amounts of ram need to be used. It's a data compression/decompression library for embedded/real-time systems that has low memory usage (as low as 50 bytes), and incremental, bounded CPU use so it can compress input data in arbitrarily tiny bites. It's BSD licensed and can be used freely, even for commercial purposes.

KORE.Io - Webserver in C

Kore is a fast web server for creating dynamic websites in the C programming language. It has a website (written in C) that is loaded in memory so the page callbacks are called from the worker processes and requests handled incredibly fast.

Membase - the NoSQL Database that powers Farmville
Membase is an open-source (Apache 2.0 license) low latency, distributed, key-value database management system optimized for storing data for web applications. It handles data requests with low latency and high sustained throughput and scales linearly from a single-server deployment to a cluster of thousands of machines.

Mosaic - The First Popular Web Browser
This is the source code for Mosaic, the first popular web browser. It was written in 1992/1993 and later used by SpyGlass. SpyGlass Mosaic was bought by Microsoft and (it is believed) used as the first Internet Explorer.

Nginx Web server, alternative to Apache
nginx (pronounced engine x) is an HTTP and reverse proxy server, as well as a mail proxy server, written by Igor Sysoev. For a long time, it has been running on many heavily loaded Russian sites as well as WordPress.com. Fairly easy to configure it's renowned for serving static files faster than Apache and can handle many thousands of connections at once because each has a smaller memory footprint.

Open Source Settlers
One of my all time favorite games is Settlers (the earlier ones rather than the more modern ones). This is a work in progress clone of Settlers 1 for Linux. There's also a Windows build.

Open Text Summarizer
Open Text Summarizer is an open source tool for summarizing texts. The program reads a text and decides which sentences are important and which are not. It ships with Ubuntu, Fedora and other linux distros. It works in in English, German, Spanish, Russian, Hebrew, Esperanto and other languages.

Opus Codec - A new sound format
The Opus codec allows a wide range of interactive audio applications, including Voice over IP, videoconferencing, in-game chat, and even remote live music performances. It scales from low bit-rate narrowband speech to very high quality stereo music. The current features include: Bit-rates from 6 kb/s to 510 kb/s, sampling rates from 8 to 48 kHz, both constant bit-rate (CBR) and variable bit-rate (VBR), audio bandwidth from narrowband to full-band,speech and music, mono and stereo and lots more.

PNGNQ - Library for quantizing Imags using a neural Net
Pngnq is a tool for quantizing PNG images in RGBA format using Anthony Dekker's neuquant algorithm. It was adapted by Stuart Coyle from Greg Roelf's pnqquant. The neuquant algorithm uses a neural network to optimize the color map selection with speed and accuracy, giving good results on many types of images.

Redis - Fast Non Relational Database
Redis is an advanced key-value store with a non volatile dataset holding values such as strings, lists, sets, and ordered sets. All these data types can be manipulated with atomic operations to push/pop elements, add/remove elements, perform server side union, intersection, difference between sets, and so forth.

Skipfish - Security vulnerability Scanner
Skipfish is a fully automated, web app. security tool that easily achieves 2000 requests per second assuming the scanned site can handle that. Built in heuristics support many quirky web frameworks and mixed-technology sites, plus automatic learning capabilities, plus other helpful features such as on-the-fly wordlist creation, and form auto-completion. You should use this only on your site.

SubC C Compiler
SubC is a subset of C, and this compiler is in the public domain. It's used in the book Practical C Compilers by Nils M Holm.

Tiny C Safe Webserver in 200 Lines of C
Nweb is a simple Web server written in just 200 lines of C source code. It runs as a regular user, serves up just static files and can't run any server-side scripts or programs. That means it can't open up any special privileges or security holes.

Vstr - Replacement String Library
Vstr is a string library, designed so you can work using readv()/writev() for input/output. This lets you readv() data to the end of the string and writev() data from the beginning of the string without having to allocate or move memory. Adding, substituting or moving data anywhere in the string is optimized for speed.

WebP Tools for Image conversion to WebP
WebP is an image format designed by Google to reduce image file size and thus speed web page loading. It's based on VP8's intra-frame coding and uses a container based on Resource Interchange File Format (RIFF). The download includes tols (and c source code) for WebP conversion.

Xv6 - Linux Like Operating System in ANSI-C
Xv6 is a conversion of a 30 year old Operating System used to teach students about programming OS. It has been rewritten in modern C. There's also a pdf ebook for helping learn about Xv6. You'll need Git to pull down the sources.

©2014 About.com. All rights reserved.