Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
167 commits
Select commit Hold shift + click to select a range
e5b9f37
Fix HTML head content built from 'Download examples' button (#41468)
julien-deramond May 19, 2025
7f946d4
Consolidate multiple 'none' values in `box-shadow` Sass mixin (#41469)
julien-deramond May 20, 2025
c85346d
Build(deps-dev): Bump the development-dependencies group with 6 updat…
dependabot[bot] May 20, 2025
eeb1209
Docs: Refine sanitizer documentation (#41434)
bardiharborow May 22, 2025
1c3b53b
Docs: ensure `stackblitz.js` loads conditionally as intended (#41482)
louismaximepiton May 23, 2025
a749136
Docs: enhance 'On this page' ToC accessibility (#41483)
louismaximepiton May 23, 2025
374c8a1
Docs: fix typo in Masonry example (#41486)
MaxLardenois May 23, 2025
d6ca5ba
Docs: fix local assets path handling for Windows compatibility (#41485)
louismaximepiton May 25, 2025
1e7a20a
Fix lint warnings in `site/src/libs/path.ts`
julien-deramond May 25, 2025
a61555b
Examples: remove unused `myChart` variable (#41494)
julien-deramond May 25, 2025
3663e3a
Docs: add aria label on section headings anchor links (#41487)
MaxLardenois May 25, 2025
81b8153
Docs: clarify "Via JavaScript" usage example for Accordion Collapse (…
louismaximepiton May 27, 2025
c8b471b
Build(deps-dev): Bump the development-dependencies group with 8 updat…
dependabot[bot] May 27, 2025
29b45d4
CI: switch to Node.js 22 (#41503)
julien-deramond May 27, 2025
6b3649d
Move ads to right sidebar to reduce reflow (#41506)
mdo May 29, 2025
fd879c0
Add VSCode Extensions & Settings Configs (#41498)
coliff May 29, 2025
195a806
Add section to Download page for IntelliSense extension (#41492)
mdo May 29, 2025
12bc56a
fix linter (#41507)
mdo May 29, 2025
39650db
Update `devDependencies`
julien-deramond May 30, 2025
6b53c44
Regenerate `package-lock.json`
julien-deramond May 30, 2025
fb5409b
Build(deps-dev): Bump @babel/core from 7.27.3 to 7.27.4
julien-deramond May 31, 2025
3c1e178
Build(deps-dev): Bump zod from 3.25.42 to 3.25.48
julien-deramond Jun 2, 2025
13aa16a
Fix: Popover with hover and click triggers closes on mouseleave (#41511)
amitrathiesh Jun 3, 2025
e6fdd27
Mentions CDN integrity and crossorigin attributes in Intro docs page …
mdo Jun 3, 2025
0b6c09a
Build(deps-dev): Bump zod from 3.25.48 to 3.25.49 (#41513)
dependabot[bot] Jun 4, 2025
0a9fa30
Build(deps-dev): Bump the development-dependencies group with 4 updat…
julien-deramond Jun 5, 2025
590226f
Build(deps-dev): Bump the development-dependencies group with 2 updates
julien-deramond Jun 6, 2025
1c00b1f
Build(deps-dev): Bump the development-dependencies group with 3 updat…
julien-deramond Jun 8, 2025
f04b980
Docs: enhance floating labels `placeholder` usage description (#41526)
julien-deramond Jun 9, 2025
03f27a2
Docs: add example of showing dynamic range value with output (#41516)
mdo Jun 9, 2025
37f33ff
Build(deps-dev): Bump the development-dependencies group with 2 updat…
julien-deramond Jun 9, 2025
0f63de9
Build(deps-dev): Bump zod from 3.25.56 to 3.25.57
julien-deramond Jun 10, 2025
e0032ae
Release v5.3.7 (#41509)
julien-deramond Jun 10, 2025
6f1783d
Build(deps-dev): Bump zod from 3.25.57 to 3.25.58
julien-deramond Jun 11, 2025
f63e549
Build(deps-dev): Bump the development-dependencies group with 3 updat…
julien-deramond Jun 12, 2025
b6f7ec7
Streamline release prep script (#41539)
mdo Jun 12, 2025
bd4aa6f
Build(deps-dev): Bump the development-dependencies group with 2 updat…
julien-deramond Jun 13, 2025
a70e06a
Build(deps-dev): Bump stylelint-config-twbs-bootstrap from 16.0.0 to …
julien-deramond Jun 14, 2025
d83f33a
Build(deps-dev): Bump @rollup/plugin-commonjs from 28.0.3 to 28.0.5
julien-deramond Jun 15, 2025
e6eb77a
Docs: restore local dev port to 9001 (#41545)
chalin Jun 16, 2025
6997db4
Build(deps-dev): Bump the development-dependencies group with 5 updat…
julien-deramond Jun 17, 2025
094fb64
Build(deps-dev): Bump the development-dependencies group with 4 updat…
julien-deramond Jun 19, 2025
b851a99
Docs: use `Example` shortcode instead of divs with only `.bd-example`…
julien-deramond Jun 19, 2025
777f4c0
Build(deps-dev): Bump eslint-plugin-import from 2.31.0 to 2.32.0
julien-deramond Jun 21, 2025
69e276e
Build(deps-dev): Bump the development-dependencies group with 3 updat…
julien-deramond Jun 23, 2025
56ee1e3
Build(deps-dev): Bump prettier from 3.6.0 to 3.6.1
julien-deramond Jun 25, 2025
0593c27
Build(deps-dev): Bump rollup from 4.44.0 to 4.44.1
julien-deramond Jun 26, 2025
f4296c7
Build(deps-dev): Bump @babel/core from 7.27.4 to 7.27.7
julien-deramond Jun 26, 2025
8c975a4
Build(deps-dev): Bump prettier from 3.6.1 to 3.6.2
julien-deramond Jun 27, 2025
aecf990
Build(deps-dev): Bump astro from 5.10.1 to 5.10.2
julien-deramond Jul 1, 2025
9fce97c
Fix missing space between classes in Navbars example
julien-deramond Jul 1, 2025
7d12ff7
Fix typo in `JsDocs` and `ScssDocs` shortcodes comments
julien-deramond Jul 1, 2025
879d1d1
Fix several typos in comments within TypeScript files in `site/src/libs`
julien-deramond Jul 1, 2025
c5074c7
Fix typo in generated `site/src/types/auto-import.d.ts`
julien-deramond Jul 1, 2025
9566444
Docs: Sass automatic recompilation in dev mode with Astro (#41574)
MaxLardenois Jul 2, 2025
64b340c
Build(deps-dev): Bump the development-dependencies group with 3 updates
julien-deramond Jul 2, 2025
b02d5ed
Fix `color-contrast()` function for WCAG 2.1 compliance (#41585)
julien-deramond Jul 2, 2025
f96aa4c
Build(deps-dev): Bump zod from 3.25.67 to 3.25.69
julien-deramond Jul 2, 2025
b9e39c6
Build(deps-dev): Bump zod from 3.25.69 to 3.25.71
julien-deramond Jul 3, 2025
99cd78e
Build(deps-dev): Bump the development-dependencies group with 2 updates
julien-deramond Jul 3, 2025
3bee7c1
Build(deps-dev): Bump zod from 3.25.71 to 3.25.72
julien-deramond Jul 4, 2025
1ead2c9
Build(deps-dev): Bump the development-dependencies group with 2 updates
julien-deramond Jul 5, 2025
7c23d46
Build(deps-dev): Bump zod from 3.25.74 to 3.25.75
julien-deramond Jul 7, 2025
c4cb9ce
Build(deps-dev): Bump zod from 3.25.75 to 3.25.76
julien-deramond Jul 8, 2025
b934bb4
Build(deps-dev): Bump zod from 3.25.76 to 4.0.0
julien-deramond Jul 9, 2025
fc44fd8
Build(deps-dev): Bump zod from 4.0.0 to 4.0.2
julien-deramond Jul 10, 2025
6ee8cfd
Build(deps-dev): Bump zod from 4.0.2 to 4.0.5
julien-deramond Jul 11, 2025
876bf4a
OSSF Scorecard (#41571)
mdo Jul 12, 2025
1e4df1c
Build(deps-dev): Bump rollup from 4.44.2 to 4.45.0
julien-deramond Jul 12, 2025
1c0f359
Workflows: Bump ossf/scorecard-action to 2.4.2
julien-deramond Jul 12, 2025
0c36327
Build(deps-dev): Bump astro from 5.11.0 to 5.11.1
julien-deramond Jul 14, 2025
307c625
Build(deps): Bump actions/upload-artifact from 4.6.1 to 4.6.2 (#41594)
dependabot[bot] Jul 15, 2025
3ec3e20
Build(deps-dev): Bump rollup from 4.45.0 to 4.45.1
julien-deramond Jul 15, 2025
117a248
Workflows: Use SHA-1 precise references for third-party actions (#41595)
julien-deramond Jul 16, 2025
86ffedb
Build(deps-dev): Bump the development-dependencies group with 4 updat…
julien-deramond Jul 18, 2025
c985f82
Build(deps-dev): Bump the development-dependencies group with 2 updat…
julien-deramond Jul 22, 2025
4543992
Build(deps): Bump github/codeql-action from 3.29.2 to 3.29.3 (#41611)
dependabot[bot] Jul 28, 2025
2254aee
Build(deps-dev): Bump zod from 4.0.5 to 4.0.10
julien-deramond Jul 28, 2025
b711671
Build(deps): Bump streetsidesoftware/cspell-action from 7.1.1 to 7.1.…
dependabot[bot] Jul 28, 2025
e519be9
Build(deps-dev): Bump the development-dependencies group with 4 updat…
julien-deramond Jul 28, 2025
67a58f8
Build(deps): Bump streetsidesoftware/cspell-action from 7.1.2 to 7.2.…
dependabot[bot] Jul 29, 2025
caaa915
Build(deps): Bump actions-cool/issues-helper from 3.6.0 to 3.6.2 (#41…
dependabot[bot] Jul 29, 2025
e8fdc4f
Build(deps): Bump github/codeql-action from 3.29.3 to 3.29.4 (#41624)
dependabot[bot] Jul 29, 2025
f0dc676
Build(deps-dev): Bump the development-dependencies group across 1 dir…
dependabot[bot] Jul 29, 2025
c082695
Build(deps-dev): Bump rollup from 4.46.1 to 4.46.2
julien-deramond Jul 29, 2025
e392fc5
Build(deps-dev): Bump the development-dependencies group with 2 updates
julien-deramond Jul 30, 2025
9203712
Build(deps-dev): Bump the development-dependencies group with 3 updates
julien-deramond Jul 31, 2025
b850fcb
Build(deps-dev): Bump the development-dependencies group with 3 updates
julien-deramond Aug 2, 2025
1eccc81
Docs: unminify package example HTML files (#41637)
julien-deramond Aug 5, 2025
89fbf03
Build(deps): Bump github/codeql-action from 3.29.4 to 3.29.5 (#41640)
dependabot[bot] Aug 5, 2025
68afc56
Build(deps-dev): Bump zod from 4.0.14 to 4.0.15
julien-deramond Aug 6, 2025
c96c0ec
Build(deps): Bump tmp from 0.2.3 to 0.2.4 (#41649)
dependabot[bot] Aug 6, 2025
3b9a416
Build(deps-dev): Bump stylelint from 16.23.0 to 16.23.1
julien-deramond Aug 7, 2025
e52e3b1
Build(deps-dev): Bump astro from 5.12.8 to 5.12.9
julien-deramond Aug 8, 2025
cb4fa22
Build(deps-dev): Bump zod from 4.0.15 to 4.0.16
julien-deramond Aug 9, 2025
2acf59d
Build(deps-dev): Bump zod from 4.0.16 to 4.0.17
julien-deramond Aug 10, 2025
6d3345b
Docs: fix missing "Copy to clipboard" tooltips when `<Example>` was u…
louismaximepiton Aug 10, 2025
934beb1
Build(deps): Bump github/codeql-action from 3.29.7 to 3.29.8 (#41657)
dependabot[bot] Aug 15, 2025
ae069ff
Build(deps): Bump actions/checkout from 4.2.2 to 5.0.0 (#41655)
dependabot[bot] Aug 15, 2025
956ec2d
Build(deps-dev): bump dependencies
julien-deramond Aug 15, 2025
4b8a2c9
Build(deps-dev): bump dependencies
julien-deramond Aug 16, 2025
099b02b
Build(deps-dev): Bump rollup from 4.46.2 to 4.46.3
julien-deramond Aug 19, 2025
26c86ba
Build(deps): Bump github/codeql-action from 3.29.8 to 3.29.10 (#41664)
dependabot[bot] Aug 20, 2025
47c75b8
Set cursor pointer on input search cancel button (#41639)
mdo Aug 20, 2025
f50f38b
CSS: Fix spinner deformation in flex boxes when content is multiline …
julien-deramond Aug 22, 2025
4bd8b6c
Migrate MyGet script to GH actions (#41583)
supergibbs Aug 22, 2025
ac5f51c
Revert "Attempt to return focus explicitly to dropdown trigger (#4136…
mdo Aug 25, 2025
320f713
docs: Minor range example code optimization (#41665)
coliff Aug 25, 2025
122bff5
Remove Themes from docs (#41671)
mdo Aug 26, 2025
25aa8cc
Release v5.3.8 (#41669)
mdo Aug 26, 2025
8194a15
Add permissions for NuGet package publishing
XhmikosR Aug 27, 2025
c783a49
Build(deps): Bump actions/checkout from 4.2.2 to 5.0.0 (#41680)
dependabot[bot] Aug 27, 2025
2b44684
Build(deps): Bump github/codeql-action from 3.29.10 to 3.29.11 (#41678)
dependabot[bot] Aug 27, 2025
97330b7
dependabot: group actions updates
XhmikosR Aug 27, 2025
a360960
Build(deps): Bump calibreapp/image-actions from 1.1.0 to 1.3.0 (#41679)
dependabot[bot] Aug 27, 2025
5d77b7f
Build(deps): Bump the github-actions group with 2 updates (#41696)
dependabot[bot] Sep 1, 2025
ddb974a
Build(deps-dev): Bump dependencies (#41717)
julien-deramond Sep 2, 2025
2eff466
Build(deps): Bump the github-actions group with 2 updates (#41721)
dependabot[bot] Sep 3, 2025
22b1582
Build(deps-dev): Bump @babel/core from 7.28.3 to 7.28.4
julien-deramond Sep 6, 2025
a715174
Docs: Add `.table` class to color tables example (#41691)
stefan-korn Sep 6, 2025
07b3816
Build(deps-dev): Bump dependencies
julien-deramond Sep 7, 2025
cb79d47
Build(deps-dev): Bump dependencies
julien-deramond Sep 9, 2025
6f2f7dd
Build(deps): Bump the github-actions group with 2 updates (#41730)
dependabot[bot] Sep 9, 2025
ec7a45b
Build(deps-dev): Bump zod from 4.1.5 to 4.1.6
julien-deramond Sep 11, 2025
a484f5a
Build(deps-dev): Bump dependencies
julien-deramond Sep 13, 2025
8d9e3d1
Build(deps-dev): Bump rollup from 4.50.1 to 4.50.2
julien-deramond Sep 15, 2025
af73c87
Build(deps): Bump the github-actions group with 2 updates (#41744)
dependabot[bot] Sep 17, 2025
0aa4f69
Build(deps-dev): Bump dependencies
julien-deramond Sep 17, 2025
3f95d68
Build(deps-dev): Bump dependencies
julien-deramond Sep 20, 2025
6772c8c
Build(deps-dev): Bump dependencies
julien-deramond Sep 22, 2025
21d19a9
Build(deps-dev): Bump rollup from 4.52.0 to 4.52.2
julien-deramond Sep 23, 2025
0458e76
Build(deps-dev): Bump astro from 5.13.10 to 5.13.11
julien-deramond Sep 24, 2025
380a1d7
chore(deps-dev): bump dependencies
julien-deramond Sep 27, 2025
8cd02aa
Build(deps-dev): Bump dependencies (#41780)
julien-deramond Sep 29, 2025
4189b30
Build(deps): Bump github/codeql-action in the github-actions group (#…
dependabot[bot] Sep 30, 2025
ddf5853
Build(deps-dev): Bump dependencies
julien-deramond Oct 4, 2025
8afa30c
Build(deps): Bump the github-actions group with 2 updates (#41798)
dependabot[bot] Oct 7, 2025
88a78a6
Build(deps-dev): Bump dependencies
julien-deramond Oct 7, 2025
19a4bab
Build(deps-dev): Bump dependencies
julien-deramond Oct 10, 2025
8f3d058
Build(deps-dev): Bump astro from 5.14.3 to 5.14.4
julien-deramond Oct 12, 2025
ecee5a7
Build(deps-dev): Bump dependencies
julien-deramond Oct 26, 2025
cfe6633
Overrides volar-service-emmet version to fix linting issues
julien-deramond Oct 26, 2025
a79f491
Build(deps): Bump the github-actions group across 1 directory with 5 …
dependabot[bot] Oct 26, 2025
26badb2
Build(deps-dev): Bump dependencies
julien-deramond Oct 28, 2025
815af31
Build(deps-dev): Bump @rollup/plugin-replace from 6.0.2 to 6.0.3
julien-deramond Oct 29, 2025
12b3f76
Build(deps-dev): Bump dependencies
julien-deramond Oct 31, 2025
6ad25a7
Build(deps-dev): Bump vnu-jar from 24.10.17 to 25.11.1
julien-deramond Nov 1, 2025
8bbe401
Build(deps-dev): Bump vnu-jar from 25.11.1 to 25.11.2
julien-deramond Nov 2, 2025
fe76cb3
Build(deps): Bump the github-actions group with 3 updates (#41848)
dependabot[bot] Nov 5, 2025
9214b59
Build(deps-dev): Bump vnu-jar from 25.11.2 to 25.11.4
julien-deramond Nov 5, 2025
90baf94
Build(deps-dev): Bump dependencies
julien-deramond Nov 7, 2025
14672e5
Build(deps-dev): Bump dependencies
julien-deramond Nov 8, 2025
b7122f1
Docs: update `<meta>` viewport MDN link in Getting Started > Introduc…
Shakil-Shahadat Nov 8, 2025
c38c6cb
Build(deps-dev): Bump rollup from 4.53.1 to 4.53.2
julien-deramond Nov 10, 2025
1ce3981
Build(deps-dev): Bump dependencies
julien-deramond Nov 11, 2025
25b6ac9
Build(deps): Bump the github-actions group with 2 updates (#41865)
dependabot[bot] Nov 11, 2025
b4a1d28
Build(deps-dev): Bump nodemon from 3.1.10 to 3.1.11
julien-deramond Nov 12, 2025
35858ff
Build(deps-dev): Bump dependencies
julien-deramond Nov 14, 2025
6f4d51f
Build(deps-dev): Bump dependencies
julien-deramond Nov 15, 2025
c9e83a1
Build(deps-dev): Bump vnu-jar from 25.11.8 to 25.11.17
julien-deramond Nov 17, 2025
05fc0c7
Build(deps): Bump the github-actions group with 3 updates (#41878)
dependabot[bot] Nov 18, 2025
61b0bab
Build(deps-dev): Bump dependencies
julien-deramond Nov 18, 2025
c577685
Build(deps): Bump dependencies
julien-deramond Nov 22, 2025
481bf7e
Build(deps): Bump the github-actions group with 2 updates (#41886)
dependabot[bot] Nov 25, 2025
f29a71b
Build(deps-dev): Bump dependencies
julien-deramond Nov 25, 2025
e9cd061
Add incident response plan documentation (#41905)
mdo Dec 3, 2025
e170268
Build(deps): Bump the github-actions group across 1 directory with 4 …
dependabot[bot] Dec 9, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,6 @@ restrictions:
Use [GitHub's "reactions" feature](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/)
instead. We reserve the right to delete comments which violate this rule.

- Please **do not** open issues regarding the official themes offered on <https://themes.getbootstrap.com/>.
Instead, please email any questions or feedback regarding those themes to `themes AT getbootstrap DOT com`.


## Issues assignment

Expand Down
162 changes: 162 additions & 0 deletions .github/INCIDENT_RESPONSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
# Incident response plan

This document describes how the Bootstrap maintainers respond to and manage security or operational incidents affecting the project, its website, or its distributed releases. This plan is public to promote transparency and community trust. Operational details (e.g., private contacts, credentials, or internal coordination tools) are maintained separately in the maintainers’ private documentation.

---

## 1. Purpose & Scope

This plan defines how Bootstrap maintainers will:

- Identify, triage, and manage security or integrity incidents affecting project code, releases, or infrastructure.
- Communicate with the community and downstream consumers during and after an incident.
- Record lessons learned and update processes to reduce future risk.

It applies to:

- The Bootstrap source code, documentation, and build pipelines.
- Release artifacts (npm, CDN, GitHub releases).
- The main website ([https://getbootstrap.com](https://getbootstrap.com)).
- Any official Bootstrap GitHub organization infrastructure.

It does **not** cover unrelated third-party forks or integrations.

---

## 2. Definitions

- **Incident**: Any event that could compromise the confidentiality, integrity, or availability of Bootstrap code, releases, or users. Examples include:
- A discovered security vulnerability.
- A compromised GitHub account or CI/CD token.
- A malicious dependency or injected code in a release.
- Website defacement or unauthorized modification of documentation.
- Leaked secrets related to the project infrastructure.

- **Incident Commander (IC)**: The maintainer responsible for coordinating the overall response.

---

## 3. Roles & Responsibilities

| Role | Responsibilities |
|------|-------------------|
| **Incident Commander (IC)** | Coordinate the response, assign tasks, ensure timely communication. |
| **Security Maintainers** | Triage reported vulnerabilities, assess impact, create fixes, handle embargoes. |
| **Infrastructure Lead** | Manage CI/CD, website, and release infrastructure. |
| **Communications Lead** | Manage public announcements, blog posts, and social updates. |
| **Contributors & Community** | Promptly report suspected security issues and follow responsible disclosure guidelines. |

In practice, Bootstrap’s core team fulfills these roles collectively, assigning an IC on a per-incident basis.

---

## 4. Incident workflow

### 4.1 Detection & Reporting

- All security issues should be **privately reported** via the contact method in [`SECURITY.md`](../SECURITY.md) or through GitHub’s Security Advisory mechanism.
- Maintainers also monitor:
- Automated dependency scanners (e.g., Dependabot, npm audit).
- GitHub notifications and vulnerability alerts.
- Community channels for suspicious activity.

### 4.2 Initial triage

Upon receiving a report:

1. A maintainer acknowledges receipt within 3 business days (or sooner, when possible).
Bootstrap is maintained by a small volunteer team; response times may vary slightly outside normal working hours.
2. The IC assesses severity and impact:
- **Critical:** immediate compromise of release infrastructure or code integrity.
- **High:** exploitable vulnerability in distributed assets.
- **Medium:** minor vulnerability or low-likelihood attack vector.
- **Low:** informational, no direct risk.
3. If confirmed as an incident, the IC opens a private coordination channel for maintainers and begins containment.

### 4.3 Containment & Eradication

- Revoke or rotate any affected credentials.
- Disable compromised infrastructure or build pipelines if necessary.
- Patch affected branches or dependencies.
- Verify integrity of artifacts and releases.

### 4.4 Communication

- Keep the reporting party informed (when applicable).
- For major incidents, the Communications Lead drafts a public advisory describing:
- What happened
- What was impacted
- How users can verify or mitigate
- What actions were taken
- Communications occur after containment to avoid amplifying risk.

Public disclosures are posted via:

- GitHub Security Advisory if appropriate
- [blog.getbootstrap.com/](https://blog.getbootstrap.com/)
- [Bootstrap GitHub discussions](https://github.com/orgs/twbs/discussions)
- [@getbootstrap](https://x.com/getbootstrap) on X (formerly Twitter) for critical security notices.

### 4.5 Recovery

- Validate all systems and releases are secure.
- Resume normal operations.
- Tag patched releases and notify affected users.

### 4.6 Post-incident review

Within two weeks after resolution:

- Conduct an internal debrief.
- Record:
- Root cause
- What worked / what didn’t
- Remediation steps
- Documentation or automation updates needed
- Summarize lessons learned in the private maintainers’ wiki (with optional public summary if appropriate).

---

## 5. Severity levels & Response targets

| Severity | Example | Target response (volunteer team) |
|-----------|----------|----------------------------------|
| **Critical** | Compromised release, stolen signing keys | Acknowledge ≤ 24h (best effort), containment ≤ 48h, fix ideally ≤ 14d |
| **High** | Vulnerability enabling arbitrary code execution | Acknowledge ≤ 3 business days, fix ideally ≤ 14–21d |
| **Medium** | XSS or content injection on docs site | Acknowledge ≤ 5 business days, fix in next release cycle |
| **Low** | Minor issue with limited risk | Acknowledge ≤ 7 business days, fix as scheduled |

**Note:** Timelines represent good-faith targets for a small volunteer core team, not hard SLAs. The maintainers will always prioritize public safety and transparency, even if timing varies.

---

## 6. Public disclosure principles

Bootstrap follows a responsible disclosure approach:

- Work privately with reporters and affected parties before publishing details.
- Never name reporters without consent.
- Coordinate embargo periods with downstream consumers when needed.
- Publish advisories only after patches or mitigations are available.

---

## 7. Communication Channels

| Purpose | Channel |
|----------|----------|
| Private reporting | Email address in [`SECURITY.md`](./SECURITY.md) or GitHub advisory form |
| General updates | [blog.getbootstrap.com/](https://blog.getbootstrap.com/) blog |
| Security advisories | GitHub Security Advisory dashboard |
| Social alerts | [@getbootstrap](https://x.com/getbootstrap) |
| GitHub discussion alerts | [github.com/orgs/twbs/discussions](https://github.com/orgs/twbs/discussions) |

---

## 8. Plan Maintenance

This plan is reviewed at least annually or after any major incident. Changes are approved by the Core Team and recorded in Git history.

---

_The Bootstrap maintainers are committed to transparency, user trust, and continuous improvement in our security and response practices._
4 changes: 4 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@ updates:
day: tuesday
time: "12:00"
timezone: Europe/Athens
groups:
github-actions:
patterns:
- "*"
- package-ecosystem: npm
directory: "/"
labels:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/browserstack.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

env:
FORCE_COLOR: 2
NODE: 20
NODE: 22

permissions:
contents: read
Expand All @@ -22,12 +22,12 @@ jobs:

steps:
- name: Clone repository
uses: actions/checkout@v4
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Set up Node.js
uses: actions/setup-node@v4
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
with:
node-version: "${{ env.NODE }}"
cache: npm
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/bundlewatch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

env:
FORCE_COLOR: 2
NODE: 20
NODE: 22

permissions:
contents: read
Expand All @@ -20,12 +20,12 @@ jobs:

steps:
- name: Clone repository
uses: actions/checkout@v4
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Set up Node.js
uses: actions/setup-node@v4
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
with:
node-version: "${{ env.NODE }}"
cache: npm
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/calibreapp-image-actions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ jobs:
pull-requests: write
steps:
- name: Clone repository
uses: actions/checkout@v4
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Compress Images
uses: calibreapp/image-actions@1.1.0
uses: calibreapp/image-actions@f32575787d333b0579f0b7d506ff03be63a669d1 # v1.4.1
with:
githubToken: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
8 changes: 4 additions & 4 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,21 +24,21 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Initialize CodeQL
uses: github/codeql-action/init@v3
uses: github/codeql-action/init@cf1bb45a277cb3c205638b2cd5c984db1c46a412 # v4.31.7
with:
config-file: ./.github/codeql/codeql-config.yml
languages: "javascript"
queries: +security-and-quality

- name: Autobuild
uses: github/codeql-action/autobuild@v3
uses: github/codeql-action/autobuild@cf1bb45a277cb3c205638b2cd5c984db1c46a412 # v4.31.7

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
uses: github/codeql-action/analyze@cf1bb45a277cb3c205638b2cd5c984db1c46a412 # v4.31.7
with:
category: "/language:javascript"
4 changes: 2 additions & 2 deletions .github/workflows/cspell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,12 @@ jobs:

steps:
- name: Clone repository
uses: actions/checkout@v4
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Run cspell
uses: streetsidesoftware/cspell-action@v7
uses: streetsidesoftware/cspell-action@3294df585d3d639e30f3bc019cb11940b9866e95 # v8.0.0
with:
config: ".cspell.json"
files: "**/*.{md,mdx}"
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/css.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

env:
FORCE_COLOR: 2
NODE: 20
NODE: 22

permissions:
contents: read
Expand All @@ -20,12 +20,12 @@ jobs:

steps:
- name: Clone repository
uses: actions/checkout@v4
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Set up Node.js
uses: actions/setup-node@v4
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
with:
node-version: "${{ env.NODE }}"
cache: npm
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

env:
FORCE_COLOR: 2
NODE: 20
NODE: 22

permissions:
contents: read
Expand All @@ -20,12 +20,12 @@ jobs:

steps:
- name: Clone repository
uses: actions/checkout@v4
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Set up Node.js
uses: actions/setup-node@v4
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
with:
node-version: "${{ env.NODE }}"
cache: npm
Expand All @@ -42,9 +42,9 @@ jobs:
run: npm run docs-vnu

- name: Run linkinator
uses: JustinBeckwith/linkinator-action@v1
uses: JustinBeckwith/linkinator-action@af984b9f30f63e796ae2ea5be5e07cb587f1bbd9 # v2.3
with:
paths: _site
recurse: true
verbosity: error
skip: "^(?!http://localhost)"
skip: "^http://localhost"
2 changes: 1 addition & 1 deletion .github/workflows/issue-close-require.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
if: github.repository == 'twbs/bootstrap'
steps:
- name: awaiting reply
uses: actions-cool/issues-helper@v3
uses: actions-cool/issues-helper@3809910bc12872edc9b8132f122069ac16cd16ee # v3.7.3
with:
actions: "close-issues"
labels: "awaiting-reply"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/issue-labeled.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
steps:
- name: awaiting reply
if: github.event.label.name == 'needs-example'
uses: actions-cool/issues-helper@v3
uses: actions-cool/issues-helper@3809910bc12872edc9b8132f122069ac16cd16ee # v3.7.3
with:
actions: "create-comment"
token: ${{ secrets.GITHUB_TOKEN }}
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/js.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

env:
FORCE_COLOR: 2
NODE: 20
NODE: 22

permissions:
contents: read
Expand All @@ -25,12 +25,12 @@ jobs:

steps:
- name: Clone repository
uses: actions/checkout@v4
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Set up Node.js
uses: actions/setup-node@v4
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
with:
node-version: ${{ env.NODE }}
cache: npm
Expand All @@ -45,7 +45,7 @@ jobs:
run: npm run js-test

- name: Run Coveralls
uses: coverallsapp/github-action@v2
uses: coverallsapp/github-action@5cbfd81b66ca5d10c19b062c04de0199c215fb6e # v2.3.7
if: ${{ !github.event.repository.fork }}
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
Expand Down
Loading