Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>ReqCraftNew to Visual Studio Code? Get it now.
ReqCraft

ReqCraft

moonrailgun

|
2 installs
| (0) | Free
Syntax highlighting and code completion for .rqc files
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

ReqCraft VSCode Extension

Syntax highlighting and code completion for .rqc files.

Features

  • Syntax Highlighting: Full syntax highlighting for ReqCraft DSL
  • Code Completion: Context-aware completions for keywords, types, and annotations
  • Snippets: Quick templates for common patterns
  • Hover Information: Descriptions for keywords and annotations

Supported Syntax

Keywords

  • import - Import other files
  • config - Configuration block
  • variable - Global variable definition (type optional, defaults to String)
  • header - Global header definition
  • api - API endpoint definition
  • category - Group APIs together
  • get, post, put, delete, patch - HTTP methods
  • request, response - Request/response schemas

Types

  • String - String type
  • Number - Number type
  • Boolean - Boolean type
  • Any - Any type

Annotations

  • @mock("value") - Mock value for testing
  • @example("value") - Example value
  • @params - Mark as URL query parameter
  • @default("value") - Default value for headers

Installation

From VSIX

  1. Build the extension:

    cd extensions/reqcraft-vscode
    npm install
    npm run compile
    npx vsce package
    
  2. Install in VSCode:

    • Open VSCode
    • Go to Extensions (Ctrl+Shift+X)
    • Click "..." menu → "Install from VSIX..."
    • Select the generated .vsix file

Development

  1. Open the extensions/reqcraft folder in VSCode
  2. Press F5 to launch the Extension Development Host
  3. Open a .rqc file to test

Example

import "./openapi.json"

config {
  baseUrl http://localhost:3000
  
  variable apiVersion default("v1")
  variable workspaceId
  
  header Authorization @default("Bearer token")
  header X-API-Key
}

category user {
  name "User"
  desc "User management APIs"
  prefix "/user"
  
  api /info {
    /**
     * Get user information
     */
    get {
      name "Get User Info"
      
      request {}
      
      response {
        username String @mock("john_doe")
        age Number @mock(25)
        email String
      }
    }
  }
}

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft