Making the world wide web a more beautiful place. Version 9.6, 25 August 2020
NOT FOR GENERAL USE. ONLY FOR USE WITHIN A VERY SMALL SELECT GROUP OF INDIVIDUALS TO ASSIST WITH SOMEONE'S DISABILITY.
Filtering the internet for a specific phobia, masking the feared entity. Has a counter and a log that syncs to the user's roaming profile.
After 29 revisions since the initial market release on 26 November 2018, it appears I may have finally gotten this right. This code is intended solely for friends and family of an individual with logophobia. It is listed publicly on Google's Chrome extension market place solely for all of the convenience a public listing offers, but mostly so each friend and family member doesn't have to be sent a link every time they create a new account or as more family members and friends begin using the extension.
Though the developer of this extension (I) is not a professional software developer and has a very limited knowledge of software development, this effort was motivated by several years of failure of several customizable content filters. Many failed to inject soon enough or completely enough. Some failed to filter certain frames (most notably iframes). Many did not filter images. Some did not filter links. Many did not monitor DOM mutations -- an absolute necessity in modern browsing with most sites serving dynamic content.
Version 7.0 seems to represent a breakthrough. It appears very stable and very effective (time will tell). Furthermore, unlike many of the revisions leading up to Release 7.0, Release 7.0 does not significantly slow the browsing experience nor does it seem to "break" any pages -- video controls for one example, jumbled references for another example.
As of Tuesday 21 May 2019. I am removing the detailed revision history.
Wednesday 5 June 2019: Changing injection style sheet and manifest to hopeful improve speed of injection on most, if not all sites, while preserving the playback controls within YouTube.
Saturday 22 June 2019: Changed icon and added more exception handling. Also added a translucent background warning.
Thursday 11 July 2019: Discovered my mutation observer was not observing all mutations. As such, aggressive looping over checking the DOM does not appear necessary and imperformance is greatly improved.
Considering aggregating statistics...
Friday 12 July 2019: A couple of bug fixes, one relating to mutation observer, another relating to conditional styling.
Sunday 21 July 2019: Radical redesign of the internal method. Moved away from the XPath, preferring recursive function. A tad slower, but appears more dependable. Also searching all attributes.
Tuesday 23 July 2019: Minor correction.
Thursday 25 July 2019: V8.0 Major rewrite.
Friday 26 July 2019: V8.1 Fixed small bug with hit counter. Finally addressed the resetting of the filter upon following links.
Sunday 28 July 2019: V8.2 Significant improvements still; breaks fewer websites, if any; repaired hit counter (broke hit counter in release 8.0)
Sunday 28 July 2019: V8.3 Minor correction of an inverted logic.
Sunday 28 July 2019: V8.4 Added an omitted exception handler.
Monday 29 July 2019: V8.5 Resolved another bug with the hit counter.
Monday 29 July 2019: V8.6 Resolved an impact to rendering of a few websites.
Tuesday 30 July 2019: V8.7 Cleaned up code. This likely should be a major release. I am hopeful this represents a very mature and stable state in the basic functionality. I am hopeful of adding a settings page soon and perhaps offering an opt-in to POST(share) data on centralized server (such as number of hits vs time, perhaps inclusive of URLs or maybe stripped down to site only). I'd like to add the ability to send "crash reports" soon. For now, I need to pause development on this. This appears a good place to pick up at a later date.
Tuesday 30 July 2019: V8.8 Added ad blocking. For now the ad blocking is rather aggressive, using tremendous system resources. I hope to come back to improve the efficiency of this new addition.
Wednesday 31 July 2019: V8.9
Sunday 4 August 2019: Major Release v9.0 NEW FRESH SCENT. Appears to be a real crowd pleaser. Seems to break very few sites while offering solid protection.
Sunday 4 August 2019: v9.1 Minor correction moments after upload of v9.0.
Tuesday 6 August 2019: v9.2
Sunday 11 August 2019: v9.3 i) Repaired the hit counter log, ii) A rather major change: I now disable scripts when a hit is found. This breaks many pages, especially pages with considerable dynamic content. iii) I added clearing of cookies, history and cache of a site when navigating away from or within the site after a hit on that site.