Skip to content

babo/hnjobs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Organize monthly Hacker News jobs

Description

Ask HN: Who is hiring? at the first day of each month at 9 AM Eastern time is a great source of jobs and trends in the startup world. Following it is quite a hassle as the UI is not designed for hundreds of posts in a single page. This application is cloning it into a local database and adds a UI to select interesting jobs and hide the unattractive ones.

Requirements

python3
virtualenv

Installation

The current database is RethinkDB, use they instructions to install it. On OS X with brew it's as easy as:

brew update && brew install --upgrade rethinkdb

Backend is written in python using a minimalistic approach with flask. To run it use setup.sh to create a virtualenv with the required packages installed in it.

Frontend is using ReactJS, jquery and bootstrap with on the fly JSX transformation.

Starting the service

  • start your database somewhere with rethinkdb -d YOUR_PREFERRED_DATABASE_DIRECTORY_LOCATION.

  • activate the virtualenv with source ./bootstrap_venv/bin/activate

  • run ./hn.py to collect data using firebaseio.com. This will take around 10 minutes. At the first days of the month you should run this frequently to collect the latest jobs and comments.

  • start the local server as ./server.py and point your browser to http://localhost:3000. To run it on a different port use env PORT=XXXX ./server.py

You can be lazy and run all of the above in a tmux session with scripts/run-tmux.sh.

Stopping the service

  • stop server.py with a CTRL-C
  • stop rethinkdb with a CTRL-C
  • stop hn.py with a CTRL-C

Stopping all of the processes in tmux will also close the session automatically.

Set month or thread id manually

While the program selects the current month by default you can override it both for data collection and serving using command line arguments:

-y YEAR, --year YEAR
-m MONTH, --month MONTH
-t THREAD_ID, --thread THREAD_ID
-h, --help

About

Select matching monthly hacker news jobs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published