
Security News
The Hidden Blast Radius of the Axios Compromise
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.
@basaldev/blocks-frontend-framework
Advanced tools

❤️
The Nodeblocks Framework is a library which provides scaffolding for building Nodeblocks frontend React applications. Using this framework, you can quickly build a frontend application made up of multiple Nodeblocks blocks, composed together using a standardized architecture.
.
├── .github
├── .husky # husky settings - @basaldev/lint-staged-config
├── .vscode # vscode settings
├── .yarn # yarn binary, config and project dependencies
├── coverage * # jest coverage report
├── dist *
├── docs
├── public # files that will be exported to npm (e.g. svg and other images)
├── src
│ ├── design-system # Design system components
│ │ ├── basic
│ │ ├── composite
│ ├── examples # Example applications (used for testing locally)
│ ├── framework
│ │ ├── app
│ │ ├── block
│ │ ├── template
│ │ └── types.ts
│ └── index.ts
├── .eslintignore
├── .eslintrc.js # @basaldev/eslint-config
├── .gitignore
├── .nvmrc
├── .pnp.cjs # yarn config
├── .pnp.loader.mjs # yarn config
├── .prettierignore
├── .prettierrc.json # @basaldev/prettier-config
├── .yarnrc.yml # yarn config
├── cspell.config.js # @basaldev/cspell-config
├── .yarnrc.yml # yarn config
├── index.html # Example application index.html
├── package.json
├── README.md
├── tsconfig.json # @basaldev/tsconfig
├── vite.config.ts # Vite configuration for building and running the project
└── yarn.lock
@basaldev/blocks-frontend-framework into your projectsrc/examples into your project root
(Note that you will need to copy examples/core-styles.css as well to configure the base styles for the application)Customizing CSS and themes
The framework uses CSS modules to scope styles to each component, as well as CSS variables that can be used to configure the framework.
Create a Github Personal Auth Token
repo checkboxwrite:packages.zshrc .bashrc etcexport NODEBLOCKS_DEV_TOKEN=__INSERT_YOUR_TOKEN_HERE__
Install NVM
Install Yarn (Global)
Yarn must be installed globally for the project's NodeJS version. This should be done so using the command below.
nvm use && npm install -g yarn
Install Husky 🐺
yarn dlx husky init
⚠️ IMPORTANT: Only use the yarn command install or run scripts. Do not use npm run xxx
Run vite
First, create a .env file in the root of the project:
cp .env.example .env
Fill this .env file with the appropriate URLs for the backend services.
Second, create a local https cert
brew install mkcert
mkcert -install
mkcert localhost
Then, run the following command to start the vite server
yarn dev
By default, the vite server will use the hello-world example. To use a different example, run the following command:
APP_TYPE=example-folder yarn dev
(Generally, instead of this, you will want to yarn link a separate project that uses the framework.)
Run storybook
yarn storybook
Run unit tests
yarn test
Installing packages
yarn add <package> | yarn add <package> -D
Linking local packages for local testing
To add blocks-frontend-sdk, run this yarn command first:
yarn link /full/absolute/path/to/blocks-frontend-sdk
Then, add this to vite.config.ts:
export default defineConfig({
...
optimizeDeps: {
include: ['@basaldev/blocks-frontend-sdk'],
},
...
});
Please ensure the following extensions are installed:
The kit uses vscode workspaces for vscode project settings:
.vscode/${project_name}-workspace file..vscode/settings.json (gitignored)File > Open workspace from file.When prompted asking which typescript VSCode should use, it's very important that you choose the local project version located at .yarn/sdks/typescript/...
If you have the prettier extension installed, please disable it for this project. ts-kit uses eslint to execute prettier, so having prettier enabled in vscode will cause conflicts and strange behavior.
Add the following code to your .vscode/settings.json will automatically fix all eslint errors whenever you save a file.
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
}
This library uses github registry to publish private npm package. For detailed instructions see here
💡 Note: that npm is used for version & publish commands
1. Bump version
npm version ${VERSION}
2. Build Package
yarn build
3. Publish Package
npm publish
Then go to github https://github.com/basaldev/blocks-frontend-sdk/packages to check published packages.
FAQs
blocks-frontend-framework ❤️
We found that @basaldev/blocks-frontend-framework demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 7 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
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.

Research
Malicious versions of the Telnyx Python SDK on PyPI delivered credential-stealing malware via a multi-stage supply chain attack.