Commit Graph

21 Commits

Author SHA1 Message Date
Matthias Portzel 6a412a2dec Update README 2022-10-09 22:40:17 -04:00
Matthias Portzel c5f4d281d5 Reverse proxy fixes and changes 2022-09-24 20:35:14 -04:00
Matthias Portzel 3063358ecf Move to Unlicense 2022-02-28 11:12:36 -05:00
MatthiasSaihttam 34ef03a43c Make hostname matching case insensitive 2021-11-15 10:44:52 -05:00
MatthiasSaihttam 2dabbc0969 Non gemtext static files
* Static file handler now attempts to use "file-type" if it is available 
to read the magic bytes of a file and get Mime type
* Fixed a crash if the client closed the socket prematurely
* Move README to gmi
2021-10-09 21:05:56 -04:00
MatthiasSaihttam 7761c18fd5 Fix bug when requesting urls with ports 2021-09-25 09:04:27 -04:00
MatthiasSaihttam e351bc03d4 Non-start bug fix 2021-09-15 17:18:05 -04:00
MatthiasSaihttam 726ed2338d Fix naming of matchesSubpaths 2021-09-15 17:16:38 -04:00
MatthiasSaihttam 3d6fc7b211 Add ReverseProxy
* Restructure imports/exports
    * Add a default export
    * Jump to 2.0 per semver
* Add a ReverseProxy handler
* Change the behavior of registerPath around root hostnames
2021-09-15 17:16:01 -04:00
MatthiasSaihttam e53fb7a8fe v1.0.0 and an NPM module
* Fix a bug with requests without a trailing slash
2021-08-29 14:24:16 -04:00
MatthiasSaihttam 69e49e7f84 Misc changes
* Static handler can match sub paths
* Handler.handle can be asnyc
* Better hostname checking at the start of basePaths
* Document the SNI requirement
2021-08-29 12:12:34 -04:00
MatthiasSaihttam 39b8d8f715 Wildcard domains
* Add support for wildcard domains (constrained to patterns you can get wildcard TLS certs for)
* Clean up some console.logs
* Rename some path variables
2021-08-28 22:34:32 -04:00
MatthiasSaihttam f4408190f0 Single file static hosting 2021-08-28 20:02:41 -04:00
MatthiasSaihttam 4c5985e0ff Move handlers to classes instead of functions 2021-08-28 19:39:40 -04:00
MatthiasSaihttam aa0d8ddefe Basic path pathRegistry matching!
* We can now register paths with handler functions and it works!
2021-08-28 18:32:24 -04:00
MatthiasSaihttam af9ce9f61f Start fleshing it out
* Start a static handler
* GeminiServer can now load certs and runs a TLS server
* The example now runs!
2021-08-28 17:34:09 -04:00
MatthiasSaihttam a6f5a2cd62 Move to ES6 modules
* Move to ES6 modules
* Start working on a GeminiServer class
* Create a package.json
2021-08-28 16:09:02 -04:00
MatthiasSaihttam 86546c42f9 Create example usage to design to 2021-08-28 16:08:40 -04:00
MatthiasSaihttam 1314e3c6ff SNI support 2021-08-28 15:01:47 -04:00
MatthiasSaihttam 24b68ce01f Instructions on generating .pem files 2021-08-28 14:41:47 -04:00
MatthiasSaihttam ed72ac9961 Hello, World over Gemini 2021-08-28 14:32:40 -04:00