beat: a reporter's regular routine for covering news sources
beat is a new tab replacement for Chrome that shows the latest stories your frequent news sources at a glance, plus a quick check of the weather.
- Hacker News
- View the top stories on Hacker News, with the ability to choose between different story streams like the Top stories, or turn on the flood with all New stories.
- Designer News
- Subreddits
- Keep track of any subreddit, with the ability to create a custom theme and choose from different streams like Top or Controversial.
Not seeing a news source you'd like?
Create a Github issue and let me know!
- Install the dependencies
- Copy the file at
buildConfig.tmpl.json
tobuildConfig.json
and fill in the missing values- Note that it's important that this filled out file is not committed to Github to protect any secret values or keys it contains, but also note that any built version will leak these values to users who know how to retrieve them and will not be obfuscated in any way
- run
npm run build-dist
- In Chrome, go to chrome://extensions/ and click "Load unpacked"
- Ensure that "Developer mode" is turned on in the top right of that page
- Select the path:
/path/to/beat/public
openweatherAPIKey
: An API key for the OpenWeather service, simply sign up for a developer account there and provide your API key here- Because of the fairly aggressive caching strategy used by the extension, it's likely that you can use the free tier and be ok
settingsStorage
: The storage method for application data (settings, onboarding progress, etc...), possible values are:localStorage
: Use the browser's local storage API for storage, used mostly for local developmentchromeStorage
: Use Chrome's extension storage API, which will allow other Chrome installations to use synced settings, for personal use this is typically what you want
While I want this extension to be as useful to as many people as possible, using the extension from the Chrome webstore means you're using my API keys which, well, aren't free for me either.
I wanted to keep the project open source to encourage people to build it themselves and bring their own API keys if it makes sense for them. At the same time, I want to provide an avenue for those who want a more convenient experience - the price of that convenience being helping me out with service subscription costs.
See here for more information.