Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
61 changes: 61 additions & 0 deletions docs/contribute/repos/doc-detective-resolver.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
sidebar_position: 6
---

# `doc-detective-resolver`

[`doc-detective-resolver`](https://github.com/doc-detective/doc-detective-resolver) is an NPM package that detects and resolves documentation into Doc Detective tests. It's installable via NPM (`npm i doc-detective-resolver`). This package provides the logic for parsing documentation files and converting them into executable test specifications.

This repo depends on [`doc-detective-common`](doc-detective-common) for JSON schema definitions, schema validation logic, and shared utilities.

## Development with Workspaces

The resolver supports npm workspaces for developing `doc-detective-common` alongside the resolver. This allows you to modify both packages simultaneously and test changes together without waiting for formal releases.

### Setting up Workspaces

The workspace setup happens automatically during `npm install`, but you can also set it up manually:

```bash
npm run workspace:install
```

This will:
- Clone the `doc-detective/common` repository into `workspaces/doc-detective-common`
- Install dependencies for the workspace package
- Set up the workspace configuration

### Working with Workspaces

Once set up, you can use standard npm workspace commands:

```bash
# Run tests across all workspaces
npm run workspace:test

# Build all workspace packages
npm run workspace:build

# Install a dependency in the common workspace
npm install <package> -w doc-detective-common

# Run commands in specific workspaces
npm run test -w doc-detective-common
npm run build -w doc-detective-common
```

### Environment Variables

- `NO_WORKSPACE_SETUP` - Skip workspace setup during postinstall
- `FORCE_WORKSPACE_SETUP` - Force workspace setup even in CI environments

### Benefits

The workspace setup provides several advantages for development:

- **Simultaneous Development**: Modify both resolver and common packages together
- **Immediate Testing**: Test changes across packages without publishing
- **Simplified Workflow**: Single repository setup for related development work
- **Automatic Synchronization**: Workspace packages stay in sync with latest changes

This is particularly useful when working on features that require changes to both the resolver logic and the shared schemas or utilities in doc-detective-common.
69 changes: 68 additions & 1 deletion styles/config/vocabularies/Docs/accept.txt
Original file line number Diff line number Diff line change
@@ -1,72 +1,139 @@
ADD
afterAll
ALT
Alphie
APIs
ARIA
args
batchMatches
beforeAny
Betaux
boolean
BOOL
breakpoint
callouts
checkHyperlink
checkLink
CLA
CLEAR
combinator
concurrentRunners
config
configId
configPath
contentPath
contextId
CTRL
dragAndDrop
draggable
defaultCommand
descriptionPath
detectSteps
Dev
Doc Detective
Docusaurus
dragAndDrop
draggable
elementText
END
ENTER
enum
exampleKey
exitCodes
FAIL
fileTypes
goTo
Hardcode
hardcoded
hardcoding
HELP
HOME
href
httpRequest
HTTP
ignoreEnd
ignoreStart
inlineStatements
inputDelay
jq
json
Kanban
keypresses
loadCookie
loadVariables
logLevel
matchText
maxVariation
mockResponse
moveTo
NULL
numpad
NPM
NPX
onwards
openApi
operationId
PAUSE
PASS
PNG
Prepended
prepended
prepends
querySelector
repo
repos
REQUEST
requestData
requestHeaders
requestParams
resolver
RESPONSE
responseData
responseHeaders
responseParams
runOn
runShell
runTests
sandboxed
saveCookie
saveDirectory
savePath
saveScreenshot
screenshotImage
session_token
setVariables
SHIFT
Shorthair
SPACE
specId
specPath
startRecording
statusCode
statusCodes
stderr
stdout
stepId
stopRecord
stopRecording
substring
TAB
testEnd
testid
testStart
timeframes
typeKeys
typeText
underserved
Unescaped
url
useExample
userId
UUID
viewport
VSCode
workingDirectory
walkthrough
webm
webserver
workingDirectory
workspaces
XPath