eejdoowad
Joined 9 years ago
Joined 9 years ago
Since you offered... I'm curious about the rendering technology behind it. I'm working on a web app with a spreadsheet interface, and I'm using a standard canvas-rendered grid.
You obviously have different design constraints, so it would be interesting to see how they shaped your solution.
I created a rule to remove thumbnails and shorts from YouTube, and after a few failed attempts, it succeeded! But there were massive tracts of empty space where the images were before. With polish and an accessible way to find and apply vetted addons so that you don't have to (fail at) making your own, I would consider using it.
My daily driver is Firefox, where I've set up custom uBlock Origin cosmetic rules to personalize YouTube by removing thumbnails, short, comments, images, grayscaling everything except the video, etc. My setup works great for me, but I can't easily share it with other people who would find it useful.
Where are repositories stored and do you use any sort of backup or replication?
Sqorn doesn't use tagged template literals to be cool. It uses them to make writing SQL flexible, secure and intuitive.
You can write:
const boy = sq.from`person`.where`age < ${7} and gender = ${'male}`
to produce the query:
{ text: 'select * from person where age < $1 and gender = $2', args: [7, 'male'] }.
All methods have both template and non-template string forms you can choose between. For example, the query above could also be written as:
sq.from('person').where({ maxAge: sq.l`age < ${7}`, gender: 'male' })
or even as:
sq`person``age < ${7} and gender = ${'male}`
or for those who like plain old SQL:
sq.l`select * from person where age < ${7} and gender = ${'male'}`
Read the tutorial at https://sqorn.org/docs/tutorial.html to learn about the possibilities.
The default keyboard shortcuts are a little awkward; using tab or the up/down arrows to navigate the list would be more intuitive. Also, it would be easier to distinguish tabs if the title were displayed before the hostname.
The most fleshed out service of this type that I've found is narro.co, which offers web/pdf/epub/video/rss/email/text to audio conversions.
It has to work this way or browsers wouldn’t be truly extensible. Be mindful of which extensions you install.
1. Have you heard of Narro (narro.co)? It does the same thing, but it’s been around longer and has many integrations.
2. Can you share the tech stack currently powering your voice synthesis? Since it’s called PollyPodcast, are you currently using AWS Polly for TTS?
3. Is this something you intend to monetize?
4. It seems like you offer unlimited readings for free. Do you have an abuse prevention strategy? This could become a hole in your wallet if you’re paying for a charged-per-character TTS service.
5. Creating custom voices is a great differentiator. What are some problems you have to solve to create them and how is this effort progressing? Do you have quality and performance goals?
I wonder if it will be possible to load scripts into the reader view document. Currently, it isn’t, so keybinding extensions, which rely on inserting Keyboard event listeners, don’t work in reader view. I had been prototyping a custom reader view in Saka Key using Mozilla’s Readability library to work around this issue.
The Content Security Policy fix is a lifesaver. Saka Key attaches hint elements to the DOM and attaches a script tag to load common styles/fonts. Sites with the policy style-src: self (like crates.io) block script tags, which breaks hint styling and positioning.
The solution is for developers to spend a day learning about accessibility. A good starting point is https://webaim.org/intro/.
Interestingly, Firefox's sidebar API only allows a single sidebar to be shown.
1. Inject UI directly into the document
2. Inject an iframe containing the UI into the document
Both rely on manipulating the document, which can be used to fingerprint users. Most developers opt for 1 because it requires no setup and lets the content script synchronously access the UI. 2 is needed when the injected UI containing sensitive information.
I'd like an extension overlay API that lets you inject: 1. UI local to the tab 2. UI that persists across all tabs
In a brief #webextensions IRC discussion, I was told an overlay API isn't viable for a number of reasons, one of which is multiple extensions may conflict.
The address bar autofocusing is annoying. Best advice I have is to replace your new tab page with a URL or a custom new tab extension.
Also, I devised the default keybindings with three goals in mind.
1. Common keys should be easy to reach.
2. Users unintentionally trigger dangerous commands (like close the current tab). To prevent this, I bind dangerous commands to 2 key sequences.
3. Users not being able to remember keybindings. To help users remember, I try to associate commands with an intuitive key, e.g. Zooming is mapped to z.
Saka key author
https://github.com/eejdoowad