Independent of what platform you are running on, you should be able to
update to the latest code and launch the tool using the following command:
git pull; yarn install; yarn dev
If you do that now, you will see that the HELP page shows an additional
keyboard shortcut: "D"
Pressing D will get you access to Developer Tools, Documentation, and a
Demo.
The demo should take all of five minutes. It introduces you to React,
JSX, and Redux.
The walk-through is meant to be skimmed. It shows all of the steps
involved in launching the client and server and processing a keystroke
that sends a request to the server and processes the reply.
I would be very interested in hearing people say that they actually ran
the demo and/or skimmed the walk-through, and their thoughts on not only
these two items, but the list of additional documentation planned.
- - -
I'm not sure where I heard this before, but it has been said that a
brain transplant (as in the transportation of brain tissue from one
cranial cavity to another) is the easy part, it it the reconnecting that
is difficult.
That is the case here. I'm removing a custom object model, and
replacing it with a Redux store. At the moment, they are running side
by side, and as of this past weekend, the core functions are now running
off of the Redux store.
There is plenty of work left to be done. What is needed is to go
through every page, form, and button and disconnect it from the legacy
object models and connect it to the store. There are plenty of small,
medium, and large tasks - this would be a great way to familiarize
yourself with the code.
- - -
In addition to coding tasks, there is need for:
1) Testing. This could be porting over the existing test suite from the
Ruby code base or creating entirely new tests.
2) Documentation. I'm writing up a number of scenarios, but frankly,
I've been immersed in this for too long, and I'm not always the best
judge of what should be obvious and what needs explaining.
3) Style. The Ruby code base is using Bootstrap v3. The Node code base
is using Bootstrap v4. There are significant changes, and UI is not my
forte.
- - -
My focus for the next few days is to:
1) produce additional walk-throughs
2) work on the inter-window websocket synchronization so that if you add
a comment in one window using one browser it will immediately show up in
another tab or window possibly using a different browser or even on a
different machine.
3) work on the bulk emails that the the chairman sends out. The plan is
to have the tool, when running in developer mode, not actually send the
emails but rather to place them in a work/mailbox directory, and to
build a developer tool that will allow you to view and empty this directory.
4) complete the "queue" page where you see your pending requests and can
commit them.
Once this is complete, there will need to be follow-on work to do things
like off-line mode, implement service workers, implement server side
rendering, and implement the portions that will be use when running in
production. Unlike prior iterations of this tool, the current iteration
is focusing on developer experience first leaving the operational
portions for later. Those should be small: "yarn build" will generate
the static HTML and bundle the JavaScript. In production mode svn will
go against the actual repositories rather than local repositories, and
mail will actually flow out across the network.
- Sam Ruby
- Sam Ruby
- Sam Ruby