• Stars
    star
    109
  • Rank 309,222 (Top 7 %)
  • Language
    HTML
  • Created over 12 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Friend/foe individual writers on Hacker News.

Hacker Smacker

Friend/foe individual writers on Hacker News.

Synopsis

Hacker Smacker helps you identify quality authors and filter out obnoxious commenters on Hacker News. Three little orbs appear next to every author's name and you can choose to either friend or foe them.

What's neat is that if you friend people, and they also use Hacker Smacker, you'll see all of your friend's friends and foes. This helps you identify commenters that you want to read as you quickly scan a comment thread. I've found that this reduces the time I spent on Hacker News, as I can glance at long comment threads and just find the good stuff.

Hacker Smacker is directly inspired by Slashdot's friend/foe system.

Installation

Hacker Smacker is divided into two parts:

  • Client: the extension that gets injected into Hacker News and reports back with friends and foes.
  • Server: the Node.js/Express.js/Redis system that keeps track of all friends/foes and friend of a friend and foe of a friend relationships.

Safari client

Download the Safari extension

To install just double-click the downloaded extension.

Chrome client

Download the Chrome extension

To install the Chrome extension, you cannot double-click it (unfortunately, Chrome no longer allows this). Instead, drag it into Chrome's Extensions page at chrome://extensions.

Firefox client

Download the Firefox extension

To install the Firefox extension, just drag the .xpi file into an open Firefox window.

Server

You don't need to install the server unless you want to run your own private version of Hacker Smacker. If you do decide to install your own server, you're on your own.

Screenshots

A friend or foe has not yet been made. The standard orb:

Choosing a friend or foe. Animation provides a nice slide out:

A blend of friends and foes illustrating the transformative experience of Hacker Smacker:

Examples of great Hacker News comments from which to start a collection of friends

Acknowledgements

  • Mihai Parparita [email protected] - Help with fixing the issue around browsers not allowing a JSONP AJAX request to modify the page, as it is sandboxed and cannot alter the page using arbitrary JavaScript (the JSONP) not included with the extension itself.

License

  • MIT License

Background

Hacker Smacker was built to learn how FoaF (Friend of a Friend) works. The idea is that not only do you want to surface content from your friends, but if you chose your friends well, they can help you surface more great content by highlighting comments from their friends.

The impetus for building a small system where the primary goal is simply to quickly show relationships was that I wanted to build the same system for NewsBlur, a visual RSS feed reader with intelligence. The backend is built using Redis sets and CoffeeScript/Node.js. NewsBlur's social layer, which was built immediately after this project, uses a very similar backend.

Learning how to build this project was the main reason, as I am now able to bring this technique to other projects.

Author

More Repositories

1

NewsBlur

NewsBlur is a personal news reader that brings people together to talk about the world. A new sound of an old instrument.
Objective-C
6,732
star
2

Raspberry-Pi-Photo-Frame

A photo frame for Raspberry Pi that automatically downloads photos from Flickr and displays them in a random order when somebody walks by.
Python
72
star
3

pulse-bloom

An interactive biofeedback installation at Burning Man 2014
C
55
star
4

turntouch-mac

Turn Touch Mac app
Objective-C
17
star
5

samuelclay

The code for samuelclay.com
HTML
16
star
6

grove

Grove is the forest inside your lungs. An interactive biofeedback art installation at Burning Man 2016
C++
14
star
7

raphael-easing

Animation easing functions for RaphaelJS (SVG/VML) derived from jQuery's easing animation functions
JavaScript
12
star
8

turntouch-ios

Turn Touch iOS App
Swift
11
star
9

turntouch-remote

Firmware and board design files for the Turn Touch smart home remote control
C
10
star
10

donationparty

Invite friends to donate a randomly selected amount (up to $10) to charity and one lucky winner will receive something awesome from Amazon.
Python
7
star
11

doormonitor

Turns a remote light on and off based on the position of a door.
C
6
star
12

thedoclub

The Do Club archives, presentation proposals, and upcoming meetings.
JavaScript
5
star
13

newyorkfieldguide

A field guide to New York's numerous Historic Districts.
Python
3
star
14

ofbrooklyn

Samuel Clay's public blog
JavaScript
2
star
15

turntouch-enclosure

CAD models and machining toolpaths for the Turn Touch smart home remote control
Component Pascal
2
star
16

mechops

Satellite dish visual machine
JavaScript
1
star