JSFiddle - React, Tailwind, and code Playground

JavaScript

var http = require('http'),
		fs = require('fs');

function load_album (album_name, callback) {
	fs.readdir("albums/", + album_name, (err, files) => {
		if (err) {
				if (err.code == "ENOENT") {
				callback(make_error("no_such_album", "That album doesn't exist"));
			} else {
			callback(make_error("can't load album", "The server is broken"));
}
	} else {
			//callback(null, files);
			var only_files = [];
			var path = `albums/${album_name}/`;

			var iterator = (index) => {
				if (index == files.length) {
					var obj = { short_name : album_name,
											photos : only_files};
					callback(null, obj);
					return;
				}

				fs.stat(path + files[index], (err, stats) => {
					if (!err && stats.isFile()) {
						only_files.push(files[index]);
					}
					iterator(index + 1);
				});
			};
			iterator(0);
		}
	});
}
}

function handle_incoming_request (req, res) {
	console.log("incoming request: " + req.method + " " +req.url);

if (req.url == '/albums.json') {
load_album_list((err, albums) => {
	if (err) {
		res.writeHead(500, {"Content-Type" : "application/json "});
		res.end(JSON.stringify({ code: "cant_load_albums",
														message: err.message}));
	} else {
		var output = { error: null, data: { albums: albums}};
		res.writeHead(200, { "Content-Type" : "application/json"});
		res.end(JSON.stringify(output) + "\n");
	}
});
} else if (req.url.substr(0, 7) == '/albums')
			&& req.url.substr(req.url.length - 5) == '.json' {
				//user is requesting contents of album
				load_album(req.url.substr(7, req.url.length - 12), (err, photos) => {
					if (err) {
						res.writeHead(500, {"Content-type" : "application/json"});
					  res.end(JSON.stringify(err));
					}	else {
						var output = { error: null, data: { photos: photos }};
						res.writeHead(200, { "Content-Type" : application/json});
						res.end(JSON.stringify(output) + "\n");
					}
				});
			} else {
				res.writeHead(404, { "Content-type" :...