Welcome to Flutter inner source! Inner source products within the Flutter group can be used by any internal team, and are open to contribution from any of our engineers, in any division or location. This site provides an introduction to our inner source way of working, technical documentation for our conventions and automation, and a service catalogue of inner source products.
We use GitHub to support our inner source ambitions, with all inner sourced products located in the Flutter-Global GitHub organisation to simplify access.
Flutter-Global, please use the internal docs site at developers.flutter.com as it has extra content.
Flutter-Global has thousands of repositories and GitHub does not have any in-built way to group or link them (e.g. like ‘projects’ in GitLab or Atlassian BitBucket) so the structure is not obvious in the GitHub user interface. You may already know a specific repository you need from colleagues or a work brief so can skip forward to start using (or contributing) to that repo. If you want to browse the available applications, they are organised into:
For example the Global Betting Platform (GBP) product consists of capabilities for the product catalogue, bet placement, bet tracking, cashout and so on. A product is not necessarily directly customer facing – for example the Inter-Divisional Network (IDN) product consists of capabilities for routing, security, DNS and so on.
This structure is defined in GitHub by creating a root repository for each product (named with the
product- prefix) and capability (
cap- prefix), and using a special
codebases.json file to define the repositories it claims.
While it is possible to directly navigate to and read the JSON in product and capability repository
codebases.json, it is easier to view the hierarchy in a human formatted way. We recommend using the service catalogue that is created on this site from these files.
Once you’ve got access and orientated it’s time for you to make your impact within the inner source community. To help your next steps there are a series of getting started guides depending on what you need to do:
Good luck! Remember when you get stuck, or just want to discuss or share something – there is an inner source community within Flutter to help you. Come and join in!