TiddlyServer 1.0.0 has been released.  See here: 
 https://groups.google.com/forum/#!topic/tiddlywiki/QOoceRMdABE

On Monday, May 16, 2016 at 4:57:39 PM UTC-4, Matthew Lauber wrote:
>
> All,
>    I am pleased to announce the initial public offering of software I've 
> taken to calling TiddlyServer <https://github.com/mklauber/TiddlyServer>. 
>  TiddlyServer is a NW.js desktop application that can be used to setup a 
> local server serving  multiple Wikifolders.
>
> *To start off with, here's a quick look at the current UI.  *
>
>
> <https://lh3.googleusercontent.com/-JAci075PzQM/Vzou22n4goI/AAAAAAAAATU/FlMnG_d3bqQr6ZueT4-FZnPVrS7C8HuxACLcB/s1600/Screenshot%2Bfrom%2B2016-05-16%2B16%253A33%253A51.png>
>
> The top Row is how you add additional wiki folders.  Using the "Choose 
> File" button you can select the root folder of your WikiFolder instance.
> The text box is the prefix you want the site to be available at.  
> The Add button has a click event that adds the path and prefix to the 
> config, starts the server, and then refreshes the UI.
>
> Below that are multiple rows of Individual wikis.  Right now they're very 
> sparse, grabbing just the title from the wiki itself, then listing the 
> prefix for that wiki.  Clicking anywhere on the row for a wiki opens it in 
> your default browser.
> The Delete word is a button that stops the server and removes the wiki 
> from the config file, then updates the UI.
>
> *Now a quick look at how this is designed.*
>
> This application is basically a big wrapper around being able to start 
> multiple instances of TW5.  the code here 
> <https://github.com/mklauber/TiddlyServer/blob/master/source/js/server.js> 
> contains most of the logic.  
>
>    1. Upon starting up, it loads a config file if it exists, instantiates 
>                            a TW5 instance for each wikifolder in the list.
>                            1. The instance of TW5 is running a custom TW5 
>                               command "unixserver 
>                               
> <https://github.com/mklauber/TiddlyWiki5/blob/multiserver/core/modules/commands/unixserver.js>"
>  
>                               that basically uses a unix socket file instead 
> of a port number.
>                               2. Each instance of TW5 starts listening on 
>                               it's socketPath.
>                            2. It also starts up a proxyServer listening 
>                            on port 8080.  This proxyServer looks at the path 
> part of the url, and uses 
>                            that to proxy the request to the correct Socket.
>                               1. If the wiki path does not match any 
>                               prefix it'll respond saying that path doesn't 
> match any wikis, please 
>                               choose from the list below... and lists the 
> wikis
>                            3. Finally, the UI starts up.  The UI allows 
>                            the end user to add or remove the wikis and 
> prefixes available.  
>                         
> *A few notes at present.*
>
>    - This likely only works on Unix and OSX.  I'm currently relying on 
>    Unix Socket files to communicate between the proxy server.  AFAIK, unix 
>    socket files are not supported on Windows.  It would be possible to change 
>    this to use multiple ports.
>    - This does not support WikiFiles, yet.  Only WikiFolders.
>    - The UI was hacked together via React in an afternoon to demonstrate 
>    that this was feasible.  It does not provide basically any error handling.
>
>
> *Installing:*
>
>    1. Download the stable release of nw.js from http://nwjs.io/
>    2. extract nw.js
>    3. Clone the repository at https://github.com/mklauber/TiddlyServer.git
>    4. cd to the `source` directory of the cloned repo
>    5. run `npm install`
>
> *Running: *
>
>    1. run `/path/to/nw.js-vx.x.x-.../nw .`
>
>
> I was inspired to tackle this based on some comments Jeremy made on the 
> direction that he'd like to take TiddlyDesktop.  Hopefully the community 
> finds it interesting, if not yet actually useful.  I would appreciate 
> feedback, suggestions, and especially Pull Requests.
>
> Thanks,
> Matt Lauber
>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWikiDev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/tiddlywikidev.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywikidev/d1a4d1ce-741f-4c4a-bb17-953ec8ba132d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to