Coder Social home page Coder Social logo

jordwest / news-feed-eradicator Goto Github PK

View Code? Open in Web Editor NEW
1.1K 28.0 269.0 3.55 MB

A browser extension that deletes your news feed and replaces it with a nice quote

License: MIT License

CSS 8.98% JavaScript 1.22% Makefile 1.04% TypeScript 88.43% HTML 0.33%
webextensions browser-extension firefox chrome

news-feed-eradicator's Introduction

News Feed Eradicator

A browser extension that deletes your Facebook news feed and replaces it with a nice quote.

Install Chrome Extension

Install Firefox Add-on

Screenshot

Development

This plugin is built as a WebExtension - a standard for browser plugins currently supported in both Chrome and Firefox.

To build for either browser, clone the repository and then run:

make dev

If everything is successful, check the build folder for the extension contents. You can load the build directory into either Chrome or Firefox as an unpacked or temporary extension. See the instructions for Chrome or Firefox.

Running make dev will watch for changes and recompile, however each time you make changes you'll need to tell the browser to reload the temporary extension.

To build a distributable .zip for production, just run:

make

The extension package can be found in the dist folder.

news-feed-eradicator's People

Contributors

achalddave avatar aethos avatar brandon-mork avatar cybersokari avatar dependabot[bot] avatar gregorylearns avatar hannoeru avatar iamshakil avatar jesperdramsch avatar jordwest avatar jschaf avatar kessido avatar khanaru220 avatar nzawirski avatar reciosonny avatar rjshade avatar ryanmonro avatar stephenpcook avatar viswanathgs avatar waffle-iron avatar weeksling avatar ymirke 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

news-feed-eradicator's Issues

Quote ts file

Just curious to know why not use an external API to generate quotes? Why static quotes?

This plugin and infinite scroll don't play super well together

If you trigger infinite scroll (i.e. by scrolling to the bottom of the page), it tries to load new content until the bottom of the page is pushed out of the viewframe. When this plugin is enabled, that never happens and it loads forever (hooray).

Steps to reproduce:

  1. Enable the plugin / go to facebook.com
  2. Scroll to the bottom of the page.
  3. Check out all those network requests

Not enough qoutes

:) I think you could add some more or make a script that would get them from quotes.reddit.com or heysaidso.com/

Get Firefox add-on signed

The Firefox add-on no longer worked for me because Firefox blocks unsigned add-ons. Can you get this add-on signed so that we can all continue to enjoy it? Thanks!

Feature request: hide the chat sidebar

Pretty self explanatory. I can work on this if you think it would fit well into the project. Shouldn't be rocket science. Happy to maintain the feature. LMK!

Feature Request--Top 5 stories

Sorry this probably isn't the right place to post this, but I'm really interested if any developers who have forked this repository have attempted to make the eradicator limit the number of stories shown instead of eradicate them all. A killer feature for me would be to view the top 5 stories, but not allow scrolling. Facebook's algorithms do a fantastic job (for me) of putting what I'm actually interested in at the top of my feed, and I would love to see people's important announcements without getting distracted by eight miles of memes. If anyone has already worked on this I'd love to see it!

As a side note, Facebook posts get marked as "have seen" when scrolled past (which is why you don't see the same announcement at the top of your feed every time you log in). Does anyone know if the eradicator prevents this switch from getting flipped, or does it mark what would have been seen as seen?

make dev freezes

Hi all and thanks for that great tool and for releasing its code !

I am trying to modify it a bit for a personal project and for training, but when I try to build, the process just freezes at the [2019-02-16 13:18:24] waiting for changes... stage .. Trying to see in the rollup file if there is anything I can tweak but I'm lacking experience with that kind of process ..

Thanks in advance for any help ! :)

Can we make eradication publisher specific??

I want to see posts just from some specific loved ones. But not all the other disturbing/distracting things that Facebook decides to put up on my face to determine what I like or dislike.

Do you think we can do it?

