VS Codespaces

Get started with Rust functions in Node.js app without installing any software

This page is outdated. Please visit here to check out how to get started with Rust functions in Node.js with VSCode.

In the previous tutorial, we discussed how to create and access Rust functions in Node.js apps. In this tutorial, I will show you how to experiment with development without installing any developer tools software.

https://www.youtube.com/watch?v=j85cbNsciOs

Fork this GitHub repository to get started. In your fork, you can use GitHub's web UI to edit source code files.

  • The Rust files are in the src directory. You can put high performance workload into Rust functions. The Rust build and dependency configuration is in the Cargo.toml file.

  • The JavaScript files are in the node directory and they can access the Rust functions.

    • The node/app.js file contains the application.

VS Codespaces steps

VS Codespaces runs entirely in your browser and costs around $1 per work day. It is cheaper than a cup of coffee in the office. Alternatively, in steps 1-2 below, you could use locally installed VSCode and Docker, and launch the IDE with your remote git repository.

First, open the VSCode Codespaces web site and login with your Azure account. You can get a free Azure account.

Next, create a new codespace. Put your forked repository into the Git Repository field. This step takes a few minutes. But once a codespace is created, subsequent openings only take seconds.

Open the source code files and make changes as you wish!

Click on the Run button on the left panel, and then the Launch Program at the top to build and run the application.

The Terminal window at the bottom shows the build progress. It builds the Rust program, and then launches the Node.js app.

The Debug window shows the Node.js server running and waiting for web requests.

Now, open another terminal window in the IDE via the Terminal -> New Terminal menu.

From the terminal window, you can test the local server.

$ curl http://127.0.0.1:3000/?name=SSVM
hello SSVM

In fact, you can run any Linux command from VSCode's built-in Terminal. You could run ssvmup build to build, and then node node/app.js to run the Node.js application. The Node.js application could be a server application as we have shown here, or simply a command line program as many of our later examples.

That's it! VSCode has many useful features such as real time error detection and syntax highlighting as you type code, advanced Github integration, and integrations with many many development tools. Enjoy coding!