Help Complete the Drupal Console v1.0.0 Release
May 07, 2016
For those familiar with Drupal Console, this article is an update and a request for support. For those who are not, a brief explanation follows.
Drupal Console is a command-line interface (CLI) tool for Drupal 8 that generates boilerplate code and aids in debugging and interaction. It was built from the ground up using the modern PHP practices introduced in Drupal 8, leveraging Symfony Console and other third-party components.
For more detailed information, you can visit the following links:
Why is help being requested?
Like many open-source projects, Drupal Console is developed by contributors in their spare time. While this model is effective, community demand for new features and stable releases can sometimes outpace what can be delivered through volunteer efforts alone.
Initiatives like the Drupal 8 Accelerate program and the d8rules funding program show a successful model for this. They raised funds to sponsor contributor time, accelerating development to meet community needs within a set timeline.
The situation for Drupal Console is similar. Core maintainers receive some sponsored hours from their employers, but this time is insufficient to meet development goals, requiring significant personal time to be invested.
With dedicated funding, maintainers could focus more attention on the project. This would allow for more time to be spent on the issue queue, which currently has over 100 pending items, as well as providing support on the Gitter channel, improving documentation, and increasing test coverage.
Financial assistance is therefore needed to help deliver the first stable release in a timely manner.
Why is the stable release important for the Drupal Community?
Drupal 8 was released on November 19, 2015, after nearly five years of development. While a significant achievement, developer adoption has been slower than anticipated. One potential factor is the steep learning curve for developers new to Drupal 8's architecture.
To address this, the Drupal Console core maintainers have set an internal goal to deliver the first stable release by the upcoming DrupalCon in New Orleans.
A stable release of Drupal Console will provide the community with a powerful tool to streamline Drupal 8 development, lowering the barrier to entry and reducing the time required to build new components.
How You Can Help
Meeting this deadline requires a significant time commitment, equivalent to full-time development work from the core maintainer team.
This level of commitment is only possible with funding to cover the developers' living expenses.
To secure the necessary budget, a crowdfunding campaign has been launched. The initial goal is to raise enough funds to complete the first Beta version.
If the initial funding goal is exceeded, the additional funds will be used to support the development of release candidates, the final stable version, and to promote the project at Drupal events through talks and sprints. The milestones are detailed below.
Milestone 1: Beta Release (Target: March)
- Implement Drupal Coding standards in all of the generated code.
- Create tests for code generator commands.
- Complete English documentation.
- Improve learning capabilities for not generator commands.
Milestone 2: RC Release (Target: April)
- Implement a CI workflow.
- Create tests for the 50% of not generator commands.
- Improve learning capabilities in 50% of the generator commands.
- Complete Spanish documentation.
Milestone 3: Stable Release (Target: May)
- Create tests for the 100% of not generator commands.
- Improve learning capabilities in 100% of the generator commands.
- Release drupalgenerator.com MVP
What If the Crowdfunding Goal Isn't Met?
If the funding goal is not reached, development will continue at its current pace. The proposed timeline for the milestones will not be met, but the project will still move forward, and the stable version will be released when it is ready.
There are other ways to contribute. Businesses can assign developer time to work on Drupal Console, and individual developers can contribute by allocating a few hours to help resolve issues in the queue. Many tasks are available that do not require deep expertise.
Spreading the word is also valuable. Sponsoring travel and accommodations for maintainers to speak at Drupal events, including DrupalCon New Orleans, is another way to support the project. The goal is to participate in as many events as possible to present the project and organize sprints for new contributors.
Please consider joining this open-source effort.