
Security News
Package Maintainers Call for Improvements to GitHub’s New npm Security Plan
Maintainers back GitHub’s npm security overhaul but raise concerns about CI/CD workflows, enterprise support, and token management.
@dfinity/eslint-config-oisy-wallet
Advanced tools
Shared ESLint configurations from the Oisy Wallet team
A shareable ESLint configuration library for Oisy Wallet projects, supporting both TypeScript and Svelte.
[!NOTE] This configuration is currently compatible with ESLint 8.
# with npm
npm install --save-dev @dfinity/eslint-config-oisy-wallet
# with pnpm
pnpm add --save-dev @dfinity/eslint-config-oisy-wallet
# with yarn
yarn add -D @dfinity/eslint-config-oisy-wallet
For General Projects (Non-Svelte):
.eslintrc.js
in your project root and extend the base configuration:module.exports = {
extends: ["@dfinity/eslint-config-oisy-wallet"],
};
For Svelte Projects:
.eslintrc.js
file in your project root and extend the Svelte-specific configuration:module.exports = {
extends: ["@dfinity/eslint-config-oisy-wallet/svelte"],
};
For vitest test suites:
.eslintrc.js
file in your project root and extend the vitest-specific configuration:module.exports = {
extends: ["@dfinity/eslint-config-oisy-wallet/vitest"],
};
module.exports = {
overrides: [
{
// Specify the test files and/or folders
files: [
"**/*.test.{ts,js}",
"**/*.spec.{ts,js}",
"**/tests/**/*.{ts,js}",
],
extends: ["@dfinity/eslint-config-oisy-wallet/vitest"],
},
],
};
Finally, create an eslint-local-rules.cjs
file at the root of your project containing the following:
module.exports = require("@dfinity/eslint-config-oisy-wallet/eslint-local-rules");
[!NOTE] This is necessary because the
eslint-plugin-local-rules
plugin we use for custom rules requires a file located at the root and does not offer any customizable location option.
You can override, enable, or disable any of the rules provided by this configuration — including custom local rules — just like you would with any ESLint config.
In your .eslintrc.js
, simply add a rules
section:
module.exports = {
extends: ["@dfinity/eslint-config-oisy-wallet/svelte"],
rules: {
// Disable a built-in rule
"no-console": "off",
// Disable a local custom rule
"local/use-nullish-checks": "off",
// Enable a built-in rule
"local-rules/prefer-object-params": "warn",
// Customize severity or options
"@typescript-eslint/no-unused-vars": ["warn", { argsIgnorePattern: "^_" }],
},
};
Or in eslint.config.ts
, adding an object with the rules
property:
import { default as svelteConfig } from "@dfinity/eslint-config-oisy-wallet/svelte";
import { default as vitestConfig } from "@dfinity/eslint-config-oisy-wallet/vitest";
export default [
...vitestConfig,
...svelteConfig,
{
rules: {
// Disable a built-in rule
"no-console": "off",
"vitest/expect-expect": "off",
// Disable a local custom rule
"local/use-nullish-checks": "off",
// Enable a built-in rule
"local-rules/prefer-object-params": "warn",
// Customize severity or options
"@typescript-eslint/no-unused-vars": [
"warn",
{ argsIgnorePattern: "^_" },
],
},
},
];
Note: To override local rules, make sure you have the eslint-local-rules.cjs
file at the root as described above.
If your project uses TypeScript, make sure you have a tsconfig.json
file in your project root.
Here's an example tsconfig.json
:
{
"compilerOptions": {
"strict": true,
"target": "ESNext",
"module": "ESNext",
"moduleResolution": "node",
"esModuleInterop": true,
"skipLibCheck": true
},
"include": ["src/**/*.ts", "*.svelte"],
"exclude": ["node_modules", "dist"]
}
To lint your project, add the following script to your package.json
:
{
"scripts": {
"lint": "eslint --max-warnings 0 \"src/**/*\""
}
}
Then, run the linting command:
npm run lint
FAQs
Shared ESLint configurations from the Oisy Wallet team
The npm package @dfinity/eslint-config-oisy-wallet receives a total of 2,073 weekly downloads. As such, @dfinity/eslint-config-oisy-wallet popularity was classified as popular.
We found that @dfinity/eslint-config-oisy-wallet demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 11 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Maintainers back GitHub’s npm security overhaul but raise concerns about CI/CD workflows, enterprise support, and token management.
Product
Socket Firewall is a free tool that blocks malicious packages at install time, giving developers proactive protection against rising supply chain attacks.
Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.