P.S. I wish to be a contributor.

Fix link text on Remove section

The link text on "Remove" is the same for fork. It could be changed to just "Remove".
Browser Details : Firefox Quantum 61.0.1 (64bit) on Linux Mint

image

Eradicate feeds on other sites

One common request is for this to work on sites other than Facebook. I think this is achievable once #50 is complete. Please use this issue for requests for other sites.

  • Instagram
  • LinkedIn - #89, #101 (coming in v2.2.0)
  • Youtube - ba78134 (coming in v2.2.0)
  • Twitter - #92 (landed in v2.0.0)
  • Reddit - #98 (v2.1.0)
  • HN - #97 (v2.1.0)

Avoid reloading the page several times

When I start facebook, the page reloads (F5) automatically a certain number of times before it stops.
It lasts like 20 seconds and the blinking icon (from facebook to loading) on the tab is distracting.
I'm on chromium.
Can it be fixed ?
Thank you,

Robin

Self-Customized Quotes, and shuffle it periodically

Hi Jordan,

This is an excellent stuff for my school life.
I have an enhancement suggestion though: I would like to customize my set of quotes myself, and have it shuffle for each duration of my choice.

Thank you!

Port to Web Extension

Since Firefox 48, WebExtensions are supported and you can simply use your chrome extension for Firefox from the looks of it.

Use opt-in host permissions model

Instead of declaring all host permissions in the manifest, host permissions should be requested programmatically when they're needed.

This avoids the situation where adding a new host (eg, m.facebook.com) to the manifest automatically disables the entire plugin for existing users until they allow the new permissions. Instead, we can ask only for the new permission when it's required, or after the upgrade.

Firefox for Android revisited

I'd like to pick up an old issue again, namely #21 (and #35). Firefox for Android has since seen support for Web Extensions and I'd like to know whether it'd be possible now to eradicate the news feed from the mobile version of Facebook? :) (I installed NFE on my Android phone but m.facebook.com is still showing the news feed.)

Match Facebook subdomains in the Chrome version

In the Firefox add-on, News Feed is disabled for all subdomains of Facebook (i.e. *.facebook.com).

This is unfortunately not true in Chrome, where only www.facebook is matched. I can submit a pull request for this feature if that's easiest for you?

Working hours

Something like "working hours" would be usable. I can be distracted and procrastinated on weekends or evenings.

Allow user to click to see his feed

I'd like to use News Feed Eradicator to eliminate the feed by default, but still allow me to click somewhere to see the feed now, if I choose. You can even display a prompt asking "Are you sure you want to spend your attention browsing facebook now?" to make sure people opt-in consciously.

A page refresh would return the feed to its default state - hidden.

Stopped working.

I don't know if Facebook changed their codebase or there is something else going but it does not work as of today(27 Jan 2019) in Firefox. Instead of quotes I see my homepage.

Facebook Vido Watch

The sidebar now includes a section with videos from Facebook. Can we remove this?

store and load quotes from an online text or csv file

Hi Jordan,

Big thanks, been using the extension for couple of months, and find it extremely useful. Additionally I would like more quotes, or an easier way to add custom ones.

Therefore here are a couple of thoughts what I imagine would be a good solution:

  • if anybody could create a text or csv file, publish it somewhere online, and then link News Feed eradicator to that file
  • the easiest format would be a text file, with 1 quote on each line. If the script detects "~ author" at the end, then it styles it accordingly, if not then the line is presented as a quote without an author
  • there could be multiple builtin files, so the users have a choice already without having to create new files
  • everybody could submit a file to github, to share with others. the url could go into a list, that's linked from the extension

What do you think?

Cannot resolve module 'lodash/collection/foreach'

Hi,

When I'm trying to build the extention, I get the following

jack:news-feed-eradicator/ (master*) $ BROWSER=chrome webpack                                                                                                                                                                                                        [18:24:07]
Building chrome extension
Hash: 7dda7ac1d9c5f674b3e1
Version: webpack 1.12.9
Time: 2803ms
        Asset       Size  Chunks             Chunk Names
