Remix.run Logo
▲ matesz 7 hours ago

Exactly that. I am really surprised by the amount of comments with this huge sentiment and doom mongering. These days it’s really not a big deal. Million lines of deno based ts is not a problem because pretty much any functionality provided to deno is available for node as well. You probably can migrate off much of the external deps without much hassle. You can even migrate to different language ecosystem altogether like others have mentioned in comments.

▲flohofwoe 6 hours ago | parent | next [-]

> ...pretty much any functionality provided to deno is available for node as well.

Unfortunately Node still can't do something like this out of the box (AFAIK at least):

    import { Bla } from "npm:bla@^5";
Such direct imports are basically the killer feature of Deno for simple standalone tooling scripts in otherwise non-JS/TS projects, e.g. it made TS a perfect replacement for Python even without a "batteries included" standard library.

Deno also has a builtin TS type checker, linter, formatter, test runner with coverage support, package manager, language server etc etc... In node these are all separate (and often 3rd-party) tools.

▲mahboi 4 hours ago | parent | next [-]

This doesn't seem like a big deal. Don't you just npm install whatever you need and then change the import names?

▲flohofwoe 17 minutes ago | parent [-]

I don't want the install step. That's redundant. Just a .ts script I can run via `deno run bla.ts` and which directly pulls in any dependency it needs from the web.

▲mahboi 8 minutes ago | parent [-]

I understand the point of this, just saying an existing codebase importing things this way doesn't seem all that hard to convert if you need to get off Deno.

▲michaelmior 2 hours ago | parent | prev | next [-]

FWIW, almost this exact syntax for imports (without the `npm:` prefix) is supported for standalone scripts with Bun.

▲ecares 3 hours ago | parent | prev [-]

this one is actually a bad pattern to avoid.

▲flohofwoe 19 minutes ago | parent [-]

Only when you have no control over the version you're pulling in, but the semver resolution works as expected. Also we're talking about small standalone 'shell scripts', not 'real projects'. Think 'bla.sh', just with a .ts extension. Deno is really great for such small helper scripts.

▲nimchimpsky 2 hours ago | parent | prev [-]

[dead]