jst_server.git
5 years agoStreamline mime_type handling so it is kept in the environment and only explicitly...
Nick Downing [Sun, 21 Oct 2018 04:24:47 +0000 (15:24 +1100)]
Streamline mime_type handling so it is kept in the environment and only explicitly replaced when a directory is generated by jst template (previously returned)

5 years agoAdd socket.io support, create installable package
Nick Downing [Sun, 21 Oct 2018 03:26:06 +0000 (14:26 +1100)]
Add socket.io support, create installable package

5 years agoMerge resources into Server, resources.json_cache becomes server.json_cache etc
Nick Downing [Sun, 21 Oct 2018 01:34:23 +0000 (12:34 +1100)]
Merge resources into Server, resources.json_cache becomes server.json_cache etc

5 years agoMerge config into Server, config.refresh() becomes server.refresh_config() etc
Nick Downing [Sun, 21 Oct 2018 01:27:17 +0000 (12:27 +1100)]
Merge config into Server, config.refresh() becomes server.refresh_config() etc

5 years agoMake Server an object, hence easier to access server.caching, server.die() etc
Nick Downing [Sun, 21 Oct 2018 01:08:37 +0000 (12:08 +1100)]
Make Server an object, hence easier to access server.caching, server.die() etc

5 years agoCompletely rewrite the URL parsing and file serving code, removes the need for the...
Nick Downing [Sat, 20 Oct 2018 13:33:50 +0000 (00:33 +1100)]
Completely rewrite the URL parsing and file serving code, removes the need for the .pub suffix, and allows any kind of file or directory to be generated by jst

5 years agoSimplify the env object to contain only: parsed_url, response, request, site
Nick Downing [Sat, 20 Oct 2018 05:31:25 +0000 (16:31 +1100)]
Simplify the env object to contain only: parsed_url, response, request, site

5 years agoMove the get_XXX() routines, and the new open_json() and flush_json() routines which...
Nick Downing [Sat, 20 Oct 2018 04:53:00 +0000 (15:53 +1100)]
Move the get_XXX() routines, and the new open_json() and flush_json() routines which used to be json_cache.get() and json_cache.set(), onto the Site object, and make them automatically supply the site root, this simplifies user code a lot

5 years agoImplement Site object, which can be extended by a site_factory.jst file at root
Nick Downing [Sat, 20 Oct 2018 01:22:20 +0000 (12:22 +1100)]
Implement Site object, which can be extended by a site_factory.jst file at root

5 years agoSwitch to acorn-based JS templates with classes, ids, scripts, template strings
Nick Downing [Mon, 15 Oct 2018 04:35:39 +0000 (15:35 +1100)]
Switch to acorn-based JS templates with classes, ids, scripts, template strings

5 years agoUpdate to js_template.git commit 19bdeb6 silly
Nick Downing [Mon, 15 Oct 2018 00:18:32 +0000 (11:18 +1100)]
Update to js_template.git commit 19bdeb6

5 years agoMinimal update to js_template.git commit 19bdeb6, still supplies our own _req()
Nick Downing [Mon, 15 Oct 2018 00:15:08 +0000 (11:15 +1100)]
Minimal update to js_template.git commit 19bdeb6, still supplies our own _req()

5 years agoUpdate to js_template.git commit d0345db
Nick Downing [Mon, 15 Oct 2018 00:03:23 +0000 (11:03 +1100)]
Update to js_template.git commit d0345db

5 years agoDon't call the template immediately on retrieval, user code can do this itself
Nick Downing [Sun, 14 Oct 2018 23:43:43 +0000 (10:43 +1100)]
Don't call the template immediately on retrieval, user code can do this itself

5 years agoUpdate to js_template.git commit e998e98, (env, out, get) to (_env, _out, _req)
Nick Downing [Sun, 14 Oct 2018 23:22:07 +0000 (10:22 +1100)]
Update to js_template.git commit e998e98, (env, out, get) to (_env, _out, _req)

5 years agoRename package ndserver(.js) to jst_server(.js), *.js to *.jst, adopt Node 10
Nick Downing [Sun, 14 Oct 2018 22:40:52 +0000 (09:40 +1100)]
Rename package ndserver(.js) to jst_server(.js), *.js to *.jst, adopt Node 10

5 years agoRename jstemplate to js_template
Nick Downing [Tue, 9 Oct 2018 10:19:41 +0000 (21:19 +1100)]
Rename jstemplate to js_template

5 years agoGet contact form email working
Nick Downing [Tue, 9 Oct 2018 10:01:03 +0000 (21:01 +1100)]
Get contact form email working

5 years agoMove analytics stuff into the html page template in businessdataflow.git
Nick Downing [Tue, 9 Oct 2018 02:13:59 +0000 (13:13 +1100)]
Move analytics stuff into the html page template in businessdataflow.git

5 years agoUpdate to jstemplate.git commit b6f0914 and businessdataflow.git commit da162ca
Nick Downing [Tue, 9 Oct 2018 01:57:30 +0000 (12:57 +1100)]
Update to jstemplate.git commit b6f0914 and businessdataflow.git commit da162ca

5 years agoRemove dedicated analytics.js and do it via resources.js and JSON cache, make analyti...
Nick Downing [Tue, 9 Oct 2018 01:40:08 +0000 (12:40 +1100)]
Remove dedicated analytics.js and do it via resources.js and JSON cache, make analytics be stored in site root separately per site rather than in ndserver.git

