Skip to main content

What is Deno?

Deno is a simple, modern, and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust.

If you are familiar with Node.js, the server-side JavaScript framework, then Deno should be a no brainer for you. Deno is also a server-side JavaScript framework except that it has been improved in many ways.

The list of features that Deno offers are:

  • Built around modern JavaScript features
  • It has an extensive standard library
  • It has first-class TypeScript support. This brings a huge advantage in many different ways such as you don’t have to separately compile TypeScript, it’s automatically done by Deno.
  • Secure by default. No file, network, or environment access, unless explicitly enabled.
  • It has no package manager
  • It has a first-class await
  • It as a built-in testing facility
  • It aims to be browser-compatible as much as it can, for example by providing a built-in fetch and the global window object
  • Ships only a single executable file.

After using Deno, Node.js looks like old school. Especially because the Node.js API is callback-based, as it was written way before promises and async/await. There’s no change in place for that in Node, as such a change would be monumental, so we’re stuck to callbacks or to promisifying API calls. Node.js is awesome and will continue to be the de facto standard in the JavaScript world.

Thanks for reading. If you have some feedback, please reach out to me on Twitter or Github.

Comments

Popular posts from this blog

Track stock market information right in your Terminal.

     Introduction: As a developer, I love working with the terminal. The plain, simple, and in my opinion the best way to interact with the computer (also it makes you look geeky). I spent most of my time in the terminal. By now you must have guessed I am a huge fan of the terminal and terminal-based applications. Recently I developed an interest in stock markets and started tracking the stock markets. Since I love working with the terminal I decided to build a terminal oriented application that can help me to track the stock market. Inspir e d by  wttr.in  I build  terminal-stocks  which can provide the stock's current prices, historical prices, and global market summary. How to use terminal-stocks terminal-stocks  is available and can be used without installation. Get the current price of the stock. curl terminal-stocks.dev/ITC.NS Current price of stocks You need to provide the ticker of the stock and terminal-stocks will give you the price information of the stock.  terminal-st

Setting up Nginx as a reverse proxy for Node.js App

Okay.. but what is a reverse proxy? A reverse proxy is a web server that centralizes internal services and provides unified interfaces to the public. Requests from clients are forwarded to a server that can fulfill it before the reverse proxy returns the server’s response to the client. Nginx is a popular choice to use as a reverse proxy for your node.js application. Got it. Now let’s set up Nginx Let’s say your nodejs server is running locally on localhost:3000. We will set up Nginx to get the request and forward the request to our nodejs server. Ins t alling Nginx on ubuntu sudo apt-get update sudo apt-get install nginx Configure Nginx Disable the default, virtual host unlink /etc/nginx/sites-enabled/default 2. Create a configuration file cd /etc/nginx/sites-available sudo nano reverse-proxy.conf 3. Put the following content in the file server { listen 80; listen [::]:80; access_log /var/log/nginx/reverse-access.log; error_log /var/log/nginx/reverse-e

Flutter: How to take Screenshot of the screen or widget and save as image

Introduction: In this post, we will discuss how to take a screenshot of the widget and save it as an image. Let’s take a use case where we need this functionality. Here is an app to read quotes in a beautiful background. quote app class MyHomePage extends StatefulWidget { MyHomePage({Key key}) : super(key: key); @override _MyHomePageState createState() => _MyHomePageState(); } class _MyHomePageState extends State<MyHomePage> { List<Quote> _quotes = [ Quote( content: "Friendship is Love without his wings!", author: "Lord Byron", image: 'quote-1.jpeg') ]; String _currentImage = 'assets/img/image1.jpeg'; initState() { super.initState(); } @override Widget build(BuildContext context) { return Scaffold( body: Stack( children: [ Container( decoration: BoxDecoration( image: DecorationImage( image: AssetImage('assets/img/placehol