Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
bdcbb5e
chore(docs): configure multi-instance for schema versioning
kji-mitre Oct 1, 2025
1435c62
chore(docs): rename schema docusaurus instance to schemas
kji-mitre Oct 2, 2025
f80b2cf
chore(docs): move schema reference from docs to schemas docusaurus in…
kji-mitre Oct 2, 2025
1be494c
chore(docs): move api reference from docs to api docusaurus instance
kji-mitre Oct 2, 2025
bd2c063
chore(docs): refactor docusaurus pages
kji-mitre Oct 2, 2025
e1c8700
chore(docs): correct broken docusaurus links
kji-mitre Oct 6, 2025
f02a330
chore(docs): fix broken compatibility links
kji-mitre Oct 6, 2025
385c136
chore(docs): fix broken stix-bundle link on schemas page
kji-mitre Oct 6, 2025
249dc1c
chore(docs): fix broken links in tutorials
kji-mitre Oct 6, 2025
9e42979
chore(docs): rename api doccard header
kji-mitre Oct 6, 2025
a8a5ed7
chore(docs): split docusaurus homepage reference doccard
kji-mitre Oct 6, 2025
08f315c
chore(docs): pretend current docs are a cut release
kji-mitre Oct 6, 2025
b51cb1a
chore(docs): only display doc version selector for currently selected…
kji-mitre Oct 6, 2025
7527ab9
chore(docs): cut versions of api and schemas docs
kji-mitre Oct 6, 2025
be2e217
chore(docs): update docusaurus readme
kji-mitre Oct 7, 2025
e355a79
chore(docs): remove commented code
kji-mitre Oct 7, 2025
f604ddf
chore(docs): eliminate category structure in schemas sidebar
kji-mitre Oct 7, 2025
cebd709
docs: update version of docusaurus
jondricek Oct 10, 2025
dc7e873
docs: remove broken link
jondricek Oct 10, 2025
dbb7f0d
docs: remove deprecated docusaurus config item
jondricek Oct 10, 2025
a5accb2
docs: remove generated docs
jondricek Oct 10, 2025
ef606e4
docs: update docusaurus config
jondricek Oct 10, 2025
56b91cf
docs: remove redundant Overview
jondricek Oct 10, 2025
351a949
docs: rename navbar item
jondricek Oct 10, 2025
4e876e5
docs: update documentation homepage
jondricek Oct 10, 2025
2407f7b
docs: update descriptions for technique and matrix fields
jondricek Oct 13, 2025
25356b2
chore: update license
jondricek Oct 13, 2025
8e2db53
docs: refactored SPEC.md into multiple pages
jondricek Oct 13, 2025
2b9cae4
docs: add architecture component
jondricek Oct 14, 2025
b5f35a7
docs: update stix architecture diagram positioning
jondricek Oct 14, 2025
a5065df
docs: don't generate stix bundle schema docs
jondricek Oct 16, 2025
cfdc980
docs: remove unwanted content from API section
jondricek Oct 16, 2025
aae85fa
docs: update version of zod2md
jondricek Oct 16, 2025
961f996
docs: add new detections stix page
jondricek Oct 16, 2025
bb94a28
docs: update 3.3.0 schema changelog with another deprecated field
jondricek Oct 16, 2025
d96a4b5
docs: move descriptions from SPEC.md to schema files
jondricek Oct 16, 2025
144ef21
Merge branch 'main' into doc-cleanup
seansica Oct 17, 2025
85c9634
style: apply formatting
seansica Oct 17, 2025
99aeecd
ci: stop tracking package-lock and use npm install within github actions
seansica Oct 17, 2025
f3f87da
build: replace ts-node with tsx
seansica Oct 17, 2025
09dd20c
chore: update spacing
jondricek Oct 20, 2025
abac73e
fix: add missing dependencies to generate markdown docs
jondricek Oct 20, 2025
32731ba
docs: update docusaurus version
jondricek Oct 20, 2025
3f751d7
docs: add npm script to generate schema markdown files
jondricek Oct 20, 2025
7003818
ci: use updated npm script to generate schema markdown files
jondricek Oct 20, 2025
3c9e8fd
docs: remove old gendocs npm script
jondricek Oct 20, 2025
3b8f901
docs: add missing dev dependency
jondricek Oct 20, 2025
f38351b
docs: generate special markdown page for Software
jondricek Oct 20, 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
12 changes: 6 additions & 6 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
node-version: '22.x'

