Original article: https://aralroca.com/blog/from-node-to-deno
Last week I published an article about Deno, and how to create a Chat app with Deno ...
For further actions, you may consider blocking this person and/or reporting abuse
I'm afraid I'm missing something:
Deno doesn't have npm, right? So if I want a third party library, I have to go find it, grab the url, download it, and add it manually? Or use a URL, and if URL changes, I have to do the same thing again from the start?
I just don't see much point in Deno at this point, it takes one of the biggest advantages of Node, throws it out the window and declares itself the winner... and I just don't get it. From what I've read the author is proud with the fact deno has smaller and more predictable latency (from receiving request to answering request) but... handles 2/3 of node's requests per second, so we lose 1/3 of the performance for a bit of latency, and that is, like, one of the biggest advantages.
As I said, I just don't get it. If anyone can explain what is Deno supposed to replace or what problem it wants to solve, I'd be very grateful. Thanks in advance!
Anything that gets rid of the bloated node_modules folder is a win for me.
I'm not a fan of all the bloat either, but it doesn't seem like we can change much, other than pulling all that code directly into our project and bloating the project files instead.
And then again, deno gets rid of bloated node modules folder how? By creating deno crates or something? My guess is it will be just as bloated very soon. It is a side effect from the ecosystem that relies on updateable plug-ins which use other plug-ins.
Where would the bloat come from? Managing dependencies is as easy as creating a single typescript file with all the imports and Deno does the rest. No need to deal with node_modules. Here is a github issue discussing your grievances
This talks a lot about all the issues I have with deno way. Sadly, the discussion is simply closed without an answer.
How about this reply
P.S. I'm not here to convert you to Deno xD, but if you dislike the idea of learning another technology in the already overwhelming web dev environment then I totally get where you are coming from.
Thanks for writing this up. Do you know if there a way to define a common host name for imports? From an aesthetic POV, this looks jarring to my eyes.
It would be nice to do this instead
and let some manifest or configuration flag handle the rest.
Yes! Deno supports
import_map.jsonReferences:
deno.land/manual/linking_to_extern...
wicg.github.io/import-maps/
And there's might be a tool to manage this similar to npm in future
Nice post tho! 😉
Like node will not replace php in past or more like rust will not replace c++ (in some area)?
I bet we will replace node when we (or big company) know what benefits and problem deno can solve, right now we don't see many benefits except for sandbox compared to node.
What happens if one of your deps loses their URL or moves things around without warning? Is there any sort of central repository or cache?
I think I‘ve seen that the import map should be used to avoid having to update an import in a bunch of files so I suppose it’s not horrible to have to fix. Just seems like a risk.
Deno will cache your deps in first run so it's available offline, similar to golang did before go mod
Is there anything preventing a left-pad situation?
Great article!!! I really think Deno will change the JS world forever and it was about the time to refactor NodeJS. I hate that we have yarn, npm etc (big fan of pnpm btw.) and everything is centralized and controlled by a company (npm inc.). This really explains some migration very good! I would love to see more like this in future and how e.g. Node libs are included and that Deno should change our thinking of building Node applications. Especially because it has some adoption from Go/Rust world and is TypeScript by default.
PS: add github.com/alosaur/alosaur/ to the framework section, it is a pretty solid alternative to nestjs.
Excellent compilation!.
I am starting with deno, specifically focusing on the very lightweight webview implementation (and in fact a nice way to learn internals)
Just one little thing in the webview section for the macOS users, just today the error when using directly an HTML string was fixed, wrapping the string with encodeURIComponent()
You say "To use Deno as a lambda, there is a module in Deno STD library. deno.land/x/lambda."
FYI, deno.land/x is NOT the standard Deno library. In fact, there was noise on the #dev deno.land Discord channel about getting rid of deno.land/x because they're against centralization.
discordapp.com/channels/6848986651...
Amazing article! One of the challenges with Deno atm is module discovery - it can be frustrating trying to find if an equivalent module exists!
One to consider for the list - I’ve ported Express over to Deno and Typescript in a framework called Opine github.com/asos-craigmorten/opine. It’s a port so honours the original internals and API (except where Deno deviates from Node)
thanks 😊
It would be nicer to have a more personal experience rather than linking things you can get from easy
github.com/denolib/awesome-deno examples.
in any case thank you.
The first article I wrote was a personal experience implementing a chat with Deno + Preact: aralroca.com/blog/learn-deno-chat-app. If It's what you are looking for.
It is impressive the amount of progress for such a young project. Congratulations to the whole community!!
How about husky?
From Node to Deno:
twitter.com/deno_land/status/12625...
:D Great article!
Yaaaay, let's create a whole new ecosystem for ${this new trendy thing}!
Deno DOES support npm packages using "npm:${package}" and express works as well.
Nice post