manifest.json  619 bytes          [emitted]  
   icon16.jpg  732 bytes          [emitted]  
   icon48.jpg    1.91 kB          [emitted]  
  icon128.jpg    6.49 kB          [emitted]  
 eradicate.js     804 kB       0  [emitted]  main
eradicate.css    1.42 kB       0  [emitted]  main
    + 175 hidden modules

ERROR in ./eradicate.js
Module not found: Error: Cannot resolve module 'lodash/collection/foreach' in /home/jack/news-feed-eradicator/src
 @ ./eradicate.js 9:14-50
Child extract-text-webpack-plugin:
        + 2 hidden modules

When I run make chrome it does create a package in dist, but loaded extention produce following error in chrome console

Uncaught Error: Cannot find module "lodash/collection/foreach"

Firefox for Android

Any way to make it work for the android mobile version? Adding m.facebook.com, web.facebook.com, etc. as domains, I guess

EDIT: I see it's set to *.facebook.com, why is it not working on android then?

Safari extension

Works great in Chrome. Would love to see this in Safari. Anyone else?

Add instagram support

With jQuery enabled,

$('._owark').remove();

currently gets rid of the Instagram feed for me. However, I'm not sure if this classname changes over time.

Thank You very much!

Just opening this issue to thank the devs for making such an amazing extension. This is the my most used and rated extension. Thank you really!

Feature request -- block stories

Facebook has released a new feature that resembles Snapchat and Instagram Stories, where Facebook users can post pictures/videos that are shared with their friends for only a day.

These stories are now appearing on the top-right corner of my Facebook newsfeed.

Feature request: let's get the Chrome Extension set up so we can get rid of this! 😄

Facebook infinity loading

While this extension is activated Facebook is loading infinitely. It finish loading and immediately start new one. So it make about 2 loading per seconds. It is also causing lags while writing in chat.

bulk quote import

I'd love to be able to add a list of custom quotes, kind of hard to bulk import using the existing form

Replace webpack with rollup

Webpack isn't necessary for such a simple build. Rollup is also much better at tree shaking, which will simplify the build output and hopefully make it easier to review for getting signed in the Firefox Add-On store (#12 #18 #4)

More quotes!

Hello. Can there be more quotes? I haven't looked into where you guys add quotes, but I've been using this for a long enough period to know that there are only about 10-15 of them and I know all of them by heart at this point so I think there could easily be support for a new one every day. I could make this enhancement if someone could direct me to where. Thanks!

Bug: Keeps reloading forever

Facebook keeps reloading over and over when the extension is enabled.
I've check a bit, and it seems it can't access error.facebook.com (probably ublock is denying it).

Any idea how can I get it to work properly while still using ublock?

Thanks!

When building: «Cannot find module 'react'»

I cloned the repo, and I'm trying to build it locally. But when doing "make" I get:


ERROR in ./components/settings.tsx
(1,24): error TS2307: Cannot find module 'react'.

ERROR in ./components/settings.tsx
(2,25): error TS2307: Cannot find module 'react-redux'.

Any way this plug in can eventually be used for Facebook's mobile site?

Deleting the app doesn't break my habit of opening the mobile site in chrome, which the plug in doesn't work for.

My brother needs to access Facebook on his phone for school related groups he needs to check on, but he doesn't want the newsfeed either. Having the ability to block the newsfeed on on phones would be wonderful.

Trouble building

after cloning the repo and running
make install
and webpack I get hte following error

ERROR in ./components/settings.tsx
(1,24): error TS2307: Cannot find module 'react'.

ERROR in ./components/settings.tsx
(2,25): error TS2307: Cannot find module 'react-redux'.

ERROR in ./components/settings.tsx
(11,9): error TS2339: Property 'props' does not exist on type 'Settings'.

ERROR in ./components/settings.tsx
(20,24): error TS2339: Property 'props' does not exist on type 'Settings'.

