Fenster is a fronted for RDF quad-stores.
It is inspired by, and similar to Pubby, but differs in that it shows triples from all public graphs, not just the default graph.
Example of how a resolvable URI, http://data.deichman.no/resource/tnr_1140686, is presented in Fenster:
Fenster is stable and has been in production since November 2013 as a frontend for the RDF-catalogue of Oslo public library. Currently it's only been tested against Virtuoso, but presumably any compliant SPARQL endpoint should work. Please let us know if you run into any issues.
Fenster is written in Go, so you'll need the Go toolchain in order to build. It compiles to a statically linked binary, so deployment couldn't be simpler:
git clone https://github.com/knakk/fenster
cd fenster
make package
*- copy
fenster.tar.gz
to your server - unpack, adjust settings in
config.ini
and runfenster
*You have to do the build step manually if your target platform is of a different architecture than your compilation platform. See this guide if you don't know where to start.
If you're on Ubuntu, you might want to deploy Fenster as an Upstart service. Example config:
description "Fenster"
start on filesystem or runlevel [2345]
stop on runlevel [!2345]
respawn
chdir /path/to/fenster
exec ./fenster
If Fenster is running on same server as the RDF-store, you'll have to proxy the requests to the SPARQL endpoint.
Here is an example Apache config, given Fenster running on localhost:8080 and SPARQL endpoint running on localhost:8890/sparql:
<VirtualHost *:80>
ServerAdmin serveradmin@example.no
DocumentRoot /var/www/example.com
ServerName example.com
ProxyRequests off
ProxyPreserveHost on
ProxyTimeout 300
# Proxy ACL
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
RewriteEngine on
RewriteRule ^/sparql(.*)$ http://localhost:8890/sparql$1 [P]
# default proxy if not handled above
ProxyPass / http://example.com:8080/ timeout=300
ProxyPassReverse / http://example.com:8080/
</VirtualHost>
GPLv3