The Bitlove web interface is built with Haskell using the Yesod framework. See Bitlove.org for the actual site.
The Yesod project has a little book. For beginners, read Real World Haskell.
You’ll need Haskell, Cabal, PostgreSQL and a UNIX OS. You might want to try the Haskell Platform, available in most package managers.
Some commands need to be adjusted or left off. Start the installation by running the following ones:
initdb /usr/local/var/postgres -E utf8
pg_ctl -D /usr/local/var/postgres start
createdb prittorrent
Next get the database dump in your project folder:
https://spaceboyz.net/~astro/prittorrent-2012-08-27.sql.bz2
bzip2 -d prittorrent-2012-08-27.sql.bz2
Open a shell with psql prittorrent
and enter:
CREATE USER prittorrent WITH SUPERUSER PASSWORD '1234';
CREATE ROLE postgres;
\i prittorrent-2012-08-27.sql
\q
rm prittorrent-2012-08-27.sql
Compile and run:
cabal update && cabal install --only-dependencies
yesod devel
Now point your browser to http://localhost:8081/
.
tracked: reset gauges on startup tracked cleaner loop port Tracker.Handler.HTTP to Tracked
PBKDF2 auth 404 → search
graphs
filter counters still wrong
PSHB
css overflow fixes
global statistics numbers
change feed URL
Feed Links größer
"My feeds" -> clickable username
User -> Shows -> Feeds
Subscribers zählen: Hash(IP + User-Agent) über 24h
RFC5005: Feed Archiving
Feeds: gzip
OAuth für writing API (automatisch Feeds aus Podlove)
Overwrite title: current title as template
Filter: not only what is on current page
de-ch choosable machen
Per-item pages
MapFeed content-type
URL longener?
Fix empty downloads.type
filter.js:
New {feeds,downloads}.{lang,summary,type} in:
enforce https for log in
<atom:link rel="self">
<atom:link rel="alternate">
style:
Edit user:
Edit feeds:
graphs:
more configurability
Fetch & display feed summaries
Feed summaries: X items, Y torrents
OEmbed
Installation: automation
http://bokardo.com/principles-of-user-interface-design/ ← 15