ERROR in ./components/settings.tsx
(21,25): error TS2339: Property 'props' does not exist on type 'Settings'.

ERROR in ./components/settings.tsx
(28,27): error TS2339: Property 'props' does not exist on type 'Settings'.

ERROR in ./components/settings.tsx
(29,23): error TS2339: Property 'props' does not exist on type 'Settings'.

ERROR in ./components/settings.tsx
(30,24): error TS2339: Property 'props' does not exist on type 'Settings'.

ERROR in ./components/settings.tsx
(33,13): error TS2339: Property 'props' does not exist on type 'Settings'.

ERROR in ./components/settings.tsx
(35,22): error TS2339: Property 'props' does not exist on type 'Settings'.

ERROR in ./components/settings.tsx
(40,13): error TS2339: Property 'props' does not exist on type 'Settings'.

ERROR in ./components/settings.tsx
(41,21): error TS2339: Property 'props' does not exist on type 'Settings'.

ERROR in ./components/quote-display.tsx
(1,24): error TS2307: Cannot find module 'react'.

ERROR in ./components/quote-display.tsx
(2,25): error TS2307: Cannot find module 'react-redux'.

ERROR in ./components/quote-display.tsx
(25,8): error TS2339: Property 'state' does not exist on type 'EditingPanel'.

ERROR in ./components/quote-display.tsx
(29,33): error TS2339: Property 'state' does not exist on type 'EditingPanel'.

ERROR in ./components/quote-display.tsx
(30,29): error TS2339: Property 'props' does not exist on type 'EditingPanel'.

ERROR in ./components/quote-display.tsx
(33,9): error TS2339: Property 'setState' does not exist on type 'EditingPanel'.

ERROR in ./components/quote-display.tsx
(37,9): error TS2339: Property 'setState' does not exist on type 'EditingPanel'.

ERROR in ./components/quote-display.tsx
(41,9): error TS2339: Property 'props' does not exist on type 'EditingPanel'.

ERROR in ./components/quote-display.tsx
(41,28): error TS2339: Property 'state' does not exist on type 'EditingPanel'.

ERROR in ./components/quote-display.tsx
(41,45): error TS2339: Property 'state' does not exist on type 'EditingPanel'.

ERROR in ./components/quote-display.tsx
(70,8): error TS2339: Property 'state' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(81,9): error TS2339: Property 'setState' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(82,27): error TS2339: Property 'state' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(88,9): error TS2339: Property 'props' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(93,9): error TS2339: Property 'props' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(98,9): error TS2339: Property 'setState' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(102,9): error TS2339: Property 'setState' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(106,9): error TS2339: Property 'setState' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(107,9): error TS2339: Property 'props' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(114,13): error TS2339: Property 'state' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(114,43): error TS2339: Property 'state' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(124,12): error TS2339: Property 'state' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(129,45): error TS2339: Property 'props' does not exist on type 'QuoteDisplay'.

ERROR in ./components/quote-display.tsx
(130,48): error TS2339: Property 'props' does not exist on type 'QuoteDisplay'.

ERROR in ./store/index.ts
(2,21): error TS2304: Cannot find name 'require'.

ERROR in ./store/index.ts
(5,19): error TS2307: Cannot find module 'redux-thunk'.

ERROR in ./store/index.ts
(10,32): error TS2314: Generic type 'Store<S>' requires 1 type argument(s).

ERROR in ./store/index.ts
(31,20): error TS2345: Argument of type '(dispatch: any, getState: any) => any' is not assignable to parameter of type 'Action'.
  Property 'type' is missing in type '(dispatch: any, getState: any) => any'.
Child extract-text-webpack-plugin:
        + 2 hidden modules

Facebooks moved subdomains...

Looks like facebook is forwarding users from www.* to web.*, will adding an extra line to the permissions option in the manifests sort this?
Happy to do a PR, but I've never worked with browser plugins.

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.