Code Monkey home page Code Monkey logo

devwebfeed's Introduction

Development

Create credential files

  • Create a serviceAccountKey.json file in the root folder and add your service account credentials from the Google Developer Console.

  • Create a OAuth web app credentials file in the Google Developer Console and add it to the root folder. It should be named google_oauth_credentials.json..

  • Create twitter_credentials.json in the root folder and fill it with the API key, consumer key/secret obtained from Twitter.

  • Create analyticsServiceAccountKey.json in the root folder and fill it with service account credentials that are restricted to use the Google Analytics Core Reporting API.

Installation

Setup it up:

yarn

Build it:

yarn build

Run it

Serve it:

yarn start-dev

Navigate to http://localhost:8080/. The page will update in realtime as people add posts. The start-dev script will reload nunjucks as changes are made.

Navigate to http://localhost:8080/ssr will serve the server-side rendered version of the app using headless Chrome.

Signing in (top of the page) allows admins to remove posts submitted by humans (not bot posts like RSS or Tweets). The first time you try to remove a post, you'll sign in through Google's OAuth flow.

Deploy

To deploy:

yarn deploy

Extension

A companion chrome extension is available to share posts on the feed you find interesting and which are not automatically pulled in. Things like gists, release notes, samples, external articles).

Note: The first time you share an URL, an OAuth popup will open asking you to login. This is so we know who added the post.

Apache 2.0 © 2018 Google Inc.

devwebfeed's People

Contributors

ebidel avatar mathiasbynens avatar paulkinlan avatar petele avatar rowan-m avatar rreverser avatar surma avatar tomayac avatar una avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

devwebfeed's Issues

Combine v8.dev stats with stats from old blog

(Continuing the discussion from #22 (comment).)

Ideally, we’d get the combined Analytics for the old URL structure + the new one. (We still use the same tracking ID.) Is this possible without overcomplicating things? What I do manually is e.g. for https://v8.dev/blog/10-years I’d search analytics for the page slug 10-years, which would also match the old URL https://v8project.blogspot.com/2018/09/10-years.html.

Some context used to be on the old V8 blog, but is now available under a new URL. For example, these two URLs refer to the same content (and the former now redirects to the latter):

https://v8project.blogspot.com/2018/09/10-years.html
https://v8.dev/blog/10-years

We're still using the same Google Analytics tracking ID, so it should be possible to get the page views for /blog/10-years as well as for /2018/09/10-years.html and just add them up.

There's a complete list of mappings from old URLs to new URLs: https://github.com/v8/v8.dev/blob/28dab9d3064fc38bbf5d5a32430e724e7503aeec/url-mappings.js#L15-L90 Maybe we could use that reverse mapping in devwebfeed? I.e., if a mapping exists for the current URL (e.g. https://v8.dev/blog/10-years), also look up the stats for the old one (e.g. https://v8project.blogspot.com/2018/09/10-years.html) and add them up to get the total view count.

Double URL-encoding bug after login

Reproduction steps

  1. Log out
  2. Open e.g. https://devwebfeed.appspot.com/admin/stats?author=Mathias%2BBynens
  3. Go through the login flow

Expected result:

You’re now at https://devwebfeed.appspot.com/admin/stats?author=Mathias%2BBynens.

Actual result:

You’re now at https://devwebfeed.appspot.com/admin/stats?author%3DMathias%2BBynens. Note how the = got incorrectly escaped as %3D.

Site: Error 404

Hi all,

since a couple of weeks, the website is giving me a 404:

  1. That’s an error. The requested URL was not found on this server. That’s all we know.

Just wanted to inform you...

Cheers
midzer

Add a blocklist of URL's

There's probably some url sets that we don't want to allow to get posted such as googleplex etc. Might be good to add a configurable filter that stops us from doing something stupid.

Bug: Only works in Chrome

Feed does not load on other browsers then Chrome, tried both Edge & FF — app shell loads but feed keeps loading.

Any plans to make it cross browser?
Thank you.

RSS: handle dates differently?

I love this site and its feed! Alas, in an RSS reader, feed entries often appear in the past. I’m assuming that’s due to the entries using the dates of the sources(?) Would it help if the date of a feed entry were the date of its creation?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.