
Research
Malicious npm Packages Impersonate Flashbots SDKs, Targeting Ethereum Wallet Credentials
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
@rancher/components
Advanced tools
Rancher Components is a Vue UI library that provides components for developing Rancher Applications and Extensions. Each component follows the [Rancher Design System](https://rancher.github.io/storybook/?path=/story/welcome--page) so that everything you b
Rancher Components is a Vue UI library that provides components for developing Rancher Applications and Extensions. Each component follows the Rancher Design System so that everything you build will integrate tightly with Rancher Dashboard.
yarn
yarn build:lib
yarn lint
Rancher Components aims to provide components crucial for developing Rancher Applications and Extensions. As a result, components should remain simple to import and use by other developers with minimal to no additional configuration. To achieve this vision, early iterations of Rancher Components will not have dependencies on libraries (e.g. vuex) that we might be used to reaching for in daily development. The goal is to keep Rancher Components simple, isolated, and side-effect free.
We've come up with a few guidelines to help developers identify components that might be a good fit before porting:
Governance is the most important ingredient to creating a healthy component library that stands the test of time. We must have clear intent and understanding of usage before adding a new component to Rancher Components. Existing Dashboard components might need review before porting so that we can better define clear boundaries between Dashboard and component behavior.
Rancher Dashboard is a monorepo that houses development for several packages, including Rancher Components. We use Yarn Workspaces to make developing in a monorepo a little easier.
Running yarn install
will automatically link inter-package dependencies for each package that has workspaces enabled. The only requirement for linking is that the version is the same in the linked package and the target library. For example, we want to make sure that the @rancher/components
version matches the dependency for @rancher/shell
to automatically link
@rancher/components package.json
{
"name": "@rancher/components",
"repository": "git://github.com:rancher/dashboard.git",
"license": "Apache-2.0",
"version": "0.1.0", // The version of @rancher/components that we want to link
...
}
@rancher/shell package.json
{
"name": "@rancher/shell",
"version": "0.1.4",
"description": "Rancher Dashboard Shell",
"repository": "https://github.com/rancherlabs/dashboard",
...
"dependencies": {
...
"@nuxtjs/webpack-profile": "0.1.0",
"@popperjs/core": "2.4.4",
"@rancher/components": "0.1.0", // @rancher/components version matches what is in package.json and will automatically link for development
...
}
}
You can build and watch for changes in @rancher/components
after ensuring that all @rancher/components
dependencies match the version reflected in package.json
$ yarn build:lib --watch
From this point, you can run Dashboard in another terminal and make changes to either Rancher Shell or Rancher Components. Hot module replacement will function similarly to as if you were developing entirely in a single project.
Locally developing and testing component changes in projects outside of Rancher Dashboard requires that you manually link via npm-link or yarn-link.
First, you will need to run npm link
or yarn link
in the @rancher/components
project
$ cd pkg/rancher-components
~/Development/rancher-dashboard/pkg/rancher-components
$ yarn link
yarn link v1.22.19
success Registered "@rancher/components".
info You can now run `yarn link "@rancher/components"` in the projects where you want to use this package and it will be used instead.
Done in 0.04s.
$ cd pkg/rancher-components
~/Development/rancher-dashboard/pkg/rancher-components
$ npm link
up to date, audited 3 packages in 763ms
found 0 vulnerabilities
Next, complete the link in any project that has a @rancher/components
dependency
$ cd ~/Development/rancher-desktop
~/Development/rancher-desktop
$ yarn link "@rancher/components"
yarn link v1.22.19
success Using linked package for "@rancher/components".
Done in 0.04s.
$ pushd ~/Development/rancher-desktop
~/Development/rancher-desktop
$ npm link "@rancher/components"
up to date, audited 3502 packages in 17s
...
Finally, build and watch @rancher/components
$ yarn build:lib --watch
From this point, you can run your project in another terminal and make changes to Rancher Components. Hot module replacement will function similarly to as if you were developing entirely in a single project.
It's best to handle porting existing Dashboard components into Rancher Components in separate steps to ensure that all packages continue functioning during the porting process.
package.json
)@rancher/components
dependency to the latest published version, update imports for the original Dashboard component with the new component, and delete the original Dashboard component.FAQs
Rancher Components is a Vue UI library that provides components for developing Rancher Applications and Extensions. Each component follows the [Rancher Design System](https://rancher.github.io/storybook/?path=/story/welcome--page) so that everything you b
The npm package @rancher/components receives a total of 1,497 weekly downloads. As such, @rancher/components popularity was classified as popular.
We found that @rancher/components demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 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.
Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.
Security News
Following last week’s supply chain attack, Nx published findings on the GitHub Actions exploit and moved npm publishing to Trusted Publishers.