JavaScript import maps are now supported cross-browser

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. esm.sh

    A nobuild content delivery network(CDN) for modern web development.

    Check out https://esm.sh/#cli for a minimalist yet full featured solution that amends your import map for you. It does require Deno.

  2. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  3. Bundles have a colossal disadvantages. Change one thing and boom your user is re-downloading a pretty big bundle. Fine grained file resolution means apps can grow & evolve with very little user cost.

    People harp on and on about the benefits of bundles for compression, but man, it's so shortsighted & stupid. It favors only the first-load situation. If your user actually comes back to your app, these advantages all go away, disappear. Personally I'd rather help people that use my app regularly.

    Second, the days of bundles being better at compression are numbered. Work has been ongoing to figure out how to send compression dictionaries separately. With this, 98% of the compression advantage disappears out the window. https://github.com/WICG/compression-dictionary-transport

    Neither of your approaches sounds like what I'd do. Personally I would build an http server that takes raw uncompressed source. When asked for a file the first time, it compresses & builds the dependency maps in parallel, & saves both of these out, maybe a .gz with some xattr on it. Or store that data in memory, whatever. The first user gets a couple extra ms hit, but the server transparently still does the thing. Developer mode is just a tool to watch the file system & clear those caches, nothing more, & can potentially be completely separate.

    Bundles are just so awful. They complicate what used to be an elegant understandable clear world of computing. We can & should try to get back to resources, if it makes sense. And the cards are lining up to make this horrible un-web un-resourceful kludge potentially obsolete. I'm excited we might make the web make sense again for end-users. They deserve to be out of the bad times.

  4. webappsec-subresource-integrity

    WebAppSec Subresource Integrity

    Seeing this, it reminded me of an interesting topic: caching at browser-level the external libraries used for big performance improvements: https://github.com/w3c/webappsec-subresource-integrity/issue...

  5. simpatico

    Discontinued Simpatico is an umbrella term for several data-structures and algorithms written in JavaScript

    >Does this mean that in theory i could skip the build/bundling step entirely?

    You can but you must write your app in something the browser understands (js not ts, css not sass etc) and use native modules. For example, here is the test harness for a custom module, written in pure html with no build step: https://github.com/javajosh/simpatico/blob/master/combine2.h.... Here is a more complex (and much older) example from Crockford: https://www.jslint.com/

    And yes, the experience developing this way is quite nice!

  6. JSLint

    JSLint, The JavaScript Code Quality and Coverage Tool

    >Does this mean that in theory i could skip the build/bundling step entirely?

    You can but you must write your app in something the browser understands (js not ts, css not sass etc) and use native modules. For example, here is the test harness for a custom module, written in pure html with no build step: https://github.com/javajosh/simpatico/blob/master/combine2.h.... Here is a more complex (and much older) example from Crockford: https://www.jslint.com/

    And yes, the experience developing this way is quite nice!

  7. download-esm

    Download ESM modules from npm and jsdelivr

    This downloads the ESM version of Observable Plot from the jsDelivr CDN, figures out its dependencies, downloads them as well (40 files total!) and rewrites their imports to be local, not CDN paths.

    More details here: https://simonwillison.net/2023/May/2/download-esm/

    I'm not considering adding import maps support: https://github.com/simonw/download-esm/issues/4

  8. quickjspp

    In Sciter I did just that - JSX is an integral part of JS compiler - patched version of QuickJS : https://gitlab.com/c-smile/quickjspp/-/blob/master/quickjs-j...

    So in Sciter this works out of the box:

       

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  10. sciter-js-sdk

  11. import-maps

    How to control the behavior of JavaScript imports

    https://github.com/WICG/import-maps/issues/2

  12. esbuild

    An extremely fast bundler for the web

    Note that `deno bundle` is deprecated. You can almost replace it with esbuild but it currently lacks builtin support for import maps:

        deno run --allow-all https://deno.land/x/esbuild@v0.17.18/mod.js --bundle app.js --outfile=bundle.js. # errors, see: https://github.com/evanw/esbuild/issues/2230

  13. proposal-type-annotations

    ECMAScript proposal for type syntax that is erased - Stage 1

  14. lit

    Lit is a simple library for building fast, lightweight web components.

    Lit also requires no build step and is shipped only as standard JS modules. It also uses file extensions in all imports so that the required import map to access all files is very short (one index map + one prefix map * 4 core packages). See https://lit.dev

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • The Modern 2025 Web Components Tech Stack

    4 projects | dev.to | 3 Mar 2025
  • 30 Best Free Tools for Frontend Developers in 2025

    15 projects | dev.to | 1 Mar 2025
  • Custom builder for Angular: My way

    13 projects | dev.to | 15 Jan 2025
  • A Simple Approach to SSR with React 19 and esbuild

    5 projects | dev.to | 23 Dec 2024
  • Managing Software Project Complexity with Development Containers and Continuous Integration

    11 projects | dev.to | 15 Nov 2024

Did you know that JavaScript is
the 3rd most popular programming language
based on number of references?