Tag: opensource
Keep a Changelog: Formalized rules for keeping a curated, human readable changelog of all changes to an open source project
pfSense: Open Source Firewall
From the pfSense website:
The pfSense project is a free network firewall distribution, based on the
FreeBSD operating system with a custom kernel and including third party free
software packages for additional functionality. Through this package system
pfSense software is able to provide most of the functionality of common
commercial firewalls, and many times more.pfSense software includes a web interface for the configuration of all included
components. Knowledge of FreeBSD is absolutely not necessary. Unlike some
similar GNU/Linux-based firewall distributions, there is no need for any UNIX
knowledge, no need to use the command line for anything, and no need to ever
manually edit any rule sets. In fact, the majority of pfSense users have never
installed or used a stock FreeBSD system. Users familiar with commercial
firewalls catch on to the web interface quickly, though there can be a learning
curve for users not familiar with commercial-grade firewalls.
FLOSS Weekly Podcast: NGINX Open source web server, reverse proxy server, load balancer, & HTTP cache
This podcast episode provides a pretty good overview of the NGINX application, open source project, and community:
TogetherJS: Mozilla, open source JavaScript library that adds collaboration features and tools to your website
Features
- Audio Chat – TogetherJS uses Web RTC technology to enhance communication
for your users.- User Focus – Your users see each other’s mouse cursors and clicks.
- User Presence – TogetherJS enables your users to see each other in real
time.- Text Chat – Your users can chat with each other with familiar instant
messaging.- Co-Browsing – Your users can follow each other to different pages on the
same domain.- Real Time Content Sync – Your users can see content on a site or app
dynamically change together.
Nightwatch.js: Automated browser testing using tests written in Node.js running against a Selenium server
From the Nightwatch.js website:
Nightwatch.js is an easy to use Node.js based End-to-End (E2E) testing solution for browser based apps and websites.
It uses the powerful Selenium WebDriver API to perform commands and assertions on DOM elements.
Features
Simple but powerful syntax which enables you to write tests very quickly, using
only Javascript and CSS selectors. No need to initialize other objects and
classes, you only need to write the test specs.Built-in command-line test runner which enables you to run the tests either
altogether, by group or single.Manages the Selenium server automatically; can be disabled if Selenium runs on
another machine.Continous Integration support: JUnit XML reporting is built-in so you can
integrate your tests in your build process with systems suchs as Hudson or
Teamcity.Use CSS selectors or Xpath to locate and verify elements on the page or execute
commands.Easy to extend if you need to implement your own commands specific to your
application.
libgit2: portable Git library written in C with bindings for over 20 languages & platforms
libgit2 is a portable, pure C implementation of the Git core methods provided as a re-entrant linkable library with a solid API, allowing you to
write native speed custom Git applications in any language which supports C bindings.
- 100% Cross-Platform: Linux, FreeBSD, OpenBSD, Mac OS X, iOS, Amiga, MinGW and fully native Windows.
- Zero Dependencies: Builds out of the box with no dependencies. Works in embedded devices and iOS.
- ANSI C89: Written with portability in mind. Builds in GCC, Clang and MSVC.
- Permissive Licensing: GPLv2 with Linking Exception. Link with open and proprietary software, no strings attached.
The complete list of language bindings is here on the Github page.
Jasmine: JavaScript Behavior-Driven Development Framework
Jasmine is a behavior-driven development framework for testing JavaScript code. It does not depend on any other JavaScript frameworks. It does not
require a DOM. And it has a clean, obvious syntax so that you can easily write tests.
FreeMarker: Java Templating Engine
FreeMarker is a “template engine”; a generic tool to generate text output (anything from HTML to autogenerated source code) based on templates.
It’s a Java package, a class library for Java programmers. It’s not an application for end-users in itself, but something that programmers can
embed into their products.FreeMarker is designed to be practical for the generation of HTML Web pages, particularly by servlet-based applications following the MVC (Model
View Controller) pattern. The idea behind using the MVC pattern for dynamic Web pages is that you separate the designers (HTML authors) from the
programmers. Everybody works on what they are good at. Designers can change the appearance of a page without programmers having to change or
recompile code, because the application logic (Java programs) and page design (FreeMarker templates) are separated. Templates do not become
polluted with complex program fragments. This separation is useful even for projects where the programmer and the HTML page author is the same
person, since it helps to keep the application clear and easily maintainable.Although FreeMarker has some programming capabilities, it is not a full-blown programming language like PHP. Instead, Java programs prepare the
data to be displayed (like issue SQL queries), and FreeMarker just generates textual pages that display the prepared data using templates.
We use Apache Velocity extensively at work in our web content, but it hasn’t seen much in the way of updates for quite some time.
Overtone: Open source live-coding environment & audio collaboration platform written in Clojure
According to the website, Overtone is a “live-coding environment and audio collaboration platform that’s free for everyone to download, hack on and make crazy-cool sounds either individually or in groups.” It is “a musical programming library written in Clojure which uses the SuperCollider audio engine and synthesis server under the covers.”
For a taste of what kind of sounds can be made in Overtone, check out this band’s website. Overtone also supports integration with Quil and Shadertone to integrate synchronized visuals with Overtone audio.