- You are here:
- GitLab Direction
- Product Stage Direction - Ecosystem
The following page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features or functionality remain at the sole discretion of GitLab Inc.
Ecosystem focus is on fostering GitLab as a platform. Ecosystem supports our Integrations with other products, Foundations and Contributor Experience functionality to enable our community of contributors to develop the application itself.
Ecosystem's goal is to make integrating with, extending the functionality of, or contributing to GitLab accessible to all of our users. We strongly believe that Everyone can contribute, and Ecosystem supports this value directly through its work.
The Ecosystem Stage is made up of two groups supporting the major areas of work, including:
- Integrations - Integrating external tools and services directly inside the GitLab application
- Foundations - Providing a great design system and a set of frontend tools for the design and implementation of excellent user experiences
3 Year Stage Themes
Freedom of choice
We firmly believe that a single application
can successfully serve all the needs of the entire DevOps lifecycle. However, there are myriad
reasons that many customers can't adopt GitLab in this way.
Customers may have specific tools they are committed to using for reasons such as:
- The cost of migrating off of it, either based on the volume of content to
migrate, the risk of errors during the migration, the cost of training, etc.
- The cost of building new integrations with other tools in their existing toolchain
- Specific regulatory, security, or compliance needs they must be able to meet
- Niche or unique functionality that isn't available in GitLab
Because of these realities, we believe that our customers should have the
freedom to choose their tools, and use what makes the most sense for their
business—and we will support that freedom as best we can by playing well with others.
As examples, GitLab will provide:
- Integrations natively inside of the GitLab application for the most commonly used tools and services
- A rich set of APIs that allow users to integrate anything else they may need
- Resources for external tool vendors that make it straightforward to contribute an integration with their tool directly to the GitLab codebase
Everyone Can Contribute
GitLab's Mission is that everyone can contribute, and Ecosystem supports that in the context of GitLab itself. To accelerate GitLab's growth as a project, and as part of our commitment to our community, it's vital that we ensure that contribution is possible by anyone.
GitLab's community is a large part of how we've gotten as far as we have today, and we'd like to make it even simpler for those contributors to get involved. By improving this experience, we invite more new community members, including current users, to get involved and improve the application. "Everyone can contribute" means that everyone has the opportunity to add features, fix bugs, and improve the experience of the application. While it's sometimes possible for users to fix problems locally, when we make it easy for these contributions to make it upstream in to the project, these improvements can be enjoyed by everyone.
As examples, GitLab will provide:
- A robust suite of developer documentation that makes it easy to understand how to contribute, and helps you find where you should get started
- Guides that cover common types of contributions, making it easy for new contributors to create their first Merge Request, and more straightforward to accomplish more complex contributions (like 3rd party integrations) that follow a common pattern
- A great local development environment that's easy to set up, requires little ongoing maintenance or updates, and supports contributing to any part of the application, out of the box
- Great design system documentation that makes it clear which UI patterns should be used, where to use them, and best practices for implementation
3 Year Strategy
In three years, the Ecosystem Stage will:
- Add integrations with key 3rd party tools such as ServiceNow, Rally, and Microsoft Teams
- Refine and expand our REST APIs to support a wider set of functionality in a more performant way
- Expand GraphQL support and bring it in to closer parity with our current REST APIs
- Establish a great contributor experience by creating a "developer portal" that provides easy access to all of our resources for onboarding and reference
As a result, in three years, GitLab will:
- Expand the addressable market of who can use GitLab by supporting the integration of tools that are mission-critical to their organization
- Have a more vibrant ecosystem of integrations with other 3rd party services that integrate with GitLab via our APIs
- Have a significantly larger and more diverse contributor community that is able to get to their first MR faster and more reliably
1 Year Plan
What we have recently completed
- Project Integration Management - Allows administrators and group owners to easily add integrations across an entire namespace. This makes it significantly easier to roll out and configure integrations across large numbers of projects, which previously had to be done individually.
- GitPod deployment of the GDK - GitPod allows developers to run the GDK in a cloud instance instead of on their local machine. This can dramatically increase deployment time, reduce maintenance overhead, and simplify testing code.
- Display Jira issue details inside of GitLab - For developers whose teams leverage Jira for project management, being able to see those issues natively inside of GitLab reduces context-switching and helps them stay in flow.
What we are currently working on
The Ecosystem team is actively working on
- Further improvements to the Jira integration - Expanding on the work already done, we're adding the ability to comment on, edit, and update the status of issues, with a goal of getting to a point where developers Jira needs are 80% accessible in GitLab.
- Leading the migration to Pajamas - There has been significant progress over the last year, but much of the application is still using legacy components.
- Launching a developer/contributor portal - We're creating a single place where you can get get onboarded as a developer of GitLab. This will give everyone a starting point for finding all the content they need access to in order to get started.
What's next for us
To meet our audacious goals, the Ecosystem Stage will focus on the following over the next 12 months:
- Adding a ServiceNow integration - ServiceNow is a core component to how many large organizations manage change. While there are ways to integrate via ServiceNow plugins, one that is native inside of GitLab will better support security and compliance needs.
- Rebuilding our Slack application - Since its launch, significant new functionality has been added to what Slack Applications can do. We need to rebuild (or simply refactor) to support this new functionality and enrich the workflows of our users who rely on Slack for so much of their day-to-day activities.
What we're not doing
- The ecosystem stage will not build "all" of GitLab's APIs. Each Group is ultimately responsible for building and maintaining their own APIs. Ecosystem's role is to be a source of guidance and governance across them as a whole.
- There are currently many client libraries that were created and are maintained by our community. We don't currently have any plans on creating our own libraries, but are happy to support the efforts of those contributors and community members.
Ecosystem's contribution to our company-level financial goals are driven by offering more complex integrations capabilities for larger organizations that need to closely knit 3rd party tools with GitLab.
We think about integrated functionality through the lens of the Buyer Based Tiering model, but with some integrations-specific considerations:
- Free integrations benefit a single developer, offering navigation and lightweight functionality (such as event notifications) between GitLab and a 3rd party system.
- Premium integrations benefit teams that require the integration for team cohesion, and may bring more complex functionality (such as issue management of a 3rd party system) inside of GitLab.
- Ultimate integrations enforce 3rd party integration workflows for large organizations which may override native GitLab functionality
Additionally, any functionality that is designed expressly to allow 3rd party systems to connect to GitLab (such as our APIs) will be offered for free. We will only monetize integration features that are available inside the GitLab application itself, whereas these types of resources are for 3rd party systems to leverage outside of the GitLab application.