A WASM shell parser and formatter with bash support, based on mvdan/sh

Overview

sh-syntax

GitHub Actions Codecov Codacy Grade type-coverage npm GitHub Release

David Peer David David Dev

Conventional Commits Renovate enabled JavaScript Style Guide Code Style: Prettier changesets

A WASM shell parser and formatter with bash support, based on mvdan/sh

TOC

Usage

Install

# yarn
yarn add sh-syntax

# npm
npm i sh-syntax

API

// node
import { parse, print } from 'sh-syntax'

const text = "echo 'Hello World!'"
const ast = await parse(text)
const newText = await print(ast, {
  // `originalText` is required for now, hope we will find better solution later
  originalText: text,
})
// browser
import { getProcessor } from 'sh-syntax'

const processor = getProcessor(() =>
  fetch('path/to/main.wasm').then(res => res.arrayBuffer()),
)

const parse = (text, options) => processor(text, options)

const print = (ast, options) => processor(ast, options)

// just like node again
const text = "echo 'Hello World!'"
const ast = await parse(text)
const newText = await print(ast, { originalText: text })

Changelog

Detailed changes for each release are documented in CHANGELOG.md.

License

MIT © JounQin@1stG.me

Comments
  • chore(deps): update dependency @types/web to ^0.0.86

    chore(deps): update dependency @types/web to ^0.0.86

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | @types/web | ^0.0.82 -> ^0.0.86 | age | adoption | passing | confidence |


    Release Notes

    microsoft/TypeScript-DOM-Lib-Generator

    v0.0.86

    Compare Source

    index.d.ts

    Modified

    • HTMLFormElement
      • Added: rel, relList

    iterable.d.ts

    No changes

    v0.0.85

    Compare Source

    index.d.ts

    Modified

    • OffscreenCanvas
      • Added: convertToBlob

    iterable.d.ts

    No changes

    v0.0.84

    Compare Source

    index.d.ts

    No changes

    iterable.d.ts

    No changes

    v0.0.83

    Compare Source

    index.d.ts

    Modified

    • Element
      • Added: checkVisibility

    iterable.d.ts

    No changes


    Configuration

    📅 Schedule: Branch creation - "before 3am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 4
  • chore(deps): update dependency @changesets/changelog-github to ^0.4.8

    chore(deps): update dependency @changesets/changelog-github to ^0.4.8

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | @changesets/changelog-github (source) | ^0.4.7 -> ^0.4.8 | age | adoption | passing | confidence |


    Release Notes

    changesets/changesets

    v0.4.8

    Compare Source

    Patch Changes

    Configuration

    📅 Schedule: Branch creation - "before 3am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 4
  • chore(deps): update dependency synckit to ^0.8.4

    chore(deps): update dependency synckit to ^0.8.4

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | synckit | ^0.8.1 -> ^0.8.4 | age | adoption | passing | confidence |


    Release Notes

    un-ts/synckit

    v0.8.4

    Compare Source

    Patch Changes

    v0.8.3

    Compare Source

    Patch Changes

    v0.8.2

    Compare Source

    Patch Changes

    Configuration

    📅 Schedule: Branch creation - "before 3am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 4
  • chore(deps): update dependency @types/web to ^0.0.82

    chore(deps): update dependency @types/web to ^0.0.82

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | @types/web | ^0.0.78 -> ^0.0.82 | age | adoption | passing | confidence |


    Release Notes

    microsoft/TypeScript-DOM-Lib-Generator

    v0.0.82

    Compare Source

    index.d.ts

    Non-value types
    • CanvasPath
      • Added: roundRect

    iterable.d.ts

    No changes

    v0.0.81

    Compare Source

    index.d.ts

    No changes

    iterable.d.ts

    No changes

    v0.0.80

    Compare Source

    index.d.ts

    No changes

    iterable.d.ts

    No changes

    v0.0.79

    Compare Source


    Configuration

    📅 Schedule: Branch creation - "before 3am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 4
  • chore(deps): update dependency @types/web to ^0.0.78

    chore(deps): update dependency @types/web to ^0.0.78

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | @types/web | ^0.0.70 -> ^0.0.78 | age | adoption | passing | confidence |


    Release Notes

    microsoft/TypeScript-DOM-Lib-Generator

    v0.0.78

    Compare Source

    index.d.ts

    Modified

    • PermissionStatus
      • Added: name
    • PushSubscriptionOptions
      • Added: userVisibleOnly

    iterable.d.ts

    No changes

    v0.0.77

    Compare Source

    v0.0.76

    Compare Source

    index.d.ts

    New interfaces

    • OffscreenCanvas
    • OffscreenCanvasRenderingContext2D

    Modified

    • CSSStyleDeclaration
      • Added: overflowClipMargin
    • HTMLCanvasElement
      • Added: transferControlToOffscreen
    Non-value types
    • AuthenticationExtensionsClientInputs
      • Added: hmacCreateSecret
    • AuthenticationExtensionsClientOutputs
      • Added: hmacCreateSecret
    • RTCInboundRtpStreamStats
      • Added: framesDropped, totalProcessingDelay
    • RTCReceivedRtpStreamStats
      • Removed: framesDropped
    • RTCRtpEncodingParameters
      • Added: maxFramerate, networkPriority

    iterable.d.ts

    No changes

    v0.0.75

    Compare Source

    index.d.ts

    No changes

    iterable.d.ts

    No changes

    v0.0.74

    Compare Source

    index.d.ts
    New interfaces
    • CSSContainerRule
    Modified
    • AuthenticatorAttestationResponse
      • Added: getPublicKey, getPublicKeyAlgorithm
    • CSSStyleDeclaration
      • Added: container, containerName, containerType, hyphenateCharacter
    Non-value types
    • CanvasPath
      • Added: roundRect
    iterable.d.ts

    No changes

    v0.0.73

    Compare Source

    index.d.ts

    New interfaces

    • CSSFontPaletteValuesRule
    • CSSLayerBlockRule
    • CSSLayerStatementRule

    Removed interfaces

    • MediaRecorderErrorEvent

    Modified

    • CSSImportRule
      • Added: layerName
    • CSSStyleDeclaration
      • Added: backdropFilter, fontPalette
    • PublicKeyCredential
      • Added: authenticatorAttachment
    • Selection
      • Added: modify
    Non-value types
    • AuthenticationExtensionsClientInputs
      • Removed: appidExclude, uvm
    • AuthenticationExtensionsClientOutputs
      • Removed: uvm
    • RTCIceCandidatePairStats
      • Added: lastPacketReceivedTimestamp, lastPacketSentTimestamp
    • RTCIceServer
      • Removed: credentialType
    • RTCInboundRtpStreamStats
      • Added: audioLevel, bytesReceived, concealedSamples, concealmentEvents, decoderImplementation, estimatedPlayoutTimestamp, fecPacketsDiscarded, fecPacketsReceived, frameHeight, frameWidth, framesPerSecond, framesReceived, headerBytesReceived, insertedSamplesForDeceleration, jitterBufferDelay, jitterBufferEmittedCount, keyFramesDecoded, kind, lastPacketReceivedTimestamp, packetsDiscarded, removedSamplesForAcceleration, silentConcealedSamples, totalAudioEnergy, totalDecodeTime, totalInterFrameDelay, totalSamplesDuration, totalSamplesReceived, totalSquaredInterFrameDelay
    • RTCOutboundRtpStreamStats
      • Added: frameHeight, frameWidth, framesPerSecond, framesSent, headerBytesSent, hugeFramesSent, keyFramesEncoded, mediaSourceId, qualityLimitationResolutionChanges, retransmittedBytesSent, retransmittedPacketsSent, rid, targetBitrate, totalEncodeTime, totalEncodedBytesTarget, totalPacketSendDelay
    • RTCReceivedRtpStreamStats
      • Added: framesDropped
      • Removed: packetsDiscarded
    • RTCTransportStats
      • Removed: rtcpTransportStatsId
    • ARIAMixin
      • Added: ariaColIndexText, ariaInvalid, ariaRowIndexText, role
    • CanvasTextDrawingStyles
      • Added: fontKerning
    • GlobalEventHandlersEventMap
      • Added: "cancel"
    • GlobalEventHandlers
      • Added: onbeforeinput, oncancel

    iterable.d.ts

    No changes

    v0.0.72

    Compare Source

    index.d.ts

    No changes

    iterable.d.ts

    No changes

    v0.0.71

    Compare Source

    index.d.ts

    Removed interfaces

    • NetworkInformation

    iterable.d.ts

    No changes


    Configuration

    📅 Schedule: Branch creation - "before 3am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 4
  • chore(deps): update dependency @changesets/changelog-github to ^0.4.7

    chore(deps): update dependency @changesets/changelog-github to ^0.4.7

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | @changesets/changelog-github | ^0.4.6 -> ^0.4.7 | age | adoption | passing | confidence |


    Release Notes

    changesets/changesets

    v0.4.7

    Compare Source

    Patch Changes

    Configuration

    📅 Schedule: Branch creation - "before 3am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 4
  • chore(deps): update dependency @changesets/cli to ^2.24.4

    chore(deps): update dependency @changesets/cli to ^2.24.4

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | @changesets/cli | ^2.24.2 -> ^2.24.4 | age | adoption | passing | confidence |


    Release Notes

    changesets/changesets

    v2.24.4

    Compare Source

    Patch Changes

    v2.24.3

    Compare Source

    Patch Changes

    Configuration

    📅 Schedule: Branch creation - "before 3am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, click this checkbox.

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 4
  • chore(deps): update dependency @1stg/lib-config to ^9.0.3

    chore(deps): update dependency @1stg/lib-config to ^9.0.3

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | @1stg/lib-config (source) | ^9.0.2 -> ^9.0.3 | age | adoption | passing | confidence |


    Release Notes

    1stG/configs

    v9.0.3

    Compare Source

    Patch Changes

    Configuration

    📅 Schedule: Branch creation - "before 3am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, click this checkbox.

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 4
  • chore(deps): update dependency @changesets/cli to ^2.24.2

    chore(deps): update dependency @changesets/cli to ^2.24.2

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | @changesets/cli | ^2.24.1 -> ^2.24.2 | age | adoption | passing | confidence |


    Release Notes

    changesets/changesets

    v2.24.2

    Compare Source

    Patch Changes
    • #​900 7d998ee Thanks @​sdirosa! - Fixed an issue with generating changelogs not being skipped when the changelog config option was set to false.

    Configuration

    📅 Schedule: Branch creation - "before 3am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, click this checkbox.

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 4
  • chore(deps): update dependency @1stg/lib-config to ^9.0.2 - autoclosed

    chore(deps): update dependency @1stg/lib-config to ^9.0.2 - autoclosed

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | @1stg/lib-config | ^9.0.1 -> ^9.0.2 | age | adoption | passing | confidence |


    Release Notes

    1stG/configs

    v9.0.2

    Compare Source

    Patch Changes

    Configuration

    📅 Schedule: Branch creation - "before 3am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, click this checkbox.

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 3
  • fix(deps): update module mvdan.cc/sh/v3 to v3.5.1

    fix(deps): update module mvdan.cc/sh/v3 to v3.5.1

    Mend Renovate

    This PR contains the following updates:

    | Package | Type | Update | Change | |---|---|---|---| | mvdan.cc/sh/v3 | require | patch | v3.5.0 -> v3.5.1 |


    Release Notes

    mvdan/sh

    v3.5.1

    Compare Source


    Configuration

    📅 Schedule: "before 3am on the first day of the month" (UTC).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, click this checkbox.

    This PR has been generated by Mend Renovate. View repository job log here.

    PR: merged 
    opened by renovate[bot] 3
  • Add CodeQL workflow for GitHub code scanning

    Add CodeQL workflow for GitHub code scanning

    Hi un-ts/sh-syntax!

    This is a one-off automatically generated pull request from LGTM.com :robot:. You might have heard that we’ve integrated LGTM’s underlying CodeQL analysis engine natively into GitHub. The result is GitHub code scanning!

    With LGTM fully integrated into code scanning, we are focused on improving CodeQL within the native GitHub code scanning experience. In order to take advantage of current and future improvements to our analysis capabilities, we suggest you enable code scanning on your repository. Please take a look at our blog post for more information.

    This pull request enables code scanning by adding an auto-generated codeql.yml workflow file for GitHub Actions to your repository — take a look! We tested it before opening this pull request, so all should be working :heavy_check_mark:. In fact, you might already have seen some alerts appear on this pull request!

    Where needed and if possible, we’ve adjusted the configuration to the needs of your particular repository. But of course, you should feel free to tweak it further! Check this page for detailed documentation.

    Questions? Check out the FAQ below!

    FAQ

    Click here to expand the FAQ section

    How often will the code scanning analysis run?

    By default, code scanning will trigger a scan with the CodeQL engine on the following events:

    • On every pull request — to flag up potential security problems for you to investigate before merging a PR.
    • On every push to your default branch and other protected branches — this keeps the analysis results on your repository’s Security tab up to date.
    • Once a week at a fixed time — to make sure you benefit from the latest updated security analysis even when no code was committed or PRs were opened.

    What will this cost?

    Nothing! The CodeQL engine will run inside GitHub Actions, making use of your unlimited free compute minutes for public repositories.

    What types of problems does CodeQL find?

    The CodeQL engine that powers GitHub code scanning is the exact same engine that powers LGTM.com. The exact set of rules has been tweaked slightly, but you should see almost exactly the same types of alerts as you were used to on LGTM.com: we’ve enabled the security-and-quality query suite for you.

    How do I upgrade my CodeQL engine?

    No need! New versions of the CodeQL analysis are constantly deployed on GitHub.com; your repository will automatically benefit from the most recently released version.

    The analysis doesn’t seem to be working

    If you get an error in GitHub Actions that indicates that CodeQL wasn’t able to analyze your code, please follow the instructions here to debug the analysis.

    How do I disable LGTM.com?

    If you have LGTM’s automatic pull request analysis enabled, then you can follow these steps to disable the LGTM pull request analysis. You don’t actually need to remove your repository from LGTM.com; it will automatically be removed in the next few months as part of the deprecation of LGTM.com (more info here).

    Which source code hosting platforms does code scanning support?

    GitHub code scanning is deeply integrated within GitHub itself. If you’d like to scan source code that is hosted elsewhere, we suggest that you create a mirror of that code on GitHub.

    How do I know this PR is legitimate?

    This PR is filed by the official LGTM.com GitHub App, in line with the deprecation timeline that was announced on the official GitHub Blog. The proposed GitHub Action workflow uses the official open source GitHub CodeQL Action. If you have any other questions or concerns, please join the discussion here in the official GitHub community!

    I have another question / how do I get in touch?

    Please join the discussion here to ask further questions and send us suggestions!

    opened by lgtm-com[bot] 3
  • [sh] error `offset is out of bounds`

    [sh] error `offset is out of bounds`

    via https://github.com/rx-ts/prettier/issues/182#issuecomment-1166891757

    #!/usr/bin/env bash
    set -euo pipefail
    
    stage_path="$(dirname "$(realpath -s "$0")")/../../globals.stage"
    
    # git on vercel https://vercel.com/docs/concepts/deployments/build-step#build-image
    
    # check if program does not exist https://stackoverflow.com/a/26759734
    # check if in github repo https://stackoverflow.com/a/16925062
    if [[ ! -x "$(command -v git)" ]] || [[ $(git rev-parse --is-inside-work-tree 2> /dev/null) != "true" ]]; then
        # check if file does not exist https://linuxize.com/post/bash-check-if-file-exists/
        if [[ ! -f "globals.stage" ]]; then
            if [[ ! -x "$(command -v git)" ]]; then
                echo '[stage]: git is not installed.' >&2
                exit 1
            else
                echo '[stage]: not a git repository.' >&2
                exit 1
            fi
        else
            stage=$(cat "globals.stage")
            # trim newlines https://stackoverflow.com/a/12973694
            # trim whitespace https://stackoverflow.com/a/13092379
            stage=$(echo "$stage" | xargs)
            echo "$stage"
            exit 0
        fi
    fi
    
    # current git branch https://stackoverflow.com/a/1593487
    branch_name=$(git symbolic-ref -q HEAD)
    branch_name=${branch_name##refs/heads/}
    branch_name=${branch_name:-HEAD}
    
    # bash kebab-case https://stackoverflow.com/a/56080830
    branch_name=$(echo "$branch_name" \
        | sed 's/\([^A-Z]\)\([A-Z0-9]\)/\1-\2/g' \
        | sed 's/\([A-Z0-9]\)\([A-Z0-9]\)\([^A-Z]\)/\1-\2\3/g' \
        | tr '[:upper:]' '[:lower:]')
    
    monorepo_path="$("$(dirname "$(realpath -s "$0")")/../functions/monorepo_path")"
    # extract json key https://unix.stackexchange.com/questions/480481/grep-the-name-from-package-json-file#comment1308267_691616
    base_branch="$(grep -o '"baseBranch"\s*:\s*"[^"]*' "$monorepo_path/turbo.json" | grep -o '[^"]*$')"
    base_branch="${base_branch##*/}"
    
    # if statement https://www.tutorialkart.com/bash-shell-scripting/bash-else-if/
    if [[ "$branch_name" == "production" ]]; then
        echo '[stage]: "production" is not a valid branch name' >&2
        exit 1
    fi
    
    if [[ "$branch_name" == "$base_branch" ]]; then
        branch_name="production"
    fi
    
    # noclobber https://stackoverflow.com/a/56138414
    set -o noclobber
    echo "$branch_name" >| "$stage_path"
    
    echo "$branch_name"
    
    opened by JounQin 1
  • Dependency Dashboard

    Dependency Dashboard

    This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

    Awaiting Schedule

    These updates are awaiting their schedule. Click on a checkbox to get an update now.

    • [ ] fix(deps): update dependency tslib to ^2.4.1
    • [ ] chore(deps): update dependency @changesets/cli to ^2.26.0
    • [ ] chore(deps): update dependency @types/node to ^18.11.18
    • [ ] chore(deps): update dependency size-limit to ^8.1.0
    • [ ] chore(deps): update dependency size-limit-preset-node-lib to ^0.2.0
    • [ ] chore(deps): update dependency type-coverage to ^2.24.1
    • [ ] chore(deps): update dependency typescript to ^4.9.4
    • [ ] chore(deps): update dependency vitest to ^0.26.3
    • [ ] chore(deps): update pnpm to v7.22.0
    • [ ] fix(deps): update module mvdan.cc/sh/v3 to v3.6.0
    • [ ] chore(deps): update dependency @1stg/lib-config to v10

    Detected dependencies

    github-actions
    .github/workflows/ci.yml
    • actions/checkout v3
    • pnpm/action-setup v2
    • actions/setup-node v3
    • codecov/codecov-action v3
    .github/workflows/release.yml
    • actions/checkout v3
    • pnpm/action-setup v2
    • actions/setup-node v3
    • changesets/action v1
    .github/workflows/size-limit.yml
    • actions/checkout v3
    • pnpm/action-setup v2
    • actions/setup-node v3
    • andresz1/size-limit-action v1
    gomod
    go.mod
    • go 1.18
    • github.com/mailru/easyjson v0.7.7
    • mvdan.cc/sh/v3 v3.5.1
    npm
    package.json
    • tslib ^2.4.0
    • @1stg/lib-config ^9.0.3
    • @changesets/changelog-github ^0.4.8
    • @changesets/cli ^2.24.4
    • @types/golang-wasm-exec ^1.15.0
    • @types/mvdan-sh ^0.10.0
    • @types/node ^18.6.3
    • @types/web ^0.0.86
    • c8 ^7.12.0
    • mitata ^0.1.6
    • mvdan-sh ^0.10.1
    • size-limit ^8.0.0
    • size-limit-preset-node-lib ^0.1.0
    • synckit ^0.8.4
    • type-coverage ^2.22.0
    • typescript ^4.7.4
    • vitest ^0.20.2
    • node ^12.20.0 || ^14.18.0 || >=16.0.0
    • pnpm 7.8.0
    nvm
    .nvmrc

    • [ ] Check this box to trigger a request for Renovate to run again on this repository
    opened by renovate[bot] 0
Releases(v0.3.7)
Owner
RxTS
Awesome libraries built with RxJS, TypeScript.
RxTS
Json-parser - A parser for json-objects without dependencies

Json Parser This is a experimental tool that I create for educational purposes, it's based in the jq works With this tool you can parse json-like stri

Gabriel Guerra 1 Jan 3, 2022
A Remix stack setup to run on Deno with support for Rust WASM modules!

Remix + Deno + Rust -> Webassembly - The Air Metal Stack Welcome to the Air Metal Stack for Remix! ?? + ?? This stack is a good choice if you want to

Ben Wishovich 60 Jan 5, 2023
Automated packaging of Debian-flavored NGINX with PageSpeed modules. Written in Bash and GitHub Workers. APT Repository hosted on Dokku.

NGINX + Google PageSpeed Configuring NGINX to build correctly is a pain. Not because of anything wrong with it, but rather because of how slim the sta

Slava Knyazev 21 Oct 14, 2022
GPT-3 powered cli tool to help with bash commands you can't remember

qwery GPT-3 powered cli tool to help with bash commands you can't remember eg $ qw ffmpeg command to transcode mp4 to mov QWERY RESULT: ffmpeg -i inpu

Aaron Peddle 4 Oct 31, 2022
All-in-one code linter and formatter for TypeScript and JavaScript

Uniform is a CLI tool - code linter and formatter for JavaScript and TypeScript. Works using eslint and prettier under the hood.

Irakli Dautashvili 21 Feb 27, 2022
Dead simple, single file, tiny byte formatter

tiny-byte-size Dead simple, no configuration needed, tiny byte formatter npm install tiny-byte-size Usage const byteSize = require('tiny-byte-size')

Mathias Buus 17 Aug 24, 2022
A code formatter for the Motoko smart contract language.

Motoko Formatter · A Prettier plugin for the Motoko programming language. Setup After making sure Node.js is installed on your local machine, run the

DFINITY 25 Dec 19, 2022
Query for CSS brower support data, combined from caniuse and MDN, including version support started and global support percentages.

css-browser-support Query for CSS browser support data, combined from caniuse and MDN, including version support started and global support percentage

Stephanie Eckles 65 Nov 2, 2022
A querystring parser with nesting support

qs A querystring parsing and stringifying library with some added security. Lead Maintainer: Jordan Harband The qs module was originally created and m

Jordan Harband 7.6k Jan 4, 2023
Add GeoIP && UA-Parser support for Grafana Loki

loki-enhance-middleware loki-enhance-middleware hijacks log push requests sent to loki and modifies it. Deploy docker-compose.yaml services: loki:

WangLei 5 Dec 10, 2022
Drawing Newton's fractal using pure js, rust-wasm, SIMDs, threads and GPU

Newton's fractal Runtime Newton's fractal renderer. >>Click<< to open in your browser Inspired by 3blue1brown's video about Newton's fractal. Drawing

Aleksei 86 Nov 17, 2022
Remix sandbox repo for Rust compiled to WASM and to native N-API modules

Rust <-> Remix Sandbox Now with both native Rust and WASM versions! If you want to combine the Web Fundamentals & Modern UX of Remix together with the

Ben Wishovich 26 Dec 30, 2022
Simple Jai to WASM Proof-of-Concept

Simple Jai to WASM Proof-of-Concept Jai does not officially support WebAssembly compilation target. BUT! It allows you to dump LLVM IR via the llvm_op

Tsoding 52 Dec 14, 2022
High-order Virtual Machine (HVM) wrapper on JavaScript, via WASM

HVM on JavaScript HVM is now available as a JavaScript library! Installing npm i --save hvm-js Examples Evaluating a term to normal form import hvm fr

null 14 Nov 24, 2022
Building #dotnet code to target WASM in the browser

WASM Running .NET in a Browser This solution shows you can compile .NET to target a WASM app bundle that can be used independently of a dotnet applica

Khalid Abuhakmeh 9 Oct 14, 2022
Binary-encoded serialization of JavaScript objects with generator-based parser and serializer

YaBSON Schemaless binary-encoded serialization of JavaScript objects with generator-based parser and serializer This library is designed to transfer l

Gildas 11 Aug 9, 2022
A simple C++ function parser/tagger based on tree-sitter

What the func?! - A simple C++ function parser/tagger This project implements a simple C++ function parser, what-the-func, based on the tree-sitter C+

Software and Systems Engineering Chair 4 - Faculty of Informatics 3 May 21, 2022
This is a project that is used to execute python codes in the web page. You can install and use it in django projects, You can do any operations that can be performed in python shell with this package.

Django execute code This is a project that is used to execute python codes in the web page. You can install and use it in django projects, You can do

Shinu 5 Nov 12, 2022
A Kubernates Cloud-Shell (Web Terminal) Operator

A Kubernates Cloud-Shell (Web Terminal) Operator. English | Simplified_Chinese Why cloudtty ? Existing project ttyd already provides great feature to

cloudtty-io 307 Dec 27, 2022