5 years agoSwitch to leading / on paths everywhere, including in favicon.zip and analytics
Nick Downing [Tue, 9 Oct 2018 01:19:43 +0000 (12:19 +1100)]
Switch to leading / on paths everywhere, including in favicon.zip and analytics

5 years agoMake analytics.js use json_cache, add analytics diagnostics and fix some bugs
Nick Downing [Tue, 9 Oct 2018 01:14:18 +0000 (12:14 +1100)]
Make analytics.js use json_cache, add analytics diagnostics and fix some bugs

5 years agoUpdate to build_cache.git commit 9bbe354
Nick Downing [Mon, 8 Oct 2018 21:21:55 +0000 (08:21 +1100)]
Update to build_cache.git commit 9bbe354

5 years agoSeparate server and site functionality (site is after host has been identified)
Nick Downing [Mon, 8 Oct 2018 06:59:48 +0000 (17:59 +1100)]
Separate server and site functionality (site is after host has been identified)

5 years agoBreak the main functionality into analytics, config, resources and site modules
Nick Downing [Mon, 8 Oct 2018 06:43:05 +0000 (17:43 +1100)]
Break the main functionality into analytics, config, resources and site modules

5 years agoImplement pageviews and unique pageviews counters
Nick Downing [Mon, 8 Oct 2018 02:46:35 +0000 (13:46 +1100)]
Implement pageviews and unique pageviews counters

5 years agoAdd cookies and session tracking
Nick Downing [Mon, 8 Oct 2018 01:54:19 +0000 (12:54 +1100)]
Add cookies and session tracking

5 years agoAdd favicons.zip handling
Nick Downing [Sun, 7 Oct 2018 12:12:49 +0000 (23:12 +1100)]
Add favicons.zip handling

5 years agoMake config/*.json global configuration files be re-read if they change
Nick Downing [Sun, 7 Oct 2018 09:58:24 +0000 (20:58 +1100)]
Make config/*.json global configuration files be re-read if they change

5 years agoModularize req() and cache system to req_XXX() that can also be used internally
Nick Downing [Sun, 7 Oct 2018 09:50:48 +0000 (20:50 +1100)]
Modularize req() and cache system to req_XXX() that can also be used internally

5 years agoChange var to let and use arrow functions everywhere
Nick Downing [Sun, 7 Oct 2018 09:22:35 +0000 (20:22 +1100)]
Change var to let and use arrow functions everywhere

5 years agoChange var to let everywhere
Nick Downing [Sun, 7 Oct 2018 09:19:45 +0000 (20:19 +1100)]
Change var to let everywhere

5 years agoGet indexing and search working
Nick Downing [Sun, 7 Oct 2018 07:13:05 +0000 (18:13 +1100)]
Get indexing and search working

5 years agoImplement caches for json and text (svg) files, via a second argument to _req()
Nick Downing [Sun, 7 Oct 2018 04:42:33 +0000 (15:42 +1100)]
Implement caches for json and text (svg) files, via a second argument to _req()

5 years agoImplement caching of less compiled css, including full dependency tracking
Nick Downing [Sun, 7 Oct 2018 04:21:40 +0000 (15:21 +1100)]
Implement caching of less compiled css, including full dependency tracking

5 years agoAdd caching of the compiled js templates
Nick Downing [Sun, 7 Oct 2018 04:10:32 +0000 (15:10 +1100)]
Add caching of the compiled js templates

5 years agoFix minor bugs to get paths working again for js and less rendering
Nick Downing [Sun, 7 Oct 2018 03:14:11 +0000 (14:14 +1100)]
Fix minor bugs to get paths working again for js and less rendering

5 years agoUpdate to jstemplate.git commit 34f5f89, businessdataflow.git commit 2fe99d8
Nick Downing [Sun, 7 Oct 2018 02:32:15 +0000 (13:32 +1100)]
Update to jstemplate.git commit 34f5f89, businessdataflow.git commit 2fe99d8

5 years agoAdd jstemplate and less rendering ability
Nick Downing [Sat, 6 Oct 2018 12:22:07 +0000 (22:22 +1000)]
Add jstemplate and less rendering ability

5 years agoAdd .pub suffix for files or directories that should be served statically
Nick Downing [Sat, 6 Oct 2018 10:41:31 +0000 (20:41 +1000)]
Add .pub suffix for files or directories that should be served statically

5 years agoChange to strict equality, make app function async and use promises, add assertions...
Nick Downing [Sat, 6 Oct 2018 07:25:47 +0000 (17:25 +1000)]
Change to strict equality, make app function async and use promises, add assertions and print stack trace from tryApp() if exception thrown in the async app()

5 years agoAdd config/sites.json with ability to redirect or serve from arbitary file path
Nick Downing [Sat, 6 Oct 2018 06:24:39 +0000 (16:24 +1000)]
Add config/sites.json with ability to redirect or serve from arbitary file path

5 years agoInitial commit: a basic HTTP/HTTPS server, localhost certificate, sample site
Nick Downing [Sat, 6 Oct 2018 02:08:19 +0000 (12:08 +1000)]
Initial commit: a basic HTTP/HTTPS server, localhost certificate, sample site