JS-Replit
In a recent JS bootcamp course I was introduced to an online testing tool called replit . The interface was a little confusing at first, but I found a helpful video here. To save time, here are the steps outlined in the video for setting up a nodejs and python test environment.
Creating a nodejs replit
Steps:
– Create a free account in Replit https://replit.com/
– Click + Create Repl button (top left corner)
– Enter in Template field: blank > and click the Blank Repl item
– Enter Title: nix > and select the Create Repl button
– Select replit.nix in the left menu – this opens a file showing:
{ pkgs }: {
deps = [
pkgs.cowsay
];
}
– Open a new browser window to https://search.nixos.org/packages
– enter nodejs > and select the nodejs-18x item > copy nodejs-18x from the terminal field:
nodejs-18_x
– Go back to the browser for replit.com > and replace the pkgs.cowsay with:
pkgs.nodejs-18_x
– In the left nav, click +file icon > name new file index.js > return
– In index.js type: console.log("Hello"); // hit return shows no results
– Left nav select .replit
– replace run = "cowsay Configure me!" with
run = "node index.js"
– Select Run button at top and now see "Hello" in right col console.
—————
Creating a Python replit:
(continuing from nodejs steps above)
– In left nav, click +file icon > name new file main.py > return
– In main.py type: print("Hello from Python")
– Open new browser window to https://search.nixos.org/packages
– enter "python" > select python38 > copy from terminal field:
python38
– Go back to browser for replit.com > Select left nav replit.nix
– Below pkgs.nodejs-18_x enter pkgs.python38
{ pkgs }: {
deps = [
pkgs.nodejs-18_x
pkgs.python38
];
}
– In left nav, Select .replit >
– replace run = "node index.js" with
run = python main.py
– Select Run button at top and now see "Hello from Python" in right col console.
"Hello from Python"
—————
The nix app in replit also allows you to:
Run both python and js in same the repl
(continuing from steps above)
– in index.js replace console.log("Hello") with
const { exec } = require("child_process");
exec("python main.py", (error, stdout) => {
console.log(error || stdout);
console.log("Hello from Javascript")
});
– in .replit change run = "python main.py" back to
run = "node index.js"
– Select run and now see
node index.js Hello from Python Hello from Javascript
The console is showing results for both JavaScript and Python