ORCSolver-CHI2020
caniuse
ORCSolver-CHI2020 | caniuse | |
---|---|---|
1 | 398 | |
26 | 5,541 | |
- | - | |
10.0 | 9.5 | |
about 4 years ago | 7 days ago | |
Python | JavaScript | |
Mozilla Public License 2.0 | Creative Commons Attribution 4.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ORCSolver-CHI2020
-
What will a Chromium-only Web look like?
Layout engines are difficult to write and adapt. Especially adapt as they're so complicated.
I read part of the ORC Solver paper and there is algorithms in that paper for writing a layout engine and there's code on GitHub.
https://github.com/YueJiang-nj/ORCSolver-CHI2020
I would like to adapt this approach but write the code myself but it is obviously a challenging area.
I am yet to write a branch and bound optimisation algorithm. But from my understanding you greedily try a number of rows or columns and try arrange objects preferred width and preferred height into the space available. ORCSolver uses intervals and eliminates attempts that are not viable. ORCSolver uses Z3 for the final step to actually get coordinates when the system has been constrained. I plan to use ORTools.
For simplicity I plan to break up text into letters and try place them all in a flowing horizontal then vertical layout. I can use GetTextExtents of WX widgets to predict size of a rendered letter. It shall be slow but then how else do you begin writing a layout engine? I would need to read TeX or the Art of Computer Programming.
Layout is expensive especially for grid based layouts with flowing. I wonder if website authors could prerender at different resolutions and provide start point sizes and coordinates for speed. Generally everybody reaches the same numbers on everyone's machines and we don't need to try a lot of aborted work to relayout.
I am the author of additive GUIs which is a declarative rendering approach for bootstrap layouts. https://GitHub.com/samsquire/additive-guis
caniuse
-
BaseLine - a reliable source of truth for a Web developer
We do have a great tool such as CanIUse and of course, BaseLine is not going to replace it.
-
✨ 10 useful webdev insight & learning resources!
Can I use...
-
Ask HN: Can a website kill my internet connection? (WebRTC)
Lots of parts to WebRTC ( https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API ) but none that I know that can knock out something outside of your browser. It could maybe overload RAM and get killed.
Try using the offending website on a browser/OS that _doesn't_ have WebRTC such as https://caniuse.com/?search=webrtc. Or try with WebRTC disabled.
Possible you're getting throttled by your router or ISP when certain connections are made.
And there's this https://browserleaks.com/webrtc
-
Quick Wins to Make Your Content More Accessible
A11ySupport.io: The caniuse of accessibility. Lists compatibility of various browser accessibility features for different screen reader and browser combinations.
-
Show HN: Open-Source Video Editor Web App
Ah yep! I just didn't wait long enough. Very cool. Seems like it took a lot of work. And it seems better than other browser-based video editors I've seen in the past, so kudos.
TIL about the webcodecs API to get frames of video and chunks of audio: https://caniuse.com/?search=webcodecs
-
Caniwebview.com – Like Caniuse but for Webviews
Can I X, is a question about the readiness/compliance of a certain thing at time = now. Can I use CSS version X was the iconic early meme.
https://caniuse.com/?search=css3
For a generalized example, if you wanted to know if the basketball courts were ready for you to “ball it up” in a certain city, it’d be caniball.com
If you want to know if you can use a certain frontend technology, the idea is like: canwefigma?
It’s a glorified feature matrix, and usually a project of a passionate community. I approve, even if some of the memes are a bit dank.
-
Caniemail.com (like caniuse but for email content)
https://caniuse.com/ is a popular tool to check what web features are working across different browsers - "can you use this and assume that it will work for others".
-
Time-Based CSS Animations
The article uses custom css @properties which are awesome and have 88% browser support [1].
One thing to watch out for is differences in how browsers handle setting the fallback initial-value. Chrome will use initial-value if CSS variable is undefined OR set to an invalid value. Firefox will only use initial-value if the variable is undefined. For most projects, this won't be an issue, but for a recent project, I ended up needing to use javascript to set default values in Firefox to iron out the inconsistency between browser implementations.
[1] https://caniuse.com/?search=%40property
-
CSS Text Box Trim
Safari is the only browser that doesn't support extending HTML element
https://caniuse.com/?search=Custom%20Elements
-
JavaScript is not single-threaded
You forgot to mention (Web)Workers. This is explicit creation, management, and communication with additional threads within JavaScript. What's more, they've been around in JavaScript longer than the V8 engine has even existed!
https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers...
https://caniuse.com/?search=webworkers
What are some alternatives?
browserslist - 🦔 Share target browsers between different front-end tools, like Autoprefixer, Stylelint and babel-preset-env
caniemail - Can I email… Support tables for HTML and CSS in emails.
postcss-preset-env - Convert modern CSS into something browsers understand
modern-css-reset - A bare-bones CSS reset for modern web development.
Servo - Servo, the embeddable, independent, memory-safe, modular, parallel web rendering engine
WHATWG HTML Standard - HTML Standard
modern-normalize - 🐒 Normalize browsers' default style
Av1an - Cross-platform command-line AV1 / VP9 / HEVC / H264 encoding framework with per scene quality encoding
wpt - Test suites for Web platform specs — including WHATWG, W3C, and others
uPlot - 📈 A small, fast chart for time series, lines, areas, ohlc & bars
css-modules - Documentation about css-modules
WebKit - Home of the WebKit project, the browser engine used by Safari, Mail, App Store and many other applications on macOS, iOS and Linux.