- name: Install dependencies
run: npm ci
run: npm install

- name: Determine commit range
id: commit_range
Expand Down Expand Up @@ -70,7 +70,7 @@ jobs:
node-version: '22.x'

- name: Install
run: npm ci --include=dev
run: npm install --include=dev

- name: Build
run: npm run build
Expand Down Expand Up @@ -156,14 +156,14 @@ jobs:
run: npm install
working-directory: ./

- name: Generate schema documentation
run: npm run docs:schemamarkdown
working-directory: ./

- name: Install docusaurus dependencies
run: npm install
working-directory: ./docusaurus

- name: Generate schema documentation
run: npm run gendocs
working-directory: ./docusaurus

- name: Build Docusaurus site
run: npm run build
working-directory: ./docusaurus
Expand Down
4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# auto-generated schema documentation
docusaurus/docs/reference/schemas/
# Project maintenance is performed using a private registry, therefore package-lock.json will contain erroneous artifacts that should not be committed
package-lock.json

# TypeScript artifacts
*.d.ts
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]
Copyright [2025] [The MITRE Corporation]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
487 changes: 0 additions & 487 deletions docs/SPEC.md

Large diffs are not rendered by default.

9 changes: 9 additions & 0 deletions docusaurus/.gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
# Project maintenance is performed using a private registry, therefore package-lock.json will contain erroneous artifacts that should not be committed
package-lock.json

# auto-generated schema documentation
schemas/sdo/
schemas/sro/
schemas/smo/
schemas/attack-concept-table.mdx

# Dependencies
/node_modules

Expand Down
37 changes: 34 additions & 3 deletions docusaurus/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ The automation is handled by the `generate-docs.sh` script, which processes each
in the schema directory and uses the `zod2md` library to convert to Markdown. The output Markdown
files are stored in the `docs/` directory.

The Docusaurus site is configured and structured for ["Docs Multi-Instance"](https://docusaurus.io/docs/docs-multi-instance) to host the global docs content, schemas reference, and API reference as distinct sets of documentation (each set is its own plugin). The Schemas reference and API reference are each [versioned](https://docusaurus.io/docs/versioning) independently, while the main docs content is un-versioned. Be sure to adhere to Docusaurus's [recommended practices](https://docusaurus.io/docs/versioning#recommended-practices) for versioning.

## Setup

### Requirements
Expand Down Expand Up @@ -41,16 +43,45 @@ $ npm run start

1. Build the static files

```bash
$ npm run build
```

2. Serve contents

```bash
$ npm run serve
```

## Taging a new version

The following command will create a new version of the specified set of documentation (e.g. `schemas` or `api`) from its respective "current version" files.

```bash
$ npm run build
$ npm run docusaurus docs:version:<pluginId> <new_version>
```

2. Serve contents
For example, to tag a new version of the `schemas` or `api` docs:

```bash
$ npm run serve
# Tag schemas doc version 4.4.1
$ npm run docusaurus docs:version:api 4.4.1

# Tag schemas doc version 3.3.0
$ npm run docusaurus docs:version:schemas: 3.3.0
```

### Versioned Docs Multi-Instance File Structure

The default plugin instance, `docs`, contains our global docs content and is unversioned uses these paths:

The `schemas` and `api` plugin instances use these paths:
- `docusaurus/[pluginId]/` - Current Version docs folder
- `docusaurus/sidebars[pluginId].ts` - Current Version sidebar
- `docusaurus/[pluginId]_versions.json` - Lists other versions
- `docusaurus/[pluginId]_versioned_docs/` - Contains other versions docs folders
- `docusaurus/[pluginId]_versioned_sidebars/` - Contains other versions sidebars

## Troubleshooting

To clear the site's generated assets, caches, and build artifacts:
Expand Down
12 changes: 12 additions & 0 deletions docusaurus/api/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import WorkInProgressNotice from '@site/src/components/WorkInProgressNotice';

# API Overview

<WorkInProgressNotice />

**Complete documentation for all ATT&CK Data Model classes and functions**

The ATT&CK Data Model provides a comprehensive TypeScript API for working with MITRE ATT&CK data.
This reference section documents all public classes, methods, and functions available in the library.

---
Loading
Loading