How to use the command 'deno' (with examples)
Deno is a secure runtime environment for JavaScript and TypeScript, aiming to address some of the inherent issues found in Node.js. It is designed to be simple, modern, and secure by default, providing a built-in TypeScript support without the need for additional tooling. Deno emphasizes security, with sandboxing capabilities that restrict file, network, and environment access unless explicitly allowed. It also comes with a collection of standard modules that can be used directly in projects.
Use case 1: Running a JavaScript or TypeScript file
Code:
deno run path/to/file.ts
Motivation:
Running a standalone JavaScript or TypeScript file is a common task for any developer looking to execute scripts in a computational environment. This command allows developers to quickly test and debug their scripts in a secure and efficient manner. Whether you’re building a backend service, a CLI tool, or just running scripts locally for personal use, this command is a straightforward way to execute your code.
Explanation:
deno run
: Thedeno run
command is used for executing scripts within the Deno runtime environment.path/to/file.ts
: This is the path to the specific JavaScript or TypeScript file that you want to run. It could be an absolute or relative path to your script.
Example Output:
If your file.ts
contains a simple script like console.log('Hello, World!')
, running the command will print:
Hello, World!
Use case 2: Starting a REPL (interactive shell)
Code:
deno
Motivation:
A Read-Eval-Print Loop (REPL) is a valuable tool for developers who wish to test JavaScript or TypeScript snippets, experiment with new features, and interactively troubleshoot code. The REPL allows you to input one command at a time and immediately see the results. This iterative approach is ideal for prototyping and refining algorithms without needing to create a new script file.
Explanation:
deno
: Simply typingdeno
initiates the interactive shell provided by Deno. Here, you can run JavaScript or TypeScript code snippets line-by-line and receive instant feedback.
Example Output:
Upon entering the command, you will see a prompt where you can type JavaScript/TypeScript expressions:
Deno 1.0.0
exit using ctrl+d or close()
>
Use case 3: Running a file with network access enabled
Code:
deno run --allow-net path/to/file.ts
Motivation:
Network access is often restricted by default in Deno to enhance security. However, when developing applications that require network calls, such as accessing RESTful APIs, fetching data, or connecting to remote servers, developers need to enable network access explicitly. This command ensures that you can run your network-dependent applications seamlessly while maintaining security as a priority.
Explanation:
deno run
: Initiates the execution of a script.--allow-net
: This flag allows the script to access the network. Without this, any code attempting to use network resources will fail.path/to/file.ts
: Points to the network-dependent JavaScript or TypeScript file you wish to execute.
Example Output:
If your script attempts to fetch data from a website and output the response, executing this command successfully gets the data and prints it, like so:
Fetching data from example.com...
Response: { "data": "Sample response" }
Use case 4: Running a file from a URL
Code:
deno run https://deno.land/std/examples/welcome.ts
Motivation:
Sometimes it’s necessary to run scripts that are hosted online without having to download them first. This use case is particularly useful during development when you want to test or demonstrate scripts from an external source directly. It encourages the usage of a modular approach where code can be run from anywhere, provided it is publicly accessible.
Explanation:
deno run
: Executes a script through the Deno runtime.https://deno.land/std/examples/welcome.ts
: The URL pointing to the remote script you want to run. Deno can fetch, cache, and execute this file directly from the web.
Example Output:
Running the welcome script from the URL might display:
Welcome to Deno!
Use case 5: Installing an executable script from a URL
Code:
deno install https://deno.land/std/examples/colors.ts
Motivation:
Installing a script as an executable means you can run it directly from the terminal without the need for the deno run
prefix. This is particularly useful for setting up CLI tools or utilities that you frequently use. By converting scripts into globally accessible commands, you can streamline your workflow significantly.
Explanation:
deno install
: This command installs the script as an executable command.https://deno.land/std/examples/colors.ts
: The URL of the script to be installed. It will be downloaded and set up to run as a command-line utility.
Example Output:
After installation, you might see a message like:
✅ Successfully installed colors at /Users/username/.deno/bin/colors
Running colors
in your terminal thereafter will execute the script.
Conclusion:
Deno offers a comprehensive toolset for running and managing JavaScript and TypeScript applications securely and efficiently. Whether you’re executing local scripts, experimenting interactively, or running code from the web, Deno’s command-line utility provides versatile options catered to various development needs.