https://github.com/jawerty/myAlgorithm Skip to content Sign up * Product + Features + Mobile + Actions + Codespaces + Copilot + Packages + Security + Code review + Issues + Discussions + Integrations + GitHub Sponsors + Customer stories * Team * Enterprise * Explore + Explore GitHub + Learn and contribute + Topics + Collections + Trending + Skills + GitHub Sponsors + Open source guides + Connect with others + The ReadME Project + Events + Community forum + GitHub Education + GitHub Stars program * Marketplace * Pricing + Plans + Compare plans + Contact Sales + Education [ ] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this user All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up {{ message }} jawerty / myAlgorithm Public * Notifications * Fork 4 * Star 134 A self hosted recommendation feed generated from your browsing habits 134 stars 4 forks Star Notifications * Code * Issues 0 * Pull requests 0 * Actions * Projects 0 * Wiki * Security * Insights More * Code * Issues * Pull requests * Actions * Projects * Wiki * Security * Insights jawerty/myAlgorithm This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. main Switch branches/tags [ ] Branches Tags Could not load branches Nothing to show {{ refName }} default View all branches Could not load tags Nothing to show {{ refName }} default View all tags 2 branches 0 tags Code Latest commit @jawerty jawerty Update README.md ... 8d032c7 Jul 19, 2022 Update README.md 8d032c7 Git stats * 16 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time popup_assets react .DS_Store .babelrc .gitignore README.md Readability.js background.js compromise.js content-fetcher.js content.js lda.js manifest.json package-lock.json package.json popup.html ranking.js storage.js webpack.config.js View code [ ] myAlgorithm (beta) Version Install If want to load the developer version How to use? The Content Feed Algorithm Editor Feed settings How it works README.md myAlgorithm (beta) Your own self hosted recommendation feed based on your browsing habits. myAlgorithm is a chrome extension I made for myself to have more control over my recommendation feeds. It tracks and stores your browsing habits (searches, clicks, content engagements, text input) locally and web scraped various search engines (right now google, duckduckgo, and yandex) with auto-generated search queries. As for privacy and security, the only server interactions made in the app are the web scraping routines (using fetch API) to make the search engine queries. Otherwise, all the data (tracking data and settings) is stored locally in browser to avoid any privacy concerns. This project is a work in progress and available for anyone to test in the meantime. If you like using this project please consider buying me a coffee! https://www.buymeacoffee.com/bjGHFVW355 Here's the discord if you're interested in getting involved/ contacting the developer (me) https://discord.gg/C6sYF48f Version 0.1 Install Download the Chrome extension here. You must have a chromium browser (Google Chrome, Opera, Microsoft Edge, Brave Browser) in order to use myAlgorithm If want to load the developer version Fork the repo and then follow this tutorial on loading an unpacked extension in Chrome https://webkul.com/blog/ how-to-install-the-unpacked-extension-in-chrome/ How to use? Simply use your browser like how you would normally. In realtime you'll be able to see topics relating to your usage in the extension popup. The Content Feed You will get a daily feed of content (also an option to refresh at will) after 6am everyday. It will have roughly 10 pieces of content from on your allowed sources (youtube videos, twitter posts, reddit posts, etc.) based on your browsing habits Screen Shot 2022-07-17 at 11 38 30 AM Algorithm Editor The Algorithm Editor is a dashboard to view and edit your recommendation algorithm. You can see two graphs detailing your overall browsing habits. Below you have the option to view, add and remove all of the topics that will be used in the web scraping routines (these are ranked by occurrences, ranking prorities and partially randomized) Screen Shot 2022-07-17 at 11 47 44 AM Feed settings You are able to switch on and off which content sources you want and don't want. You can also set the ranking priorities you want for the recommendation algorithm. In addition there's a Refresh mode to update the content feed whenever (warning Refresh mode can cause rate limiting in google/yandex if you run it too often) Screen Shot 2022-07-17 at 11 47 55 AM How it works The recommendation algorithm collects keywords from your browsing habits and runs an LDA topic model to gather the prioritized terms to use to web scrape for content. The web scraping uses search queries from these topics to parse from major search engines (Google, Yandex, DuckDuckGo) to get content related to your habits. About A self hosted recommendation feed generated from your browsing habits Resources Readme Stars 134 stars Watchers 1 watching Forks 4 forks Releases No releases published Packages 0 No packages published Languages * JavaScript 94.1% * SCSS 5.7% * HTML 0.2% Footer (c) 2022 GitHub, Inc. Footer navigation * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.