Skip to content

Commit

Permalink
Add wiki implementation of InnerSource portal pattern (InnerSourceCom…
Browse files Browse the repository at this point in the history
…mons#637)

Add wiki implementation of InnerSource portal pattern. To structure the information more clearly, this adds a new "Implementation" section to this pattern, which complements the "Solution" and "Known Instances" section.
  • Loading branch information
rrrutledge authored and rmarting committed Feb 29, 2024
1 parent e70a825 commit 5effa99
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions patterns/2-structured/innersource-portal.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,39 @@ Key properties of the portal are:

When launching the portal, a communications campaign promoting the addition of InnerSource data files or meta-data to code repositories should be considered, to bolster the number of projects displayed within the portal.

### Implementations

#### SAP Project Portal

A [reference implementation](https://github.com/SAP/project-portal-for-innersource) of an InnerSource portal is available on GitHub and open for contributions. It lists all InnerSource projects of an organization in an interactive and easy to use way. Projects can self-register using a dedicated GitHub topic and provide additional metadata.

![Example of an InnerSource Portal](../../assets/img/portal-overview.png "Example of an InnerSource Portal")

#### Wiki

As a simple way to start, you can set aside a page on an internal wiki for listing out available projects.
An easy way to display this information is in a table with columns giving just a little bit of extra information about the projects.
Try to have just enough columns so that viewers can determine if they want to learn more about the project, but no more.
Too much information will make the page overwhelming and difficult to use.
Individuals and teams can self-add their projects to the page.

Here is a sample set of columns:

* **Name**. Name of the project (optionally linked to its homepage).
* **Brief Description**. Explaining the purpose of the project (which problem does it solve?)
* **Technology Pre-requisites**. You must use these technologies in order to on-board to the project.
* **Getting Started**. Link to instructions on how to start using the project.
* **Chat**. Link to a chat channel to ask questions about the project.
* **Host Team**. Seeing if a team is behind the project can help others to have the confidence to use it.
* **Production Since**. How long as the project been used in a production environment? Seeing this information is a rough proxy for its maturity.
* **Contribution**. Link to instructions on how to contribute to the project.

This solution doesn't allow for a fancy display - it is just a wiki table.
If it's important for you to have a snazzy-looking UI, then this idea won't work for you.
Additionally, if you end up with a lot of projects (e.g. nearing 100),
this solution won't scale to allow the search and filtering or auto-updating of project entries that you'll probably need.
It is a good solution for a portal with a few dozen projects, though.

## Resulting Context

* The InnerSource Portal has enabled InnerSource project owners to advertise their projects to an organization-wide audience. Due to this increased visibility they are attracting much larger communities of contributors than ever before.
Expand All @@ -78,6 +107,7 @@ A [reference implementation](https://github.com/SAP/project-portal-for-innersour
* **Airbus** used the [SAP Portal](https://github.com/SAP/project-portal-for-innersource) as a Proof of Concept. It is now using the [Bazaar plugin](https://github.com/backstage/backstage/blob/master/plugins/bazaar/README.md) of [Backstage](https://backstage.io) as the latter became the official developer experience tool internally. It provides a convenient self-registering capability for all the divisions.
* **Mercado Libre** use an instance of the [SAP portal](https://github.com/SAP/project-portal-for-innersource) to discover existing InnerSource projects within the organization.
* **Mercedes-Benz** is [using](https://opensource.mercedes-benz.com/news/sponsor_innersource_commonsoss) the SAP reference implementation mentioned above for their InnerSource Portal.
* **WellSky** has a simple _Confluence Wiki_ page were InnerSource and reusable projects are listed.

## References

Expand Down

0 comments on commit 5effa99

Please sign in to comment.