Security News
Combatting Alert Fatigue by Prioritizing Malicious Intent
In 2023, data breaches surged 78% from zero-day and supply chain attacks, but developers are still buried under alerts that are unable to prevent these threats.
@curve-technology/webapp-scripts
Advanced tools
Tooling, configuration and build-related scripts for Curve web apps
Install @curve-technology/webapp-scripts
and its peerDependencies
yarn add --dev @curve-technology/webapp-scripts jest eslint
To use this config, create an .babelrc
file in the root of your package and add:
{
"extends": "@curve-technology/webapp-scripts/babel/nextjs"
}
This babel config excludes some EcmaScript features, so you may need a polyfill for them:
https://polyfill.io/v3/polyfill.min.js?flags=gated&callback=init&features=default%2CArray.prototype.includes%2CArray.prototype.findIndex%2CArray.prototype.find%2CFunction.prototype.name
or
<script
crossorigin="anonymous"
src="https://polyfill.io/v3/polyfill.min.js?flags=gated&callback=init&features=default%2CArray.prototype.includes%2CArray.prototype.findIndex%2CArray.prototype.find%2CFunction.prototype.name"
></script>
There are four eslint configs available:
To use this config, create an .eslintrc
file in the root of your package and reference one of the mentioned config options.
.eslintrc
Using a configuration file
The extends property value can be an absolute or relative path to a base configuration file. ESLint resolves a relative path to a base configuration file relative to the configuration file that uses it.
Example of a configuration file in JSON format:
{
"extends": [
"./node_modules/@curve-technology/webapp-scripts/eslint/eslint-ts-react"
],
"rules": {
"eqeqeq": "warn"
}
}
This config assumes you're using jest, more specifically, that you use ts-jest
.
To use this config, create an jest.config.js
file in the root of your package and add:
const defaultConfig = require('@curve-technology/webapp-scripts/jest/')
module.exports = {
...defaultConfig,
}
If you need to add or override this config, use this:
const jestConfig = require('@curve-technology/webapp-scripts/jest/')
module.exports = Object.assign(jestConfig, {
// your overrides here
testPathIgnorePatterns: ['/dist/', '/node_modules/'],
})
To use this config, create an .babelrc
file in the root of your package and add:
{ "extends": "@curve-technology/webapp-scripts/babel/nextjs" }
To use this config, create an .prettierrc.js
file in the root of your package and add:
const defaultConfig = require('@curve-technology/webapp-scripts/prettier/')
module.exports = {
...defaultConfig,
}
To use this config, create an .huskyrc.js
file in the root of your package and add:
const defaultConfig = require('@curve-technology/webapp-scripts/husky/')
module.exports = {
...defaultConfig,
}
To use this config, create an .commitlintrc.js
file in the root of your package and add:
const defaultConfig = require('@curve-technology/webapp-scripts/commitlint/')
module.exports = {
...defaultConfig,
}
tsconfig.json
allows extensions via the extends
key, but doesn't support module resolution (i.e. a node module), thus making it quite restrictive when it comes to referencing the path to a parent config file. Paths specified must be relative or absolute, absolute paths being of no use to us in the context of a shared code base.
Importing the shared config from ./node_modules/@curve-technology/webapp-scripts
is our only option.
To use this config, create an tsconfig.json
file in the root of your repo and add:
{
"extends": "@curve-technology/webapp-scripts/tsconfig/tsconfig.base",
"exclude": ["node_modules", "./.storybook/**/*"],
"include": ["next-env.d.ts", "src/**/*.ts", "src/**/*.tsx"]
}
Made by Curve's web scientists 👨🔬
FAQs
Tooling, configuration and build-related scripts for Curve web apps
The npm package @curve-technology/webapp-scripts receives a total of 1 weekly downloads. As such, @curve-technology/webapp-scripts popularity was classified as not popular.
We found that @curve-technology/webapp-scripts demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 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
In 2023, data breaches surged 78% from zero-day and supply chain attacks, but developers are still buried under alerts that are unable to prevent these threats.
Security News
Solo open source maintainers face burnout and security challenges, with 60% unpaid and 60% considering quitting.
Security News
License exceptions modify the terms of open source licenses, impacting how software can be used, modified, and distributed. Developers should be aware of the legal implications of these exceptions.