Twelve stories left before v1.00

Unless I find a way to create additional stories within Pivotal Tracker, as of today there are only twelve stories left to complete. Back in October, I posted a list of some of the stories still to do, I’ve ticked off a few of those along with lots of additional tasks that I deemed necessary.

Since October I have created a few alpha release but have yet to release them at http://demo.dlayer.com, I’m so close to the official beta release that I am holding off with any releases until then.

Below is a list of changes since October:

  • Added a Typography sub tool, allows the use to change the font family for the text content item
  • Added live preview for Typography sub tool changes
  • Added an app and error log, site and identity level logs
  • Cleaned up generated HTML, columns and rows not included if they are going to be empty
  • Added helper links to empty page, columns and rows when selected, guide the user
  • Fixed a bug with the toolbar showing the incorrect tool
  • Added a simple HTML tool, a user can add HTML content items until additional tools and widgets are in place
  • Fixed a bug with colour history storing blank values
  • Added Styling sub tool to Form, Text, Heading, Image and Jumbotron content item
  • Added a live preview for background colour changes
  • Added Styling sub tool to Rows, Columns and the Page itself
  • Page, row and column selectors now clear the background colours of child items to make it easier for the user to see what they are selecting
  • Refactoring, UX improvements and bug fixes

I don’t want the release of v1.00 to go into next year, over the next couple of weeks I am going to try and complete the twelve stories remaining and possibly even push some of them to v1.02, v1.03. v1.01 is all about scripts to setup the app and reset the app and create initial sample data; this will make it easier to test after the official v1.00 beta release,

v1.01 is all about scripts, a script to setup the app, another to reset and possibly one or two to create users and set initial test data,

Back to MVP

A week ago I gave myself two options, one, ignore the code smells and work to release v1.00, two, accept what I have been trying to tell myself and hit the DELETE key, I opted for option two.

After the big Content manager rework of 2016 I was left with a code base at odds with itself. When I looked at it more rationally, the Content manager was easily the module that was both the most complete and the one I was the most happy with. For the rest,the order was Form builder, Web site manager and Image library. The Image library and Web site manager were a pain to add modular tool support to and then I looked and thought why am I bothering, the Web site manager is a preview from when the app was a closed source project and the Image library only had one functional tool, upload……DELETE, after that I aimed my trigger finger at the Form builder, DELETE.

The modules haven’t gone; they will be back very soon, the problem is they were stopping progress elsewhere, you can rewrite an app forever to make it a perfect design, I need to ship and iterate.

The Form builder will be the quickest to return, it doesn’t have many issues, I need to update the Javascript to use data selectors and review the model code for the tools but that will be a pleasure when it is part of an iterative task and not a refactor.

Listed below are the titles for the pivotal tickets that need to be completed before I can ship v1.00.

  • Initial work on styling sub tools
  • Add to colour history
  • Nesting support exposed correctly
  • Suggested size for content items
  • Raw HTML content tools
  • Simple nav bar tools
  • Updated tool help tabs
  • Clean up database
  • Apply UX guidelines to Content manager

Dlayer tools code – The great concealer

Nope, you haven’t missed it, v0.99 hasn’t been released, in my quest to support modular tools I’ve discovered how many issues the current tools code was concealing, there is the inevitable duplication along with code that is too complicated for its purpose and far too much similar code that can all be cut.

I’m 85% of the way through the refactor/clean-up, when I am done I will have a much leaner code base and all the tools will be modular, to add a new tool you will simply need to include the tools folder and a small script to insert the tool into the database.

It is proving to be much more work than originally planned, I was only going to do one module initially and pick the others up over time, after pulling back the covers and peaking at the horror I realised that was a not a workable solution, I need to fix it properly.

The Content manager, Web site manager and Form builder are complete and tested, I’m working on the Image Library tools, after that I need to go back and do some additional simplification/refactoring and then re-test again, I’m hoping to release v0.99 soon, I’m not going to give a date until I am back onto normal development.

Modular tools

One of my initial goals for Dlayer was that tools be modular, it should be easy to plug a new tool into a designer, sometime during the last couple of years that got slightly lost. A tool is made up of four classes and a few view files, there is a Model, a Form, a Ribbon class the Tool class itself, these are currently stored by type in the library.

I’m going to fix this before I go any further, it will add a slight delay to the next version but it shouldn’t affect things too much because essentially I am just moving classes around and updating references, I’m not sure what to do with the view files yet but I will work that out shortly.

It is really hard when you work on a solo project, you need to step back occasionally to review and check out your design, it might be very difficult and time consuming to change things later.  I was sitting watching TV with the Mrs and then all of a sudden a question popped into my head, “Dean, why are all classes for a single tool all over the library?”

Dlayer v0.99-alpha-3 released

I just finished releasing v0.99-alpha-3, it is now up on https://demo.dlayer.com and the full change log is on the Dlayer GitHub releases page.

I’m currently working on re-implementing the styling sub tools for the content items, initially just the background colour for a container, we will see how time goes, as always, there is a lot to do before v0.99.