BladeRunnerJS / brjs

BladeRunnerJS (BRJS) is an open source development toolkit and framework for modular construction of large single-page HTML5 apps. It consists of a set of conventions, supporting tools and micro-libraries that make it easy to develop, test, deploy and maintain complex JavaScript apps.
http://bladerunnerjs.org/
GNU Lesser General Public License v3.0
229 stars 36 forks source link

The various knockout library names need cleaning up #702

Open dchambers opened 10 years ago

dchambers commented 10 years ago

We currently have the following libraries with 'ko' or 'knockout' in their name:

This is somewhat confusing. Additionally, due to #657, there is also the need for another variant of the 'knockout' library that is BRJS compatible.

Therefore, I'd like to propose the following library names:

CrazyFunker commented 9 years ago

Don't you prefer calling the last one 'ko-component' (a library that allows vanilla 'knockout' to be used inside a BRJS Component), instead of 'knockout-component'? To keep it concise and cohesive?

CrazyFunker commented 9 years ago

@andyberry88, @dchambers Lately all libraries coming with BRJS are preceded with a 'br-'. Therefore, I came up with new suggestions for the names: 1) br-ko 2) br-BRJS-ko 3) br-presenter-ko 4) br-component-ko

1) is the basic knockout library 2) is the BRJS compatible version of the knockout library 3) is the Presenter compatible version of the knockout library 4) is the knockout version ready to be used as part of a BRJS component

What do you think?

andy-berry-dev commented 9 years ago

Maybe we need to discuss this whole change on a call.

CrazyFunker commented 9 years ago

We definitely need to make a call for that one. Seems like there is a different understanding of these components among the team members.

leggetter commented 9 years ago

I'd prefer the ko library to remain named as-is. The benefit we get from renaming it is outweighed by the faff we have to go through to fix example apps and docs. The library exposes a ko variable so require( 'ko' ) makes sense.

All in IMO.

andy-berry-dev commented 9 years ago

We've decided to do the following:

  1. ko (the untainted version of knockout) will be renamed knockout
    • A prerequisite of this is I'll change the existing apps and docs to use the new knockout name otherwise it will be left as ko
  2. brjs-ko (a version of knockout that can make use of the HTMLResourceService) will be renamed br-knockout-utils (-utils part is up for debate if anyone can think of a better name)
    • This will contain the KnockoutComponent, ko workbench tools and the ko binding utility
  3. presenter-knockout will be moved in to presenter as it doesn't need to be exposed a library since presenter wraps it
    • This is assuming knockout will work when wrapped in a define(..) block otherwise it will remain presenter-knockout
  4. presenter-component will move into br-knockout-utils (see point 2)

Given this is more work than originally advertised I'll move it back into the backlog so it can be re-planned.