I wrote this as a way to deliver static portion of the app.  I'm wondering if there is a better way to write this, as I am new to Express.The goal is to let a single-page app to handle routing as needed. There is an API layer of this app that is defined under the /api/ route namespace.I wanted to note that all assets are served from /app folder and are not public. I can adjust that, but as of now, that's the folder structure. /app is a compilation destination. root folder contains server.js where the below code resides and contains app/ and src/ folders, as well as server/ folder that contains API related stuff.var express = require('express');var http = require('http');var path = require('path');var app = express();require('./express/api')(app);app.get(/css/*,function(req,res){  res.sendfile('app'+req.path);});app.get(/js/*,function(req,res){  res.sendfile('app'+req.path);});app.get(/img/*,function(req,res){  res.sendfile('app'+req.path);});app.get(/pages/*,function(req,res){  res.sendfile('app'+req.path);});app.get('*',function(req,res){  res.sendfile('app/index.html');});app.listen(3000);console.log('Listening on port 3000');
Serving static assets through wildcard rule
javascript;node.js;express.js
There is a better way.If you wish to serve static files with express - it comes bundled with static middleware. To use it, you simply add this line before your routes:app.use(express.static(__dirname + '/public'));This may require slight adjustment to your paths but it replaces all those manual routes and is more efficient (caching, expiration etc).Check out this example.I would, however, suggest that you use something like nginx for your static assets since it's typically more robust and it'll free resources from your node server.