diff --git a/.gitbook.yaml b/.gitbook.yaml
deleted file mode 100644
index ee37b0bad..000000000
--- a/.gitbook.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-root : ./
-
-structure:
- readme: book/en/introduction.md
- summary: book/en/toc.md
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 973e03c7f..3ef0ce782 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -8,11 +8,15 @@
# the repo. Unless a later match takes precedence,
# @global-owner1 and @global-owner2 will be requested for
# review when someone opens a pull request.
-* @lenucksi @NewMexicoKid @cewilliams @spier @robtuley
-
-# Trying out folder-specific CODEOWNERS permissions, by example of our Japanese book
-/translation/ @yuhattor
-/book/ @yuhattor
+* @lenucksi @NewMexicoKid @cewilliams @spier @robtuley @yuhattor
+
+# These people ar familiar with the translation of our patterns to a specific language:
+/translation/ja/ @yuhattor
+/book/ja/ @yuhattor
+/translation/zh/ @WillemJiang
+/book/zh/ @WillemJiang
+/translation/pt/ @jrcosta @zilio
+/book/pt/ @jrcosta @zilio
# Order is important; the last matching pattern takes the most
# precedence. When someone opens a pull request that only
diff --git a/.github/config.yml b/.github/config.yml
index bac200892..13c072b4d 100644
--- a/.github/config.yml
+++ b/.github/config.yml
@@ -15,23 +15,18 @@ newIssueWelcomeComment: >
# Configuration for new-pr-welcome - https://github.com/behaviorbot/new-pr-welcome
# Comment to be posted to on PRs from first time contributors in your repository
-newPRWelcomeComment: >
+newPRWelcomeComment: |
[](https://zenodo.org/record/3695300)
- :sparkling_heart: Thanks for opening this pull request! :sparkling_heart:
- _The InnerSource Commons_ community really appreciates your time and effort to contribute to the project.
- Please make sure you have read our [Contributing Guidelines](https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/CONTRIBUTING.md).
+ :sparkling_heart: Thanks for opening this pull request! :sparkling_heart: _The InnerSource Commons_ community really appreciates your time and effort to contribute to the project. Please make sure you have read our [Contributing Guidelines](https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/CONTRIBUTING.md).
- If you are submitting a new pattern, the following things will help get your pull request across the finish line! :checkered_flag:
+ If you are submitting a **new pattern**, the following things will help get your pull request across the finish line! :checkered_flag:
- - Check you have used our [pattern template](https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/meta/pattern-template.md) and removed any placeholder text and sections that your pattern did not need.
+ - Confirm that you have used our [pattern template](https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/meta/pattern-template.md). Please remove any placeholder text and sections that your pattern did not need.
+ - We run a number of automated checks on your PR. Please review the output of those checks on the PR itself, and see if any issues got flagged that you can fix yourself.
+ - Make sure you have added your new pattern to the list of patterns in the main [README.md](https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/README.md). If you are unsure where to add your pattern, just let us know by commenting on your PR and we will help you.
- - We will run a number of automated checks on your PR. Please review the output of those checks on the PR itself, and see if any issues got flagged that you can fix yourself.
-
- - Make sure you have added your new pattern to the list of patterns in the main [README.md](https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/README.md). If you are unsure where to add your pattern, no worries. Just let us know on the PR and we will help you.
-
-
This project has a small number of maintainers, volunteering their time to this project. So please be patient and we will get back to you as soon as we can.
- If we don't acknowledge this pull request after 7 days, feel free to chat to us about it in our [Slack workspace](https://innersourcecommons.org/slack).
+ This project has a small number of maintainers, volunteering their time to this project. So please be patient and we will get back to you as soon as we can. If we don't acknowledge this pull request after 7 days, feel free to chat to us about it in our [Slack workspace](https://innersourcecommons.org/slack).
# Configuration for first-pr-merge - https://github.com/behaviorbot/first-pr-merge
diff --git a/.github/workflows/book.yml b/.github/workflows/book.yml
index 02846a63c..9c6dac81d 100644
--- a/.github/workflows/book.yml
+++ b/.github/workflows/book.yml
@@ -3,13 +3,19 @@ name: Gitbook Generation
on:
push:
branches:
- - "main"
- - "book-*"
+ - main
+ pull_request:
+ branches:
+ - main
jobs:
gitbook-generation:
runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ language: [en, ja, zh, pt-br]
+
steps:
- uses: actions/checkout@v3
with:
@@ -21,22 +27,13 @@ jobs:
working-directory: 'book/scripts/'
bundler-cache: true
- - name: Determine book language
- run: |
- [[ "$GITHUB_REF_NAME" =~ ^book-.*$ ]] && book_language=${GITHUB_REF_NAME:5:2} || book_language="en"
- echo "BOOK_LANGUAGE=$book_language" >> $GITHUB_ENV
-
- name: Generate ToC
run: |
cd book/scripts/
- ruby generate_toc.rb $BOOK_LANGUAGE
- echo "Generated book for: $BOOK_LANGUAGE" >> $GITHUB_STEP_SUMMARY
-
- - name: Copy .gitbook.yml to root
- run: |
- cp book/$BOOK_LANGUAGE/.gitbook.yaml .
+ ruby generate_toc.rb ${{ matrix.language }}
+ echo "Generated book for: ${{ matrix.language }}" >> $GITHUB_STEP_SUMMARY
- - name: Commit updated files for the book
+ - name: Commit updated toc.md for the book
uses: stefanzweifel/git-auto-commit-action@v4
with:
- commit_message: Writing updated files for the book
+ commit_message: Writing updated toc.md for the ${{ matrix.language }} book
diff --git a/.github/workflows/i18n-consistency-checker.yaml b/.github/workflows/i18n-consistency-checker.yaml
index 2f173fada..4b7a5f6b2 100644
--- a/.github/workflows/i18n-consistency-checker.yaml
+++ b/.github/workflows/i18n-consistency-checker.yaml
@@ -1,13 +1,13 @@
-name: i18n check consistency and notify on GitHub Issues
+# -------------------------
+# To add a new language, do the following:
+# - add the 2-letter language code in matrix.language
+# - add the flag and language name that you want to use at the beginning of the #check-consistency step
+# -------------------------
+name: i18n Consistency Check
on:
- pull_request:
- branches:
- - master
- paths:
- - .github/workflows/i18n-consistency-check.yml
schedule:
- - cron: '0 0 1 * *'
+ - cron: '0 0 1 * *' # run at midnight, on day 1 of the month
workflow_dispatch:
jobs:
@@ -17,82 +17,66 @@ jobs:
matrix:
language: [ja, zh]
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v3
with:
fetch-depth: '0'
- - name: Check consistency
+ - name: Check consistency and create issue
id: check-consistency
run: |
- # Set the issue header
- issue="\
- # i18n Contents Consistency Issue\\n\
- \\n\
- The following files may have consistency issues with the English version. Please check and update the files.\\n\
- \\n\
- This issue is created when there is an update to content/en. It compares the git update history to let you know what updates are overdue. The issue should be closed when the update is complete.\\n"
-
- for file in $(find patterns/2-structured -name '*.md'); do
-
- # Get the translated file name and check if it exists
- i18n_filename=$(echo "$file" | sed 's/patterns\/2-structured/translation\/${{matrix.language}}\/patterns/g')
+ # Declare the flags
+ declare -A flags=( ["ja"]=":jp: Japanese" ["zh"]=":cn: Chinese")
+
+ issue_title="${flags['${{matrix.language}}']}: Content Consistency Issue"
+
+ # Heredoc for issue header
+ cat <<- EOM > issue.md
+ # i18n Contents Consistency Issue
+
+ The following files may have consistency issues with the English version. Please check and update the files.
+
+ This issue is created when any of the English patterns have changed (in folder `patterns/`). It compares the git update history to let you know what updates are overdue. The issue should be closed when the update is complete.
+ EOM
+
+ # Loop through all files in the English directory
+ for file in $(find patterns/{2-structured,3-validated} -name '*.md'); do
+ [[ $file =~ "3-validated" ]] && continue # if the file is under 3-validated, skip (one liner) - 2023/08/26
+ i18n_filename=$(echo "$file" | sed "s/patterns\/\(2-structured\|3-validated\)/translation\/${{matrix.language}}\/patterns/g")
+
if [[ ! -e "$i18n_filename" ]]; then
- continue
+ continue
fi
- echo $file
- echo $i18n_filename
- # Loop through all the files in the English directory
- # Get the last updated date of the original file and the translated file
- original_updated_at=$(date -d "$(git log -1 --format=%cd --date=iso $file)" +%s)
+
+ original_updated_at=$(date -d "$(git log -1 --format=%cd --date=iso $file)" +%s)
i18n_content_updated_at=$(date -d "$(git log -1 --format=%cd --date=iso $i18n_filename)" +%s)
-
- # print the last updated date of the original file and the translated file
-
- # Check if the translated file is updated after the original file
- if [[ $(($original_updated_at - $i18n_content_updated_at)) -ge 1 ]]; then
- # Get the title of the content
- content_header=$(echo "$(cat "$file")" | grep -E '^title+' | sort -r | head -n1)
+
+ if [[ $((original_updated_at - i18n_content_updated_at)) -ge 1 ]]; then
+ content_header=$(grep -E '^title+' "$file" | sort -r | head -n1)
content_title=$(echo "$content_header" | sed 's/title: //g')
-
- # Get the days since the translated file is overdue
- days_since_overdue_updates=$(($(( $(date +%s) - $original_updated_at))/ 60 / 60 / 24))
- # Get the diff between the original file and the translated file
+
+ content_title=$(awk '/## Title/{flag=1; next} /##/{flag=0; exit} flag{printf "%s", $0}' "$file")
+ days_since_overdue_updates=$(( ($(date +%s) - original_updated_at) / 60 / 60 / 24 ))
original_last_update_hash=$(git log -1 --format=%H $file)
- # Get the parent hash of the original last update hash
parent_hash=$(git log -1 --format=%P $original_last_update_hash)
- # Get the diff between the original file and the translated file
-
- result=$(echo "$(git diff ${parent_hash} HEAD $file)" | sed '1,4 s/^/# /')
- echo -e "$result"
+ result=$(git diff "${parent_hash}" HEAD "$file" | sed '1,4 s/^/# /')
+
+ # Append to the issue.md file
+ cat <<- EOM >> issue.md
+ $content_title ($file)
- # Add the contents to the issue.md file
- issue+="$content_title ($file)
\\n\\n"
- issue+="- Original File(en): [$file](https://github.com/$GITHUB_REPOSITORY/blob/master/$file)\\n"
- issue+="- Translated File(${{matrix.language}}): [$i18n_filename](https://github.com/$GITHUB_REPOSITORY/blob/master/$i18n_filename)\\n"
- issue+="- [Diff on GitHub](https://github.com/yuhattor/innersourcecommons.org/compare/$i18n_last_update_hash...$original_last_update_hash)\\n"
- issue+="- Days since overdue updates: $days_since_overdue_updates days\\n"
- issue+="\`\`\`diff\\n"
- issue+="$result"
- issue+="\\n\`\`\`\\n"
- issue+=" \\n"
- echo -e "$issue" >> issue.md
- issue=""
+ For more information, please compare [the original file(en)](https://github.com/$GITHUB_REPOSITORY/blob/master/$file) with [the translated file](https://github.com/$GITHUB_REPOSITORY/blob/master/$i18n_filename). You can view [the differences](https://github.com/$GITHUB_REPOSITORY/compare/$i18n_last_update_hash...$original_last_update_hash) on GitHub. The number of days since overdue updates is **$days_since_overdue_updates** days.
+
+ \`\`\`diff
+ $result
+ \`\`\`
+
+ EOM
fi
done
- - name: Create Issue
- run: |
- # Declare the flags
- declare -A flags=(
- ["ja"]="🇯🇵 Japanese"
- ["zh"]="🇨🇳 Chinese"
- )
-
- # Set the issue title
- issue_title="${flags[${{matrix.language}}]}: Content Consistency Issue"
-
+
# Get the existing issue ID
- existing_issue_id=$(gh issue list -S "state:open type:issue title:$issue_title" | cut -f1)
-
- # If the issue.md file exists, create a new issue or comment on the existing issue
+ existing_issue_id=$(gh issue list -S "is:issue is:open $issue_title" | cut -f1)
+ echo "existing_issue_id: $existing_issue_id"
+ # Create a new issue or comment on the existing one
if [ -f issue.md ]; then
if expr "$existing_issue_id" : '^[0-9]*$' >/dev/null; then
gh issue comment "$existing_issue_id" -F issue.md -R $GITHUB_REPOSITORY
@@ -102,3 +86,4 @@ jobs:
fi
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+
\ No newline at end of file
diff --git a/README.md b/README.md
index b68946eed..a2c6693d8 100644
--- a/README.md
+++ b/README.md
@@ -77,7 +77,6 @@ Our mission
* [InnerSource Guidance Group](patterns/1-initial/innersource-guidance-group.md) - *A highly divergent set of development standards in different teams can slow down collaboration between these teams. A InnerSource Guidance Group that establishes broad governance and behavioral guidelines can help to reduce these frictions.*
* [Unified Source Code Inventory](patterns/1-initial/source-code-inventory.md) - *In a large organization with different legal entities is often hard to get full visibility into all software assets, in particular all source code. This situation reduces the opportunities to increase business value and keep liability costs, such as software maintenance, under control across the organization as a whole. An organization-level source code inventory addresses these issues while exploiting opportunities to identify and support valuable InnerSource assets.*
* [Explicit Shared Ownership](patterns/1-initial/explicit-shared-ownership.md) - *A software component that several teams depend on has grown to the point where owners are no longer capable of taking full ownership. There is confusion who to involve for changes. Sharing ownership explicitly and making expected behavior visible removes ambiguity. Writing a contributions document creates a natural way to evolve ownership.*
-* [Standard Release Process and Published Artifacts](patterns/1-initial/release-process.md) - *Teams may be reluctant to use InnerSource projects that they are unfamiliar with when there is no clear release process apparent in the repository. Providing clear release notes and a published artifact (binary, docker image, jar, etc) gives people confidence you are publishing a quality product.*
* [Overcoming the Not-Invented-Here Mindset](/patterns/1-initial/not-invented-here.md) - *Perfectly good solutions are being rejected because of "Not Invented Here" (NIH). Engineers and their managers will choose to implement functionality themselves first, even if an alternative exists. A shift towards a culture of "Proudly Found Elsewhere" can help reduce the negative impact of NIH.*
* [Balancing Openness and Security](/patterns/1-initial/balancing-openness-and-security.md) - *While InnerSource flourishes in environments with a high degree of shared code, Security/Legal prefers the limitation of source code access to only those that need it. By making Security/Legal part of the team, introducing explicit sharing levels and security policies for shared repositories, as well as defining what qualifies as sensitive information, code sharing can be facilitated while minimizing the associated risks.*
* [Crossing the InnerSource Chasm](/patterns/1-initial/crossing-chasm.md) - *Early InnerSource experiments have been successful. Methods that were successful convincing early teams stop working though when scaling the initiative. This chasm can be crossed by using different methods to reach people at different stages of the innovation curve.*
diff --git a/book/README.md b/book/README.md
index 315914929..f5aa20b8b 100644
--- a/book/README.md
+++ b/book/README.md
@@ -20,9 +20,9 @@ We use the [gitbook.com](https://www.gitbook.com) service to host our book.
The `/book` folder contains generator scripts and extra content required to create the gitbook.
-- `.github/workflows/book.yml` - A GitHub Action that triggers scripts to generate the book.
-- `/book/scripts/generate_toc.rb` - Generates the table of contents (ToC) for the book. It takes patterns of maturity **Structured** and **Validated**, extracts title and patlet, and injects this info into `/book/en/toc_template.md`. The output is written to `/book/en/toc.md`. The ToC is what you see on the left-hand-side menu in the gitbook.
-- `/book/en/.gitbook.yaml` - Holds basic configuration for the gitbook service. This file is copied to the root of the repo, if the English book is generated.
+- `.github/workflows/book.yml` - A GitHub Action that triggers `generate_toc.rb`.
+- `/book/scripts/generate_toc.rb` - Generates the table of contents (ToC) for the book. It takes patterns of maturity **Structured** and **Validated**, extracts title and patlet, and injects this info into `/book/en/toc_template.md`. The output is written to `/book/en/toc.md`. The ToC is what you see in the menu on the left in the gitbook.
+- `/book/en/.gitbook.yaml` - Holds basic configuration for the gitbook service.
- `/book/en/introduction.md` - The introduction to our book. This is what the reader sees first when they open the book. *Note:* The current content is based on [README.md](../README.md).
- `/book/en/contribute.md` - Explains how to contribute to this book.
- `/book/en/explore-patterns.md` - Shows the mind map of all patterns. Allows readers to link to the mind map directly.
@@ -42,10 +42,13 @@ For more on the translation process see [these translation instructions](../tran
The book is generated in multiple languages.
-Depending on which **branch** a change is merged into, a different book is generated:
+gitbook takes care of the markdown to HTML rendering for us.
+To do so, we need to provide a full list of all patterns that should be dipslayed in the book.
-* changes merged to `main` branch: triggers the book generation for the **English** book.
-* changes merged to `book-`[^1] branch: triggers the book generation for the book in the given language e.g. `book-jp` for the **Japanese** book.
+As the list of patterns grows over time, we generate the list automatically using `/book/scripts/generate_toc.rb`.
+The script is triggered by the [.github/workflows/book.yml](https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/.github/workflows/book.yml) workflow, which contains a hard-coded list of all languages for which we need to generate `toc.md` files.
+
+If a new language is added, you need to modify [this line](https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/.github/workflows/book.yml#L17) in `.github/workflows/book.yml` and add the 2-letter language code of the language that you are adding.
## Objectives of the book
diff --git a/book/en/.gitbook.yaml b/book/en/.gitbook.yaml
index ee37b0bad..fb44a6a2c 100644
--- a/book/en/.gitbook.yaml
+++ b/book/en/.gitbook.yaml
@@ -1,5 +1,5 @@
root : ./
structure:
- readme: book/en/introduction.md
- summary: book/en/toc.md
+ readme: introduction.md
+ summary: toc.md
diff --git a/book/en/introduction.md b/book/en/introduction.md
index 944d4dfef..215604aca 100644
--- a/book/en/introduction.md
+++ b/book/en/introduction.md
@@ -3,8 +3,8 @@

{% hint style="info" %}
-You are reading an early release of the InnerSource Patterns book and may still find broken links, spelling mistakes, or other errors.
-Please help us to fix them to produce the best book possible :). Learn how to [contribute to this book](contribute.md).
+You can help us to create the best possible book about InnerSource Patterns :).
+Learn how to [contribute to this book](contribute.md).
{% endhint %}
Welcome to the **InnerSource Patterns Book**.
diff --git a/book/en/toc.md b/book/en/toc.md
index 51563055a..6a0999c44 100644
--- a/book/en/toc.md
+++ b/book/en/toc.md
@@ -39,6 +39,7 @@ Instead edit toc_template.md
* [Review Committee](../../patterns/2-structured/review-committee.md) - The InnerSource working model is a radical departure from more traditional approaches, for developers and managers alike. By establishing a review committee as an interface between the InnerSource initiative and all senior managers of business units participating in it, the latter are more likely to familiarize themselves with the initiative and support it, as it affords them a certain level of oversight and control without fostering micromanagement.
* [Service vs. Library](../../patterns/2-structured/service-vs-library.md) - Teams in a DevOps environment may be reluctant to work across team boundaries on common code bases due to ambiguity over who will be responsible for responding to service downtime. The solution is to realize that often it's possible to either deploy the same service in independent environments with separate escalation chains in the event of service downtime or factor a lot of shared code out into one library and collaborate on that.
* [Standard Base Documentation](../../patterns/2-structured/project-setup/base-documentation.md) - New contributors to an InnerSource project have a hard time figuring out who maintains the project, what to work on, and how to contribute. Providing documentation in standard files like README.md/CONTRIBUTING.md enables a self service process for new contributors, so that they can find the answers to the most common questions on their own.
+* [Standard Release Process](../../patterns/2-structured/release-process.md) - Teams may hesitate to adopt an InnerSource project if they are unsure of its maturity. To address this, consistent release notes and published artifacts are crucial. These practices showcase a strong dedication to the project, instilling confidence and assuring users of ongoing commitment to sustainable and well-managed software.
* [Start as an Experiment](../../patterns/2-structured/start-as-experiment.md) - Start your InnerSource initiative as a time limited experiment to make it easier for managers unfamiliar with InnerSource to endorse and support the initiative.
* [Transparent Cross-Team Decision Making using RFCs](../../patterns/2-structured/transparent-cross-team-decision-making-using-rfcs.md) - InnerSource projects that want to achieve high participation rates and make the best possible decisions for everybody involved need to find ways to create participatory systems throughout the full software lifecycle. Publishing internal Requests for Comments (RFCs) documents allows for discussions early on in the design process, and increases the chances to build solutions with a high degree of commitment from all involved parties.
* [Trusted Committer](../../patterns/2-structured/trusted-committer.md) - Many InnerSource projects will find themselves in a situation where they consistently receive feedback, features, and bug-fixes from contributors. In these situations, project maintainers seek ways to recognize and reward the work of the contributor above and beyond single contributions.
diff --git a/book/en/toc_template.md b/book/en/toc_template.md
index d961c2219..7798aa489 100644
--- a/book/en/toc_template.md
+++ b/book/en/toc_template.md
@@ -19,7 +19,7 @@ Instead edit toc_template.md
## Patterns
-<>
+<>
## Appendix
diff --git a/book/ja/.gitbook.yaml b/book/ja/.gitbook.yaml
index 6c30287cb..b96d89a04 100644
--- a/book/ja/.gitbook.yaml
+++ b/book/ja/.gitbook.yaml
@@ -1,6 +1,6 @@
root : ./
structure:
- readme: book/ja/introduction.md
- summary: book/ja/toc.md
+ readme: introduction.md
+ summary: toc.md
\ No newline at end of file
diff --git a/book/ja/toc.md b/book/ja/toc.md
index 8a03f33d8..e3ab3cac4 100644
--- a/book/ja/toc.md
+++ b/book/ja/toc.md
@@ -39,6 +39,7 @@ Instead edit toc_template.md
* [基本原則ガイダンスの文書化](../../translation/ja/patterns/document-your-guiding-principles.md) - 「オープンソースのベストプラクティスを組織内に適用する」という通常のインナーソースの説明は、オープンソースのバックグラウンドがない人々にはうまく機能しません。 解決策として、インナーソースの最も重要な原則を文書化し広く公開しましょう。
* [実験として始める](../../translation/ja/patterns/start-as-experiment.md) - インナーソースイニシアチブを期間限定の実験として開始し、インナーソースに慣れていないマネージャーがイニシアチブを承認およびサポートしやすくします。
* [成熟度モデル](../../translation/ja/patterns/maturity-model.md) - チームはインナーソースを採用し始めました。このプラクティスは、複数の部門に広がっています。しかし、インナーソースプロジェクトを構成する概念への理解は様々です。解決策は、チームがセルフチェックを経て、まだ気づいていないパターンやプラクティスを発見できるよう、成熟度モデルを提供することです。
+* [持続可能な成長のためのエクステンション](../../translation/ja/patterns/extensions-for-sustainable-growth.md) - インナーソースプロジェクトは多くのコントリビューションを受けており、メンテナンスが難しくなっています。メンテナは、プロジェクトのコア部分から離れた拡張機構を提供することで、最小のコストとメンテナンスオーバーヘッドでプロジェクトの能力をスケールアップすることを可能にします。
* [正式なコミュニティリーダー](../../translation/ja/patterns/dedicated-community-leader.md) - インナーソースの取り組みを成功させるために、コミュニケーションとテクニカルの両方のスキルを持つ人をコミュニティのリーダーとして選ぶ。
## 付録
diff --git a/book/ja/toc_template.md b/book/ja/toc_template.md
index 01ab26bbe..0bc3a7019 100644
--- a/book/ja/toc_template.md
+++ b/book/ja/toc_template.md
@@ -19,7 +19,7 @@ Instead edit toc_template.md
## パターン
-<>
+<>
## 付録
diff --git a/book/pt-br/.gitbook.yaml b/book/pt-br/.gitbook.yaml
new file mode 100644
index 000000000..fb44a6a2c
--- /dev/null
+++ b/book/pt-br/.gitbook.yaml
@@ -0,0 +1,5 @@
+root : ./
+
+structure:
+ readme: introduction.md
+ summary: toc.md
diff --git a/book/pt-br/contribute.md b/book/pt-br/contribute.md
new file mode 100644
index 000000000..78c99241a
--- /dev/null
+++ b/book/pt-br/contribute.md
@@ -0,0 +1,31 @@
+# Contribua para este Livro
+
+Deseja tornar este livro melhor? Isso é incrível!
+
+O livro Padrões InnerSource em si é um [projeto de código aberto][repositório] e acolhe qualquer forma de contribuição. Nada é insignificante!
+
+Não importa se deseja nos auxiliar a corrigir erros de gramática/ortografia, melhorar o design ou contribuir com padrões inteiramente novos baseados nas experiências InnerSource que teve em seu local de trabalho. Amamos todas essas contribuições! :)
+
+Se nunca contribuiu para um projeto de código aberto anteriormente, saiba que a comunidade Padrões InnerSource é formada por pessoas amigáveis e é um ambiente seguro para experimentar.
+
+## Antes de Começar
+
+As fontes dos Padrões InnerSource e deste livro estão mantidas em um repositório no GitHub. Portanto, será necessário ter uma conta de usuário no GitHub para fazer edições e sugestões neste livro. Caso não possua uma ainda, visite [github.com](https://github.com) e crie uma conta gratuitamente.
+
+## Diferentes Formas de Contribuir
+
+Aqui estão algumas maneiras pelas quais pode contribuir:
+
+1. Corrigir erros de ortografia, formatação ou outras falhas que notar neste livro.
+2. Melhorar o conteúdo de um padrão existente (por exemplo, adicionando uma breve descrição de como está usando um padrão como uma _Instância Conhecida_).
+3. Contribuir com um novo padrão, descrevendo como superou desafios relacionados ao InnerSource em sua organização.
+
+Para (1) e (2) acima, pode simplesmente clicar no link **Editar no GitHub** que vê no topo de cada página deste livro. Isso o levará diretamente ao arquivo correspondente em nosso repositório GitHub, onde pode sugerir suas alterações.
+
+Para (3), será necessário clonar o repositório [InnerSourcePatterns][repositório] e adicionar um novo arquivo com o padrão que está sugerindo. Ao fazer contribuições maiores para este livro, revise nosso [CONTRIBUTING.md](../../CONTRIBUTING.md) e também nosso [Manual do Colaborador](../../meta/contributor-handbook.md).
+
+## Licença das Contribuições
+
+O conteúdo deste repositório está licenciado sob [CC-BY-SA-4.0](../../LICENSE.txt). Ao contribuir para este repositório, nos concede (e a todos os outros, também) o direito de usar sua contribuição de acordo com essa licença.
+
+[repositório]: https://github.com/InnerSourceCommons/InnerSourcePatterns
diff --git a/book/pt-br/explore-patterns.md b/book/pt-br/explore-patterns.md
new file mode 100644
index 000000000..aa1cdb7b0
--- /dev/null
+++ b/book/pt-br/explore-patterns.md
@@ -0,0 +1,19 @@
+# Explore Patterns
+
+Cada vez mais padrões estão sendo contribuídos para este livro pela comunidade InnerSource Commons. Isso é incrível!
+
+Agora, como tornar mais fácil para os leitores descobrirem os padrões que podem ajudá-los em sua situação específica?
+
+Para esse propósito, fornecemos este mapa mental. Ele **classifica os padrões com base nas diferentes fases de um Programa InnerSource** e nos desafios que podem surgir nas respectivas fases.
+
+
+
+## Melhore este Mapa Mental
+
+Se você notar algo neste mapa mental que pareça errado, por favor [abra uma issue](https://github.com/InnerSourceCommons/InnerSourcePatterns/issues), descrevendo o problema e a correção que deve ser feita.
+
+Além disso, se você tiver outras ideias para melhorar a descoberta desses padrões ou quiser tornar este mapa mental melhor, revise a documentação de nossa abordagem de [Categorização de Padrões](https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/pattern-categorization/README.md) e também veja como [contribuir para este livro](contribute.md).
+
+## Referências
+
+A ideia de categorizar os padrões dessa forma é vagamente baseada em uma descrição em [Thoughts on an InnerSource Pattern Language](https://drive.google.com/file/d/13AY8glCOdpLOVuz7cVD6QOB8d2xbHCS1/view) por Tim Yao, Bob Hanmer e Padma Sudarsan (2018). Para detalhes específicos, veja o slide 15 na apresentação.
diff --git a/book/pt-br/innersource-patterns-book-cover.jpg b/book/pt-br/innersource-patterns-book-cover.jpg
new file mode 100644
index 000000000..45b84660f
Binary files /dev/null and b/book/pt-br/innersource-patterns-book-cover.jpg differ
diff --git a/book/pt-br/introduction.md b/book/pt-br/introduction.md
new file mode 100644
index 000000000..2a50c4454
--- /dev/null
+++ b/book/pt-br/introduction.md
@@ -0,0 +1,67 @@
+# Introdução
+
+
+
+{% hint style="info" %}
+Você está lendo uma versão inicial do Livro de Padrões InnerSource e ainda pode encontrar links quebrados, erros de ortografia ou outros problemas.
+Por favor, nos ajude a corrigi-los para produzirmos o melhor livro possível :). Saiba como [contribuir para este livro](contribute.md).
+{% endhint %}
+
+Bem-vindo ao **Livro de Padrões InnerSource**.
+
+Este livro contém as melhores práticas InnerSource codificadas em um formato específico para facilitar a compreensão, avaliação e aplicação delas em seu contexto. Chamamos esse formato de **padrão**.
+
+A [InnerSource Commons](http://innersourcecommons.org) coletou esses padrões ao longo de muitos anos, publicando os padrões mais maduros neste livro, onde membros da comunidade revisam cada padrão, com pelo menos uma instância conhecida de uso do padrão.
+
+Nesta introdução, explicamos [o que é InnerSource](#o-que-é-innersource), [o que é um padrão](#o-que-são-padrões-innersource) e [Como você pode usar Padrões InnerSource?](#como-você-pode-usar-padrões-innersource) em sua organização.
+
+Se você já está usando InnerSource em sua empresa e deseja contribuir com suas experiências para este livro, adoraríamos [receber suas contribuições](contribute.md)!
+
+## O que é InnerSource?
+
+Definimos InnerSource como:
+
+> O uso de princípios e práticas de código aberto para o desenvolvimento de software dentro dos limites de uma organização.
+
+O InnerSource aproveita as lições aprendidas com o desenvolvimento de software de código aberto e as aplica à forma como as empresas desenvolvem software internamente. À medida que os desenvolvedores se acostumaram a trabalhar em software de código aberto de alta qualidade, surge um forte desejo de trazer essas práticas de volta para dentro da empresa e aplicá-las ao software que as empresas podem relutar em lançar.
+
+Para empresas que constroem principalmente software de código fechado, o InnerSource pode ser uma ótima ferramenta para quebrar barreiras, incentivar e ampliar a colaboração interna, acelerar a integração de novos engenheiros e identificar oportunidades de contribuir com software para o mundo de código aberto.
+
+## O que são Padrões InnerSource?
+
+Padrões são uma forma de descrever uma solução repetível e comprovada para um problema dentro de um contexto. Os padrões seguem uma forma simples que auxilia durante a implementação de uma solução para entender as restrições do problema, compreender as forças que você precisa equilibrar e o contexto resultante - a situação criada pela aplicação da solução.
+
+Os padrões podem fornecer uma maneira para os participantes da InnerSource Commons compartilharem informações de forma concisa, melhorando a prática do InnerSource. Os padrões são divididos em Título, Declaração do Problema, Contexto, Forças e Soluções como suas principais seções.
+
+* [`O que são padrões?` Vídeos no Youtube](http://bit.ly/innersource_patterns_videos) - Assista a uma série de vídeos no Youtube de 2-5 minutos explicando Padrões InnerSource.
+* [Webinar de Discussão de Padrões](https://youtu.be/i-0IVhfRVFU) - Realizamos um webinar em 16 de março de 2017 para discutir ao vivo um *donut pattern*[^1] (vá para 24:30 para a discussão). Isso ilustra o processo de revisão que seguimos. Veja também o [Webinar O'Reilly de 1 de junho de 2017 sobre Padrões InnerSource](http://www.oreilly.com/pub/e/3884).
+* [Modelo de Padrão](../../meta/pattern-template.md) - Veja um padrão InnerSource esqueleto para ter uma ideia do que é necessário para criar um novo padrão!
+* [Introdução aos Padrões InnerSource (apresentação do Fall Summit 2016)](https://drive.google.com/open?id=0B7_9iQb93uBQbnlkdHNuUGhpTXc) - *Tim Yao e Padma Sudarsan* (PDF). Fundo e exemplos detalhados de padrões - Entenda detalhadamente por que e como interagir com nossos padrões. Veja também a [Introdução aos Padrões InnerSource (Fall Summit 2017)](https://drive.google.com/open?id=0B7_9iQb93uBQWmYwMFpyaGh4OFU) *Tim Yao e Bob Hanmer* (PDF).
+
+## Como você pode usar Padrões InnerSource?
+
+Os padrões devem ser usados com cuidado. Eles não podem ser aplicados indiscriminadamente. Na maioria dos casos, você precisará adaptar a solução fornecida à sua situação; mas as informações dadas no padrão, definindo o contexto (restrições imutáveis) e as forças (restrições que podem ser alteradas e equilibradas entre si), devem ajudá-lo a fazer isso. Note que você também precisará determinar se existem restrições adicionais (contexto da empresa e forças da empresa) que se aplicam à sua empresa/organização específica e que devem ser adicionadas ao padrão (como um tipo de filtro). Essas restrições adicionais podem exigir etapas de solução adicionais a serem aplicadas.
+
+A forma do padrão é útil para descrever soluções comprovadas, mas também pode ser usada para *brainstorming de novas soluções* onde os padrões ainda não estão estabelecidos. Isso ocorre porque a anatomia de um padrão fornece um framework para pensar em um problema de maneira estruturada. Você também pode criar um *donut pattern* (preenchendo os campos de problema, contexto, forças e contexto resultante, mas deixando a solução em branco) como uma maneira de pedir ajuda à comunidade da InnerSource Commons (para encontrar uma solução comprovada ou para gerar ideias para tentar).
+
+## Como Contribuir?
+
+Por favor, consulte: [Contribuir para este livro](./contribute.md)
+
+## Créditos
+
+Este livro é o resultado de muitos anos de trabalho de inúmeros [Contribuidores de Código Aberto](https://github.com/InnerSourceCommons/InnerSourcePatterns/graphs/contributors) de todo o mundo. Sua disposição em compartilhar abertamente os desafios que enfrentaram em suas empresas e como o InnerSource os ajudou a enfrentar esses desafios torna este livro um recurso valioso para outros em sua jornada InnerSource.
+
+Queremos mencionar especificamente o Grupo de Trabalho InnerSource Patterns. Eles têm nutrido a qualidade dos Padrões InnerSource e ajudaram outros a contribuir. Por último, eles também compilaram uma seleção de padrões disponíveis neste livro.
+
+A imagem de capa deste livro foi criada por [Sebastian Spier](https://spier.hu) e adaptada a partir de uma imagem de [Tony Hisgett - Alhambra 6](https://www.flickr.com/photos/hisgett/29345405788/), disponível sob [CC BY 2.0](https://creativecommons.org/licenses/by/2.0/).
+
+**Obrigado a todos os contribuidores! E feliz Dia InnerSource :)**
+
+## Licenciamento
+
+
+
+InnerSourcePatterns por [InnerSourceCommons.org](http://innersourcecommons.org) está licenciado sob uma [Licença Internacional Creative Commons Attribution-ShareAlike 4.0](http://creativecommons.org/licenses/by-sa/4.0/).
+
+[^1]: *Donut pattern* não possui tradução direta para português. No contexto em que está utilizado refere-se a um padrão ainda não está totalmente definido, com o campo solução ainda pendente de discussões.
diff --git a/book/pt-br/toc.md b/book/pt-br/toc.md
new file mode 100644
index 000000000..b068430e4
--- /dev/null
+++ b/book/pt-br/toc.md
@@ -0,0 +1,54 @@
+# Sumário
+
+
+
+
+
+* [Introdução](./introduction.md)
+* [Sumário](./toc.md)
+* [Explorar Padrões](./explore-patterns.md)
+* [Contribuir para Este Livro](./contribute.md)
+
+
+
+## Padrões
+
+* [Avaliação de Projeto entre Equipes](../../translation/pt-br/patterns/crossteam-project-valuation.md) - É difícil vender o valor de projetos InnerSource entre equipes que não proporcionam um impacto direto na receita da empresa. Aqui está uma maneira baseada em dados para representar seu projeto que articula seu valor e o amplifica.
+* [Casos de uso do Issue Tracker](../../translation/pt-br/patterns/issue-tracker.md) - A equipe responsável pelo InnerSource falha em tornar não apenas os planos e o progresso transparentes, mas também o contexto das mudanças. Isso é resolvido aumentando os casos de uso do Issue Tracker do projeto para também servir como espaço para brainstorming, discussões de implementação e design de recursos.
+* [Colaborador Contratado](../../translation/pt-br/patterns/contracted-contributor.md) - Associados que desejam contribuir com o InnerSource são desencorajados a fazê-lo por sua gerência de linha. O alívio é fornecido por meio de contratos e acordos formais.
+* [Comitê de Revisão](../../translation/pt-br/patterns/review-committee.md) - O Modelo de Trabalho InnerSource é uma ruptura radical das abordagens mais tradicionais, tanto para desenvolvedores quanto para gerentes. Ao estabelecer um Comitê de Revisão como uma interface entre a iniciativa InnerSource e todos os gerentes sêniores das unidades de negócios que participam dela, é mais provável que estes últimos se familiarizem com a iniciativa e a apoiem, uma vez que isso lhes proporciona um certo nível de supervisão e controle sem promover a microgestão.
+* [Documentação Base Padrão](../../translation/pt-br/patterns/base-documentation.md) - Novos contributors para um projeto InnerSource têm dificuldade em descobrir quem é o responsável pelo projeto, o que trabalhar e como contribuir. Fornecer documentação em arquivos padrão como README.md/CONTRIBUTING.md permite um processo de autoatendimento para novos contributors, para que possam encontrar as respostas para as perguntas mais comuns por conta própria.
+* [Documente seus Princípios Orientadores](../../translation/pt-br/patterns/document-your-guiding-principles.md) - A explicação comum do InnerSource, "aplicando as melhores práticas de código aberto dentro de uma organização", não funciona bem com pessoas que não possuem um background em código aberto. Como solução, os princípios mais importantes do InnerSource são documentados e publicados amplamente.
+* [Elogiar Participantes](../../translation/pt-br/patterns/praise-participants.md) - Após uma contribuição de InnerSource, é importante agradecer ao contribuidor pelo seu tempo e esforço. Este padrão fornece orientações que não apenas reconhecem efetivamente a contribuição, mas também promovem um maior envolvimento do contribuidor e de outros.
+* [Equipe Central](../../translation/pt-br/patterns/core-team.md) - Mesmo quando um projeto InnerSource é amplamente necessário, as contribuições e uso podem ser prejudicados porque o projeto é difícil de trabalhar. Estabelecer uma equipe central dedicada a cuidar dos itens fundamentais do projeto. O trabalho deles permite que os contributors adicionem e usem recursos que oferecem valor para seus cenários.
+* [Ferramentas de Comunicação](../../translation/pt-br/patterns/communication-tooling.md) - Os usuários de um projeto InnerSource têm dificuldade em obter ajuda e entrar em contato com a equipe responsável pelo projeto. Ao usar consistentemente ferramentas de comunicação assíncronas, o projeto torna as discussões visíveis, arquivadas e pesquisáveis, o que leva a um nível melhorado de suporte para os usuários.
+* [Garantia de 30 dias](../../translation/pt-br/patterns/30-day-warranty.md) - Ao aceitar contribuições de fora da sua própria equipe, há uma aversão natural em assumir a responsabilidade pelo código que não foi escrito pela própria equipe. Através da Garantia de 30 dias, a equipe contribuinte concorda em fornecer correções de bugs para a equipe receptora, o que aumentará o nível de confiança entre as duas equipes e torna mais provável que as contribuições sejam aceitas.
+* [Gig Marketplace](../../translation/pt-br/patterns/gig-marketplace.md) - Estabeleça um mercado criando um site intranet que liste necessidades específicas de projetos InnerSource como "Gigs", com requisitos explícitos de tempo e habilidades. Isso permitirá que os gerentes entendam melhor o compromisso de tempo de seus funcionários e os benefícios profissionais, aumentando assim a probabilidade de obter a aprovação para fazer contribuições InnerSource.
+* [Inicie como um Experimento](../../translation/pt-br/patterns/start-as-experiment.md) - Comece a sua iniciativa InnerSource como um experimento com limite de tempo para tornar mais fácil para os gestores que não estão familiarizados com o InnerSource endossar e apoiar a iniciativa.
+* [Licença InnerSource](../../translation/pt-br/patterns/innersource-license.md) - Duas entidades jurídicas que pertencem à mesma organização desejam compartilhar código-fonte de software entre si, mas estão preocupadas com as implicações em termos de responsabilidades legais ou contabilidade entre empresas.
+* [Líder de Comunidade Dedicado](../../translation/pt-br/patterns/dedicated-community-leader.md) - Selecione pessoas com habilidades tanto em comunicação quanto em técnicas para liderar as comunidades e garantir o sucesso na iniciativa InnerSource
+* [Modelo de Maturidade](../../translation/pt-br/patterns/maturity-model.md) - As equipes começaram a adotar o InnerSource. A prática está se espalhando para vários departamentos. No entanto, a compreensão do que constitui um projeto InnerSource varia. A solução é fornecer um modelo de maturidade para permitir que as equipes realizem uma autoavaliação e descubram padrões e práticas das quais ainda não têm conhecimento.
+* [Portal InnerSource](../../translation/pt-br/patterns/innersource-portal.md) - Potenciais contribuidores não conseguem descobrir facilmente os projetos de InnerSource que lhes interessam. Ao criar um site de intranet que indexa todas as informações disponíveis sobre projetos de InnerSource, você permite que os contribuidores aprendam sobre projetos que possam interessá-los e que os proprietários de projetos de InnerSource atraiam um público externo.
+* [Repositório Pontuação de Atividade](../../translation/pt-br/patterns/repository-activity-score.md) - Potenciais contribuidores desejam encontrar projetos InnerSource ativos que precisem de sua ajuda. Ao calcular uma pontuação de atividade do repositório para cada projeto, uma lista classificada de projetos pode ser criada (por exemplo, no Portal InnerSource), para que os potenciais contribuidores possam determinar mais facilmente em qual projeto desejam contribuir.
+* [Requisitos Comuns](../../translation/pt-br/patterns/common-requirements.md) - O código comum em um repositório compartilhado não está atendendo às necessidades de todas as equipes de projeto que desejam usá-lo; isso é resolvido por meio do alinhamento de requisitos e refatoração.
+* [Serviço vs. Biblioteca](../../translation/pt-br/patterns/service-vs-library.md) - Equipes em um ambiente DevOps podem relutar em trabalhar além dos limites de suas equipes em bases de código comuns, devido à ambiguidade sobre quem será responsável por responder a interrupções de serviço. A solução é perceber que muitas vezes é possível implantar o mesmo serviço em ambientes independentes com cadeias de escalonamento separadas no caso de interrupções de serviço, ou separar grande parte do código compartilhado em uma biblioteca única e colaborar nela.
+* [Tomada de Decisão Transparente entre Equipes usando RFCs](../../translation/pt-br/patterns/transparent-cross-team-decision-making-using-rfcs.md) - Projetos InnerSource que desejam alcançar altas taxas de participação e tomar as melhores decisões possíveis para todos os envolvidos precisam encontrar maneiras de criar sistemas participativos ao longo de todo o ciclo de vida do software. A publicação de documentos internos de "Requests for Comments" (RFCs) permite discussões desde o início do processo de design e aumenta as chances de construir soluções com um alto grau de comprometimento de todas as partes envolvidas.
+* [Trusted Committer](../../translation/pt-br/patterns/trusted-committer.md) - Muitos projetos InnerSource se encontram em uma situação em que consistentemente recebem feedback, funcionalidades e correções de bugs de contribuidores. Nessas situações, os mantenedores do projeto buscam maneiras de reconhecer e recompensar o trabalho do contribuidor acima e além de contribuições individuais.
+
+## Apêndice
+
+* [Modelo de Padrão](../../meta/pattern-template.md)
+* Extras
+ * [Modelo de README](../../translation/pt-br/templates/README-template.md)
+ * [Modelo de CONTRIBUTING](../../translation/pt-br/templates/CONTRIBUTING-template.md)
+
+## Recursos
+
+* [Este livro no GitHub](https://github.com/InnerSourceCommons/InnerSourcePatterns)
+* [InnerSource Commons](http://innersourcecommons.org)
diff --git a/book/pt-br/toc_template.md b/book/pt-br/toc_template.md
new file mode 100644
index 000000000..b4164ecce
--- /dev/null
+++ b/book/pt-br/toc_template.md
@@ -0,0 +1,34 @@
+# Sumário
+
+
+
+
+
+* [Introdução](./introduction.md)
+* [Sumário](./toc.md)
+* [Explorar Padrões](./explore-patterns.md)
+* [Contribuir para Este Livro](./contribute.md)
+
+
+
+## Padrões
+
+<>
+
+## Apêndice
+
+* [Modelo de Padrão](../../meta/pattern-template.md)
+* Extras
+ * [Modelo de README](../../translation/pt-br/templates/README-template.md)
+ * [Modelo de CONTRIBUTING](../../translation/pt-br/templates/CONTRIBUTING-template.md)
+
+## Recursos
+
+* [Este livro no GitHub](https://github.com/InnerSourceCommons/InnerSourcePatterns)
+* [InnerSource Commons](http://innersourcecommons.org)
diff --git a/book/scripts/generate_toc.rb b/book/scripts/generate_toc.rb
index 49a608c2f..07a51f590 100644
--- a/book/scripts/generate_toc.rb
+++ b/book/scripts/generate_toc.rb
@@ -93,7 +93,7 @@ def generate_patterns_overview(patterns)
## Inject the list of patterns into the ToC template
new_toc_content = open(TOC_TEMPLATE_FILE).readlines().join()
-new_toc_content = new_toc_content.gsub(/<>/,toc_snippet)
+new_toc_content = new_toc_content.gsub(/<>/,toc_snippet)
## Write the new ToC to file
File.write(TOC_FILE, new_toc_content)
diff --git a/book/zh/.gitbook.yaml b/book/zh/.gitbook.yaml
index f7e908ffc..fb44a6a2c 100644
--- a/book/zh/.gitbook.yaml
+++ b/book/zh/.gitbook.yaml
@@ -1,5 +1,5 @@
root : ./
structure:
- readme: book/zh/introduction.md
- summary: book/zh/toc.md
+ readme: introduction.md
+ summary: toc.md
diff --git a/book/zh/toc_template.md b/book/zh/toc_template.md
index 461eb6fe8..a4098a1d7 100644
--- a/book/zh/toc_template.md
+++ b/book/zh/toc_template.md
@@ -19,7 +19,7 @@ Instead edit toc_template.md
## 模式
-<>
+<>
## 附录
diff --git a/meta/boardreports/2023-08.md b/meta/boardreports/2023-08.md
new file mode 100644
index 000000000..d297ecb5c
--- /dev/null
+++ b/meta/boardreports/2023-08.md
@@ -0,0 +1,53 @@
+# InnerSource Patterns WG - Report for Board Meeting 2023-08
+
+## Meta
+
+* Reporting Period: 2023-05..2023-07
+* [merged PRs](https://github.com/InnerSourceCommons/InnerSourcePatterns/pulls?q=is%3Apr+closed%3A2023-05..2023-07+is%3Amerged)
+* [opened issues](https://github.com/InnerSourceCommons/InnerSourcePatterns/issues?q=is%3Aissue+created%3A2023-05..2023-07+is%3Aopen)
+
+## Engagement
+
+The [patterns book][] is the way InnerSource practices are captured and shared. Recent web analytics:
+
+* stable traffic on the patterns book (tracking_id: `G-QL1S8MW5D9`)
+ * 19,704 views total (previous report was 18,361 page)
+ * Last month we had 50% more traffic, but traffic did not drop and we were able to slightly exceed that again this time!
+ * Last month was not stable, with high traffic at the beginning of April. This month, traffic was stable overall.
+* Most popular patterns:
+ * InnerSource Portal
+ * 30 Day Warranty
+ * Core Team
+ * Standard Base Documentation
+ * Common Requirements
+* traffic for translations:
+ * Japanese - 1,596 views total (somewhat continuous traffic but with spikes of 291 page views when @yuhattor introduced InnerSource Patterns at the Platform Engineering Meetup on 5/15/2023.
+ * Chinese - 15 views total
+
+## Changes
+
+Changes are contributed via the [InnerSourcePatterns][] repository:
+
+* Known Instances (applications of our patterns in the wild)
+ * Adding Mercedes-Benz to **Innersource Portal** - thank you @wgehring
+ * Adding WellSky to **Service vs. Library** - thank you @rrrutledge
+* Creating `COMMUNICATION-template.md` to streamline the communication. The [final goal](https://github.com/InnerSourceCommons/InnerSourcePatterns/issues/535) is to add this to the **Standard Base Documentation** pattern. - thank you @kschueths
+* Updating Airbus implementation of the **Innersource Portal** pattern. Backstage Case Studies have been added. - thank you @sicot-f
+* **Extensions for Sustainable Growth** has been translated by @yuhattor and merged into main. Not in production yet - thank you @bakisunsan for the review.
+* Script for pattern maintainers, to find upgradeable patterns based on their number of Known Instances - thank you @spier
+* Adding a Spelling & Style checker (using vale). Also used by the Learning Path already. For further details about the approach with vale also see [isc-styles](https://github.com/InnerSourceCommons/isc-styles) - thank you @spier
+* Interesting new development (in July/August)
+ * pattern proposal [Feature Owner](https://github.com/InnerSourceCommons/InnerSourcePatterns/pull/573) by Manoj Gawande (@magawande) from Fidelty (part of FINOS?) - new contributor!
+ * proposal to add a [Code of Conduct template](https://github.com/InnerSourceCommons/InnerSourcePatterns/pull/556) to the **Standard Base Documentation** pattern - by Jose Roman Martin Gil (@rmarting) from Red Hat - new contributor?
+ * some folks got to together to translate the patterns to Brazilian Portuguese. Still [in progress](https://github.com/jrcosta/InnerSourcePatterns/tree/book-ptbr/translation/pt) but so cool!
+
+* Last [Trusted Committer][] added was [@yuhattor](https://github.com/yuhattor) (added 2022-07-21)
+* Trusted Committer candidates in the pipeline: No
+
+## Next Goals
+
+Same as previous Board report.
+
+[patterns book]: https://patterns.innersourcecommons.org/
+[InnerSourcePatterns]: https://github.com/InnerSourceCommons/InnerSourcePatterns/
+[Trusted Committer]: https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/TRUSTED-COMMITTERS.md
diff --git a/pattern-categorization/innersource-program-mind-map.html b/pattern-categorization/innersource-program-mind-map.html
index 8679b97f0..8555997b1 100644
--- a/pattern-categorization/innersource-program-mind-map.html
+++ b/pattern-categorization/innersource-program-mind-map.html
@@ -23,6 +23,6 @@
+ })(() => window.markmap,null,{"type":"heading","depth":1,"payload":{"lines":[0,1]},"content":"InnerSource Program","children":[{"type":"heading","depth":2,"payload":{"lines":[2,3]},"content":"Begin","children":[{"type":"heading","depth":3,"payload":{"lines":[4,5]},"content":"Program Setup","children":[{"type":"heading","depth":4,"payload":{"lines":[6,7]},"content":"Management hesitates to invest in InnerSource","children":[{"type":"heading","depth":5,"payload":{"lines":[8,9]},"content":"Start as an Experiment"}]},{"type":"heading","depth":4,"payload":{"lines":[10,11]},"content":"Slow community growth hinders InnerSource","children":[{"type":"heading","depth":5,"payload":{"lines":[12,13]},"content":"Dedicated Community Leader"}]},{"type":"heading","depth":4,"payload":{"lines":[14,15]},"content":"InnerSource principles are not intuitive for everybody","children":[{"type":"heading","depth":5,"payload":{"lines":[16,17]},"content":"Document your Guiding Principles"}]}]},{"type":"heading","depth":3,"payload":{"lines":[18,19]},"content":"Project Setup","children":[{"type":"heading","depth":4,"payload":{"lines":[20,21]},"content":"Hard to assess a project quickly","children":[{"type":"heading","depth":5,"payload":{"lines":[22,23]},"content":"Standard Base Documentation"}]},{"type":"heading","depth":4,"payload":{"lines":[24,25]},"content":"Ad-hoc communication hinders project growth","children":[{"type":"heading","depth":5,"payload":{"lines":[26,27]},"content":"Communication Tooling"}]},{"type":"heading","depth":4,"payload":{"lines":[28,29]},"content":"Intransparent roadmap and direction of the project","children":[{"type":"heading","depth":5,"payload":{"lines":[30,31]},"content":"Issue Tracker Use Cases"}]}]}]},{"type":"heading","depth":2,"payload":{"lines":[32,33]},"content":"Adopt","children":[{"type":"heading","depth":3,"payload":{"lines":[34,35]},"content":"Valuation Challenges","children":[{"type":"heading","depth":4,"payload":{"lines":[36,37]},"content":"How to measure a project's business value","children":[{"type":"heading","depth":5,"payload":{"lines":[38,39]},"content":"Cross-Team Project Valuation"}]},{"type":"heading","depth":4,"payload":{"lines":[40,41]},"content":"Can we rely on the project for an extended period?","children":[{"type":"heading","depth":5,"payload":{"lines":[42,43]},"content":"Standard Release Process"},{"type":"heading","depth":5,"payload":{"lines":[44,45]},"content":"Standard Base Documentation"}]}]},{"type":"heading","depth":3,"payload":{"lines":[46,47]},"content":"Cultural Challenges","children":[{"type":"heading","depth":4,"payload":{"lines":[48,49]},"content":"Unrecognized effort","children":[{"type":"heading","depth":5,"payload":{"lines":[50,51]},"content":"Praise Participants"},{"type":"heading","depth":5,"payload":{"lines":[52,53]},"content":"Trusted Committer"}]}]},{"type":"heading","depth":3,"payload":{"lines":[54,55]},"content":"Technical Challenges","children":[{"type":"heading","depth":4,"payload":{"lines":[56,57]},"content":"Not meeting everyone's needs","children":[{"type":"heading","depth":5,"payload":{"lines":[58,59]},"content":"Common Requirements"}]},{"type":"heading","depth":4,"payload":{"lines":[60,61]},"content":"Fear of shared support responsibility","children":[{"type":"heading","depth":5,"payload":{"lines":[62,63]},"content":"Service vs. Library"}]},{"type":"heading","depth":4,"payload":{"lines":[64,65]},"content":"Project is difficult to contribute to and use","children":[{"type":"heading","depth":5,"payload":{"lines":[66,67]},"content":"Core Team"}]}]},{"type":"heading","depth":3,"payload":{"lines":[68,69]},"content":"Organizational Challenges","children":[{"type":"heading","depth":4,"payload":{"lines":[70,71]},"content":"Discouragement of contributing resource","children":[{"type":"heading","depth":5,"payload":{"lines":[72,73]},"content":"Contracted Contributor"}]},{"type":"heading","depth":4,"payload":{"lines":[74,75]},"content":"Rejection of accepting contribution","children":[{"type":"heading","depth":5,"payload":{"lines":[76,77]},"content":"30 Day Warranty"}]},{"type":"heading","depth":4,"payload":{"lines":[78,79]},"content":"Radical change of management","children":[{"type":"heading","depth":5,"payload":{"lines":[80,81]},"content":"Review Committee"}]},{"type":"heading","depth":4,"payload":{"lines":[82,83]},"content":"Fear of shared support responsibility","children":[{"type":"heading","depth":5,"payload":{"lines":[84,85]},"content":"Service vs. Library"}]},{"type":"heading","depth":4,"payload":{"lines":[86,87]},"content":"Not enough maintainers to scale","children":[{"type":"heading","depth":5,"payload":{"lines":[88,89]},"content":"Trusted Committer"}]},{"type":"heading","depth":4,"payload":{"lines":[90,91]},"content":"Difficult cross-team coordination","children":[{"type":"heading","depth":5,"payload":{"lines":[92,93]},"content":"Transparent Cross-Team Decision Making using RFCs"}]},{"type":"heading","depth":4,"payload":{"lines":[94,95]},"content":"Project without an owner/maintainer","children":[{"type":"heading","depth":5,"payload":{"lines":[96,97]},"content":"Core Team"},{"type":"heading","depth":5,"payload":{"lines":[98,99]},"content":"Group Support"}]}]},{"type":"heading","depth":3,"payload":{"lines":[100,101]},"content":"Cross Legal Entities Challenges","children":[{"type":"heading","depth":4,"payload":{"lines":[102,103]},"content":"Concern on legal liabilities or cross-company accounting","children":[{"type":"heading","depth":5,"payload":{"lines":[104,105]},"content":"InnerSource License"}]}]}]},{"type":"heading","depth":2,"payload":{"lines":[106,107]},"content":"Grow","children":[{"type":"heading","depth":3,"payload":{"lines":[108,109]},"content":"Discovery Challenges","children":[{"type":"heading","depth":4,"payload":{"lines":[110,111]},"content":"Can't find matching projects","children":[{"type":"heading","depth":5,"payload":{"lines":[112,113]},"content":"Gig Marketplace"},{"type":"heading","depth":5,"payload":{"lines":[114,115]},"content":"InnerSource Portal"}]},{"type":"heading","depth":4,"payload":{"lines":[116,117]},"content":"Difficult to find active projects","children":[{"type":"heading","depth":5,"payload":{"lines":[118,119]},"content":"Repository Activity Score"}]}]}]},{"type":"heading","depth":2,"payload":{"lines":[120,121]},"content":"Scale","children":[{"type":"heading","depth":3,"payload":{"lines":[122,123]},"content":"Self Education/Improvement Challenges","children":[{"type":"heading","depth":4,"payload":{"lines":[124,125]},"content":"Not aware of InnerSource best practices","children":[{"type":"heading","depth":5,"payload":{"lines":[126,127]},"content":"Maturity Model"}]},{"type":"heading","depth":4,"payload":{"lines":[128,129]},"content":"Lack of open source knowledge","children":[{"type":"heading","depth":5,"payload":{"lines":[130,131]},"content":"Document your Guiding Principles"}]}]},{"type":"heading","depth":3,"payload":{"lines":[132,133]},"content":"Technical Challenges","children":[{"type":"heading","depth":4,"payload":{"lines":[134,135]},"content":"Increasing maintenance overhead","children":[{"type":"heading","depth":5,"payload":{"lines":[136,137]},"content":"Extensions for Sustainable Growth"}]}]}]}]},null)