Get started with Sunlint's comprehensive code quality tools. Choose between CLI automation and AI-powered VS Code analysis, or use both for complete coverage.
Install globally to use sunlint across all projects
npm install -g @sun-asterisk/sunlintVerify installation:
sunlint --versionInstall as a development dependency in your project
npm install --save-dev @sun-asterisk/sunlint eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin typescriptAdd to package.json scripts:
{
"scripts": {
"lint": "sunlint --all --input=src",
"lint:changed": "sunlint --all --changed-files",
"lint:security": "sunlint --security --input=src"
}
}Using Yarn or direct GitHub release
Yarn:
yarn global add @sun-asterisk/sunlintGitHub Release:
wget https://github.com/sun-asterisk/sunlint/releases/latest/download/sunlint-linux# Run all rules on src directory
sunlint --all --input=src# Check specific rules, language rules
sunlint --rules=C019,S005 --input=src
sunlint --specific --languages=dart --input=lib# Security-focused scan
sunlint --security --input=src# ESLint integration
sunlint --all --eslint-integration --input=src# Git integration
sunlint --all --changed-files# CI/CD mode
sunlint --all --pr-mode --fail-on-new-violationsname: Code Quality Check
on: [push, pull_request]
jobs:
sunlint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '18'
- run: npm install -g @sun-asterisk/sunlint
- run: sunlint --all --changed-files --fail-on-new-violationssunlint:
stage: test
image: node:18
script:
- npm install -g @sun-asterisk/sunlint
- sunlint --all --input=src --format=json --output=report.json
artifacts:
reports:
junit: report.json
expire_in: 1 weekView detailed analytics, track improvements over time, and monitor compliance trends for your organization. The dashboard provides comprehensive insights into code quality violations, security issues, and architectural patterns across all your projects.
# .github/workflows/sunlint-ci.yml
name: Sunlint Code Quality Check
on: [pull_request]
jobs:
sunlint:
runs-on: ubuntu-latest
# permissions are required for uploading report to Dashboard
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '21' # support node 18+
# Install Sunlint globally
- run: npm install -g @sun-asterisk/sunlint
# Run Sunlint with the specified options and upload the report to the Dashboard
# --output-summary=report.json --upload-report are required for Dashboard integration
- run: sunlint --all --input=src --output-summary=report.json --upload-report