proxy-www
utterances
proxy-www | utterances | |
---|---|---|
5 | 75 | |
884 | 8,638 | |
- | 0.8% | |
0.0 | 0.0 | |
about 3 years ago | 11 months ago | |
JavaScript | TypeScript | |
The Unlicense | MIT License |
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.
proxy-www
-
Four examples of strange ways to bind HTML to nested objects that contain writable stores!
I have eliminated the need for stores in my tree by using proxies, my original little component inventions are very efficient a value changes in a store, I assign it to innerHtml. A store is just a nerfed emitter, it is a tiny little useful program. I don't know what svelte does, when it detects a change to a large nested tree. Does it re-render the whole thing, does it do dom or object, or both diffing, I am not sure. It should observe changes on a property level, like spreadsheet programs. But, browsers, diffing, shadow DOMs and computers are fast today, so as I was going over the twisty litte passages, I also rewrote my tree. In a really crazy way, and you really need to know about this, because when you use Object proxies, then svelte becomes ideal for nested objects. Let me show you how proxies work: https://github.com/justjavac/proxy-www This brilliant person made a www object, that is a proxy, meaning he can intercept the next property. in this case www.baidu, and return a proxy again to capture the data, which in this case is .com when .then is called. It then makes a request to www.baidu.com www.baidu.com.then(response => { console.log(response.status); // ==> 200 }) THIS TYPE OF REFERENCING MAKES SVELTE DEEPLY HAPPY, when the www is a variable that you are referencing in the DOM. Let's go to my tree now. tree is an instance of a normal Tree class, it has children, element, thype of stuff. But I also gave it a proxy... the read property is a proxy that will return a node this way: tree.read.abc.context.filename tree.read is a getter, that returns a proxy. that will spy on the next thing after the dot, in this case abc, which is a node id. it will grab that node and return it, for binding via bind: here I bind to context.filename, but I could bind to tree.read.abc.name which is a lable for the node. filename: {tree.read.abc.context.filename} input.name: THIS ACTUALLY WORKS tree.read.abc.name = 'Hello World', will re-render the UI. Because SVELTE does not care that read is a proxy, it only sees assignment to tree.something.something.something.something It does not care that .read.abc is not real data, though it returns the node object, it is not where the object really is. --- I think we have reached the limit of being able to communicate ideas, my concluding thought is: No, svelte does not not turn a nested object into nested writables, but it is OK, because simplicity has its benefits too. We can lie that tree.read.abc or even ($tree.read.abc if via import) is where out data is at, and say thing like tree.read.abc.name = 'Hello World', to really kick bubble gum. The store ends at your object bounday though it does not go inside, all the properties within are just nested POJO properties, BUT, svelte will detect changes anyway, so as long as you clearly refer to the ROOT object. In my case tree. in your case $data. One last thing to underline, between us noobs, you use stores when you can't bind:data for some reason. The store pipeline, is to be used, when you can't bind easily. Learn to use the proxies, they are of JavaScript not svelte, but they let you bind very deeply into complex data structures, and make an assignment, which svelte will then notice, and re-render the UI. Good luck, here is your program without stores, you don't need to use them if you don't need them: https://svelte.dev/repl/21f8cc38cf3e4b64b824d7c7b702d17b?version=3.44.3
-
Cool ES6 Proxy Hacks
Coming across this creative approach of using fetch, I was wondering in what cool ways you folks take advantage of JavaScript ES6 Proxies?
-
🧢 Stefan's Web Weekly #21
👉 Inspect the www proxy
- ES6 and Proxy to Implement “Www”
- proxy-www
utterances
-
Converting BlogCFC blog to Eleventy
Handling New Comments: There are excellent lightweight comment utilities available for managing comments on your eleventy blog. I personally use Utterances, but Giscus is also a great alternative.
-
Unleash Your Dev Blog: Write More with GitHub Issues as Your CMS
We can use utteranc.es, a lightweight comment widget built on GitHub Issues to integrate authed comments in our blog.
-
Must-Have Features to Look for in a Blogging Platform
utterances (open-source)
-
Blog Comments
Typically, a comment requires server side code and a lot of messy management. It’s a pain. These comments rely on a tool called utterances. Utterances uses GitHub’s issue tracker which was designed to track bugs, as part of that it includes extensive comment and discussion capabilities. If an issue doesn’t exist, utterances will automatically create that issue for you. It created this issue for the comments in this page...
-
How do I use utterances on a static GitHub pages site with no custom theme?
I've installed utterances on my GitHub repo. I've configured it and given it the appropriate permissions. At the end of setup, it provided me with an HTML script and the following instructions:
-
Add comments to blog website in minutes
Fortunatly we have free, lightweight and efficient options to add comments in blog website or any website. I am talking about utteranc.es. A lightweight comments widget built on GitHub issues. Use GitHub issues for blog comments, wiki pages and more!
-
🚀 Creating a Personalized Blog Website in minutes with Gatsby - A Step-by-Step Guide
Go to https://utteranc.es and follow the instructions to set up the commenting system.
- Free, non-self-hosted website comment system powered by GitHub Issues
-
Add reactivity to your Next.js blog using giscus
Giscus drew significant inspiration from utterances, which utilize an issue-based comment system instead of discussions. I experimented with utterances initially, but I found it less convenient due to its reliance on an issue tracker for conversational purposes.
-
Website engine or static content + dynamic functions implementations
If you're building a blog for developers, you can use a third-party commenting service that requires login with github, for example https://utteranc.es/
What are some alternatives?
boring-avatars - Boring avatars is a tiny JavaScript React library that generates custom, SVG-based avatars from any username and color palette.
giscus - A comment system powered by GitHub Discussions. :octocat: :speech_balloon: :gem:
Tsunami - An official Fog Network proxy site, made to access the blocked web. Surf without web filters or restrictions. Made with style, Tsunami is a rather fancy service dedicated to protecting your freedom from censorship
gitalk - Gitalk is a modern comment component based on Github Issue and Preact.
javascript - JavaScript Style Guide
staticman - 💪 User-generated content for Git-powered websites
Ultraviolet - A highly sophisticated proxy used for evading internet censorship or accessing websites in a controlled sandbox using the power of service-workers. Works by intercepting HTTP requests with a service worker script that follows the TompHTTP specifications.
remark42 - comment engine
commento
next-utterances-script-loads-twice - Created with StackBlitz ⚡️
git-issue - Git-based decentralized issue management