Command Line Interface

The Command Line Interface is a great tool developed in-house by our DevOps team which helps reduce development time by improving our ability to generate pre-described code based on scoped features. This robust system takes much of the standard code formatting that needs to be done during the creation of a feature, and expedites it into a single process. 

The Command Line Interface (CLI) is at it’s base level a group of tools that allow our whole team to write consistent code. 

When we’re creating apps, some standard portions of code are reproducible across the majority of projects. This code mainly consists of the command lines required to generate basic app elements such as login forms, authentication and standard input fields. These can be done in multiple ways, and often are by other agencies. But ensuring this is uniform across projects can help improve the longevity of the product, by keep consistent, easily comprehensible elements. 

The CLI aligns a lot of the common utilities for our apps. It’s best to think of these utilities like a the features of a new home. We can define standard fittings, or utilities, as things like walls and floors. Every home has them, but the style, size and covering is different depending on the occupant’s taste. The CLI allows for the generating of standardised ‘walls’ and ‘floors’, while keeping the code loose enough to be able to add the occupants (or in our case, the clients) own flair and personal taste. 

Another major feature is the way it eases deployment of code. We could use code magic, an industry standard tool. But there are a number of steps we need to go through: 

  • Updating version number 

  • Updating tags to state they are the same as the release

Code magic takes this and pushes it to the app store. This used to be a manual process, which generates issues when it comes to the expedition of the code. 

In utilising the CLI, we can create a succinct process which everyone can follow, automatically creating uniformity against the version numbers and state tags. 

The CLI works by creating folder structures within the code tree automatically.  If you wanted to add a page/screen, it would does this in a predefined, optimum format. This makes sure the location for the router is also correct and reduces the standard process from 5 steps, to one. 

One of the most powerful features is for forms. It generates these automatically, creating boilerplate input areas for the form automatically. 

Take a simple login for example, in which there is a username text field and password text field. The CLI automatically generates a block pattern which keeps these sections in state.  Once these are created, new ‘events’ can be added, for example age or gender, which are also automatically created

 

 

We'd love to chat about your project!

We're here to help. If you've got an idea or a direct need you would like help addressing, we're all ears!