Comments (8)
While I'm more of a bystander, I thought that it might be useful to write something.
I've been using linkedom as my daily driver for well over a year now, doing SSR-ish things, replacing jsdom. I ran into 4 bugs in that time, 1 of which was 3rd party. You kindly fixed them which I'm very grateful for (and even the 3rd party one was eventually fixed by someone).
I really like how clearly you communicate your approach in the project. I have always been able to do what I needed to do using linkedom. In fact, if I ran into issues, resolving it usually improved my code.
from linkedom.
Am still using uhtml-ssr... so perhaps this library could benefit from some additional documentation to help people like me who are curious (and sometimes lazy) about migrating/integrating from WebReflection's existing libs like uhtml or even lit-html
I feel like linkedom has minor issue of branding and context for when you first land and start reading the readme (as noted). Perhaps there should be a full end to end practical example to help people understand.
Now that doesn't the address the issue of Andrea's lack of time resources avail on this but I just wanted to highlight my biased perspective and where I see the project needing help; like everyone am lacking time too but love the work you do Andrea and would jump at the opportunity to help and hack on things as best I can even if it is something like tutorials and documentation.
If someone wants to start a branch ie- 'tutorial' with a rough draft "linkedom TODO app" for example then I would be happy to proofread and test-drive it so that we can work towards having that in master for people to try.
from linkedom.
@rglover I am a full time and a full time contractor so while I'd love to have sponsorship behind this project, I am not using (yet?) daily with the current work I do and I still wouldn't solve the problem of finding time. If the sponsorship would guarantee long-term full time work on this everything would be different, of course, but I've never belied such sponsorship exists for OSS with very rare and exceptional exceptions to this usual fact. Thanks for asking though, I've tried before to live out of sponsorships and it's been overly underwhelming despite many great people that supported me with all they could, but that ain't enough and big companies that use my software very rarely supported my work too.
from linkedom.
I could try to help, but my time is also very limited.
I recently started exploring different approaches to speed up jest tests and one of the reasons why it is slow is JsDOM. JsDOM tries to fulfill the html specification, but what I need is javascript API for HTML operations, not the full API but the basics should work so it could be used as testing environment. The difficult stuff could be mocked out or anything which would make it slower.
I initially started building my own library and then I found this project which was very useful, great project!
Here is the jest plugin I'm working on:
https://github.com/Havunen/jest-environment-linkedom
from linkedom.
Here is the jest plugin I'm working on:
that's the thing ... I don't have time for this project right now, I have even less time to "check other projects out".
You landed a few PRs so I'll try this evening or over the weekend to have a look and if I like that, I'd be happy to add you as contributor ... does this sound reasonable to you?
from linkedom.
You landed a few PRs so I'll try this evening or over the weekend to have a look and if I like that, I'd be happy to add you as contributor ... does this sound reasonable to you?
Ok. Sounds good to me.
from linkedom.
Would a sponsorship allow you to prioritize work on this as time allows?
from linkedom.
@Havunen my apologies for such delay and come back but I've merged all your MRs except this one which felt a bit off ... maybe you missed the guideline on how to contribute, which is my bad not being too visible, but in particular this part.
I really loved other contributions you made and they are all live and published at this point but one thing I'd like to make it clear:
- this project is not about testing ... to be honest, this project is already so hybrid in perf and goals (compared to its birth) I ended up writing a way thinner layer that smokes LinkeDOM performance, it's within latest uhtml/dom project export
- this project would never have (under my radar) hundred classes to
instanceof
against ... uselocalName
, usetagName
, don't register everything because 90% of the dom behaves pretty much like the base Element class andinstanceof
fordiv
with no special meaning or use cases was never a goal of this project - if this project will end up like a JSDOM substitute this project won't have anymore any reason to exist
- if the fast path is kept fast (parse and produce SSR friendly code) then we're aligned ... as example, a few of your PRs where about extra stuff that doesn't bother bootstrap, parsing, or layout creation ... we can stretch those cases as we please as there's still something useful for tests or Workers or not browser based scenarios, but only when perf are not on the critical path these are good things to land ... in other cases I've always been skeptic
If everything I've written in here makes sense to you, and I am open to discuss any of these points but so far those have been my "yay" and "nope" drivers, I would be more than happy to add you as contributor as clearly you got the flow: add a feature in the esm folder, add a test to keep code-coverage high and preserve expectations, PR and ship 🥳
Looking forward for any answer to this but if everything is good and clear, I am basically announcing you as a LinkeDOM official contributor and I am going to give you full admin privileges 👍
edit that, of course, only if you're still interested ... and also apologies for various edits in the post, I write too fast and my English is often too bad!
from linkedom.
Related Issues (20)
- List optional dependencies in `peerDependencies` + `peerDependenciesMeta` HOT 1
- [META] Update changelog? HOT 1
- Creating script element resulting unexpected opening tag. HOT 1
- Support Node constructors HOT 1
- missing `customElements.getName()`
- Illegal constructor when extending DocumentFragment HOT 2
- replaceWith(...nodes) stuck if `nodes` contain the node that's being replaced
- CSSStyleSheet.insertRule returning undefined if index argument not provided HOT 3
- the hidden attribute parsing is not valid in xml HOT 3
- Error when using with axios: "TypeError: Cannot read properties of undefined (reading 'charAt')" HOT 1
- [BUG] `innerHTML` on elements parsed from XMLDocument doesn't escape characters as XML entities inside attribute values HOT 1
- `querySelectorAll` breaks when the DOM contains an element with a 'template' attribute HOT 1
- "perf_hooks" and "canvas" not found issue with using linkedom HOT 2
- " converted to " on xml HOT 4
- Value of a foreign input element is an attribue HOT 2
- `HTMLTimeElement` losts `dateTime` property HOT 1
- Proper types exports for `./worker` submodule HOT 1
- HTMLAnchorElement loses `rel` attribute after casting to string HOT 4
- In 'HTMLElement.classList.toggle' the 'force' attribute works uncorrectly.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from linkedom.