Pebbling Club 🐧🪨

  • Web Performance Calendar Ā» Signals: the nitty-gritty
    Notes
    Mostly revealed to the Web by Solid.js, shortly after embraced by Preact, but also blended into usignal, or implemented by many others, this pattern convinced tons of developers that hooks might not be the best solution to reactivity out there, but while the concept might look and feel super simple and natural to deal with, the complexity behind spans from 30LOC to pretty convoluted code bases.
    Feed
    Embed
    Unfurl
  • 1KB Frontend Library - DEV Community
    Notes
    Our compact signals implementation is inspired by Andrea Giammarchi’s excellent article on signals. If you’re curious about the nitty-gritty, I highly recommend giving it a read.
  • Single HTML Element Star Rating Component - DEV Community
    Notes
    In this article, we'll explore how to build a star rating system using a single HTML and just one JavaScript command.
  • Durable websites | Go Make Things
    Notes
    Serve mostly static HTML. Use flat JSON storage. Go buildless! Use service workers. Go HTML-first.
    Feed
    Unfurl
  • moon toggle šŸŒ›
    Notes
    Neat dramatic light / dark theme button
  • Retro futuristic radio buttons with GSAP
  • The Pixel Canvas Shimmer Effect
    Notes
    I recently stumbled on a super cool, well-executed hover effect from the clerk.com website where a bloom of tiny pixels light up, their glow staggering from the center to the edges of its container. With some available free time over this Thanksgiving break, I hacked together my own version of a pixel canvas background shimmer. It quickly evolved into a pixel-canvas Web Component that can be enjoyed in the demo below. The component script and demo code have also been pushed up to a GitHub repo.
    Feed
    Unfurl
  • </> htmx ~ You Can't Build Interactive Web Apps Except as Single Page Applications... And Other Myths
    Notes
    The browser has come a long way. Give it a chance!
    Feed
    Unfurl
  • TheĀ Different (andĀ Modern) Ways ToĀ ToggleĀ Content | CSS-Tricks
    Notes
    let’s spend some time looking at disclosures (<details> and <summary>), the Dialog API, the Popover API, and more. We’ll look at the right time to use each one depending on your needs. Modal or non-modal? JavaScript or pure HTML/CSS? Not sure? Don’t worry, we’ll go into all that.
    Feed
    Embed
    Unfurl
  • Where web components shine - daverupert.com
    Notes
    In this job we need to think a lot about the tools we choose and why, so I cataloged all the places where web components (for me) feel like ā€œthe right tool for the jobā€. Your list may be different and I’d love to read it. And because I don’t want this to be 100% propaganda, I’ll also cover some of the not-so-great parts of web components as well.
    Feed
    Unfurl
  • infinitered/nsfwjs: NSFW detection on the client-side via TensorFlow.js
    Notes
    A simple JavaScript library to help you quickly identify unseemly images; all in the client's browser. NSFWJS isn't perfect, but it's pretty accurate (~90% with small and ~93% with midsized model)... and it's getting more accurate all the time.
    Unfurl
  • Invoker Commands (Explainer) | Open UI
    Notes
    Adding commandfor and command attributes to <button> and elements would allow authors to assign behaviour to buttons in a more accessible and declarative way, while reducing bugs and simplifying the amount of JavaScript pages are required to ship for interactivity. Buttons with command will - when clicked, touched, or enacted via keypress - dispatch a CommandEvent on the element referenced by commandfor, with some default behaviours.
    Unfurl
  • Popover API - Web APIs | MDN
    Notes
    The Popover API provides developers with a standard, consistent, flexible mechanism for displaying popover content on top of other page content. Popover content can be controlled either declaratively using HTML attributes, or via JavaScript.
    Feed
    Unfurl
  • Tab panel using <details> with vertical tabs and web components
  • Tab panel using <details> with selectable tab orientation (no JS)
  • Creating a 2D physics engine from scratch in Javascript – AILEF
    Notes
    In this article, we will implement a toy 2d physics engine that supports basic forces, collisions and constraints (joints) for circle-shaped objects.
    Feed
    Embed
    Unfurl
  • Tangle: a JavaScript library for reactive documents
    Notes
    Tangle is a JavaScript library for creating reactive documents. Your readers can interactively explore possibilities, play with parameters, and see the document update immediately. Tangle is super-simple and easy to learn.
    Unfurl
  • Underrun – Making Of - PhobosLab
    Notes
    I participated in this year's js13kGames, a JavaScript game development competition with a file size limit of 13kb, including code, assets and everything else. My entry was Underrun, a twin stick shooter using WebGL.
    Feed
    Unfurl
  • Writing fast and safe native Node.js modules with Rust | @RisingStack
    Notes
    That’s when I picked up Rust instead of C++ to implement a native module. I figured out that it is a great choice thanks to the safety and ease of use it provides.
    Feed
    Embed
    Unfurl
  • Loving It: How to change the playback speed of a YouTube video
    Notes
    document.getElementsByTagName("video")[0].playbackRate = 1.4
    Feed
    Unfurl
  • www.calormen.com/l33t/jselite.js
    Notes
    Textual version of Elite trading
    Unfurl
  • Paul O’Shannessy - Do We Need Node?
    Notes
    So what do I want? I want a world where the core JS engine is swappable. Maybe I’m deploying on an architecture not supported by V8 (Node on SPARC came up while working on SpiderNode). Maybe my employer only wants to use the JVM. Or maybe Microsoft can get some performance wins by using Chakra for Windows Azure. Back to modules, I don’t want to get rid of npm. Or maybe I do and I want something that only supports ES6+ modules.
    Feed
    Unfurl
  • Case Study: Auto-Resizing HTML5 Games - HTML5 Rocks
    Notes
    In the summer of 2010, we created Sand Trap, a game that we entered in a competition on HTML5 games for mobile phones. But most mobile phones either displayed only part of the game or made the game too small—making it completely unplayable. So we took it upon ourselves to make the game fluidly adjust to match any resolution. After a bit of re-programming and using ideas outlined in this article, we had a game that scaled across any modern browser, whether it ran in a desktop or a mobile device.
    Unfurl
  • Referencing DOM from JS: there must be a DRYer, safer way
    Notes
    It bothers me when I realize that I'm relying on CSS class names in my JS
    Feed
    Unfurl
  • You can’t create a button | NCZOnline
    Notes
    Unfortunately, sometimes web developers try to get a bit too clever in creating their interfaces. What if I want something to look like a link but act like a button?
    Feed
    Unfurl
  • Coquette
    Notes
    A micro framework for JavaScript games. Handles collision detection, the game update loop, keyboard input and canvas rendering.
    Unfurl
  • Working Node.js on Raspberry Pi
    Notes
    These instructions work for the Raspberry Pi running Raspbian (hard float) and create a hardware optimized version of NodeJS for the Raspberry PI, (and include a working install and NPM!!!)
    Feed
    Unfurl
  • Client-side Messaging Essentials
    Notes
    "Most people throw around the term ā€œpub/subā€ to describe any kind of eventing/messaging – but I think this term fails to adequately communicate the abstraction. Yes, ultimately, something is subscribing to what something else is publishing. But the level at which publishers and subscribers are encapsulated has the power to make a good pattern turn to the dark side. So, what’s the difference?"
    Unfurl
  • Building JavaScript projects with Grunt
    Unfurl
  • baudehlo/Haraka Ā· GitHub
    Notes
    Haraka is an SMTP server which uses a plugin architecture to implement most of its functionality. It uses a highly scalable event model to be able to cope with thousands of concurrent connections. Plugins are written in Javascript using Node.js, and as such perform extremely quickly. The core Haraka framework is capable of processing thousands of messages per second on the right hardware.
    Unfurl
  • Mechanics of Flite - Underappreciated NPM Commands Developers Should Know About
    Notes
    npm, the package manager that comes bundled with node.js, is generally described as ā€œawesomeā€. While it was originally a separate project, npm has been bundled with node.js for the past few releases and the number of npm packages available in the npm registry has exploded.
    Unfurl
  • marijnh/Presence
    Notes
    Presence is an IRC logger and client that is optimized for my specific use of IRC — scan logs for a few specific channels, respond to direct messages and mentions, and only occasionally participate in discussion. It probably won't work for you if you're a heavy IRC user.
    Unfurl
  • mikedeboer/jsDAV
    Unfurl
  • Node.js: Style and structure
    Unfurl
  • gritsgame - GRITS is a cross-functional effort to create a boilerplate codebase to provide to HTML5 game developers that are looking to get started using Google's technology stack - Google Project Hosting
    Notes
    The intent is to create a very small, multiplayer game to launch and provide all the source code up to the masses for boilerplate.
    Unfurl
  • QR Code Generator for JavaScript
    Unfurl
  • Javascript Hero: Change Computer History Forever Ā« ASCII by Jason Scott
    Notes
    I want to help port the MESS and MAME emulators to Javascript.
    Feed
    Embed
    Unfurl
  • euangoddard/qrcode-generator
    Unfurl
  • modules - Node.js Manual & Documentation
    Notes
    When a file is run directly from Node, require.main is set to its module. That means that you can determine whether a file has been run directly by testing require.main === module
    Unfurl
  • Benvie/Node.js-Ultra-REPL - GitHub
    Notes
    Starting with Node's built in REPL, add in a completely redone inspect formatter, actual functioning separate V8 contexts, keybindings to create, switch, and delete between them, combine it with a bunch of color. ULTRA REPL
    Unfurl
  • Arctext.js - Curving Text with CSS3 and jQuery | Codrops
    Notes
    While CSS3 allows us to rotate letters, it is quite complicated to arrange each letter along a curved path. Arctext.js is a jQuery plugin that let's you do exactly that. Based on Lettering.js, it calculates the right rotation of each letter and distributes the letters equally across the imaginary arc of the given radius.
    Feed
    Embed
    Unfurl
  • 2011: A Badass JavaScript Year In Review - Badass JavaScript
    Notes
    2011 has been a great year for JavaScript. Web browsers have given us great new tools to use and we have taken web applications to new heights, competing with native applications and bringing sexy back to the web with countless impressive demos. A week or so ago, we put out a survey to all of you asking what you thought the most badass JavaScript demo of 2011 was. Of course, this would be a boring post if we just said what the outcome was, so we’re going to list the top JavaScript accomplishments of 2011 here, from demos to libraries and applications themselves. And to all of you in the JS community, Happy New Year and keep up the good work in 2012!
    Feed
    Embed
    Unfurl
  • mherkender/lua.js - GitHub
    Notes
    An ECMAscript framework to compile and run Lua code, allowing Lua to run in a browser or in Flash
    Unfurl
  • the node.js aesthetic :: The Universe of Discord
    Notes
    I would like to document an emerging set of programming conventions, philosophies, and values that I see evolving in the node.js community. I call this the node aesthetic.
    Unfurl
  • The beginnings of a declarative model syntax for CoffeeScript. — Gist
    Notes
    SEE: http://almostobsolete.net/declarative-models-in-coffeescript.html
    Feed
    Unfurl
  • Bookmarkleter
    Notes
    <blockquote>You have JavaScript. You need a bookmarklet. This does that.</blockquote>
    Unfurl
  • List.js - Add search, sort and flexibility to plain HTML lists with cross-browser native JavaScript by @javve
    Notes
    Do you want a 7 KB cross-browser native JavaScript that makes your plain HTML lists super flexible, searchable, sortable and filterable? Yeah! Do you also want the possibility to add, edit and remove items by dead simple templating? Hell yeah!
    Unfurl
  • Generating XML With node.js - WezM.net
    Notes
    For a node.js project I’m working on I wanted to generate a Sphinx xmlpipe2 data stream. The options for generating XML with node.js seemed a bit limited. The main contender appeared to be libmljs but it segfaulted whenever I tried to use it. So with previous experience using Tim Bray’s Genx C library I decided to write bindings for node. The result is node-genx, which is available via npm.
    Unfurl
  • bloggo.org - trek.js - JavaScript Super Star Trek
    Notes
    This is my Javascript port of the classic 1970s Super Star Trek game, one of a number of (mostly) related trek-themed games from that era. Step into the flared trousers of James T Kirk and command the Enterprise to repel an invasion of evil Klingon battlecruisers.
    Unfurl
  • Dragdealer JS
    Notes
    "Dragdealer is a drag-based JavaScript component that embraces endless front-end solutions. Elegantly crafted for JavaScript-aware coders.<br /> <br /> 2D drag and tap, mouse and touch (mobile tested), 12kB unminified. No dependency."
    Unfurl