Table of Contents

Project Name

Project Description

YangForge is an open-source toolkit and development framework designed to greatly simplify YANG data model driven application SDLC. This project provides easy-to-use CLI commands to work with YANG schema files and contains a number of built-in dynamic interface generators to dynamically create interfaces such as REST/JSON via a single command.

The primary target use cases are as follows:

This project is a spin-out from Resource Management (Promise) project. While working on the implementation track for the Promise project (which required comprehensive data modeling of the ResourceElements across the entire Virtualized Infrastructure), a general tooling development initiative was kicked off and the YangForge toolkit was created as a result.

This project has been open-sourced on 7/17/2015 and currently averaging ~500 downloads per week.

Following the general availability of YangForge several weeks ago, this project has been presented to the ETSI TST working group as well as to other OPNFV project leads in order to introduce and collect feedback for applicability in helping to accelerate their own respective requirements driven projects that can benefit by leveraging this toolkit for model-driven implementation. Based on the collective positive feedback and recommendations, we decided to initiate a separate stand-alone project within OPNFV for increasing visibility to the wider community and serving as a general tooling project for supporting other requirements driven projects within OPNFV.

The following OPNFV projects have expressed their support for YangForge:

Scope

The YangForge project is currently available for download/use. To check out current capabilities and usage documentation, please visit YangForge on Github. For more information on how it's being utilized for the Promise project, please visit Promise on Github.

This project's primary goal is to streamline and accelerate realization of requirements driven projects by abstracting away complexity and simplifying workflows. As such, it aims to encapsulate many of the traditional SDLC phases by enabling users to exercise these stages within a converged toolkit environment. The hope is to foster greater collaboration by providing a forum for exchanging model driven implementation outputs and building on top of existing modules to create new capabilities.

To attain such ends, the following are a number of new features/enhancements planned for improving the YangForge toolkit:

As the project evolves and collaborates closely with various other projects, we expect to identify many more requirements and features that will be synthesized into the project roadmap. Although there are future possibilities for this project to reach outside the OPNFV community (the current download stats indicate wider external community interest), the current plan for the remainder of 2015 is to primarily focus on supporting the OPNFV community initiated projects and their requirements.

The OPNFV Promise project will be the primary flagship reference implementation utilizing YangForge for requirements actualization as we prepare for initial implementation delivery in the upcoming Brahmaputra release.

Documentation

The primary documentation will be hosted on the Github project page link below.

Dependencies

Committers and Contributors

Project Lead: Peter K. Lee plee@clearpathnet.com

We are currently seeking active participation from anyone interested in joining this project as a Committer or a Contributor. Although YangForge will be in perpetual software development mode, we welcome any participation from the community ranging from architects, designers, modelers, to developers and end users.

For participation on the software development track, YangForge is written in Coffeescript/Javascript and runs on NodeJS. The current project plan also includes creating web-based application(s) so UI design/implementation background will be very handy as well.

Anyone interested in becoming a founding member of the project upon creation, please send an e-mail to plee@clearpathnet.com indicating your interest. We will be finalizing this section prior to submission to the TSC for approval.

Planned Deliverable

YangForge is delivered as open-source software that can be downloaded from Github here and can also be installed using npm (NodeJS package manager) from the npm public registry here.

Planned Release Schedule

YangForge has an ambitious near-term release schedule targeting monthly release milestones until the end of 2015. The current plan is to align with OPNFV Brahmaputra release with the YangForge 1.0 release at the beginning of 2016.