
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
topcoder-react-utils
Advanced tools
The Topcoder collection of generic ReactJS configurations, components and utilities to be shared between all internal and external ReactJS projects developed by the Topcoder community.
Install the package as
$ npm install --save topcoder-react-utils
$ ./node_modules/.bin/topcoder-lib-setup
Then import the global stylesheet into the root ReactJS component of your app:
/* eslint-disable global-require */
if (process.env.NODE_ENV === 'production') {
require('topcoder-react-utils/dist/prod/style.css');
} else {
require('topcoder-react-utils/dist/dev/style.css');
}
/* eslint-enable global-require */
To upgrade this library to the latest version just execute again
$ ./node_modules/.bin/topcoder-lib-setup
Avatar – The standard component for user avatars;Button – Handles buttons and button-like links
(components that look like regular buttons, but behave as links) in the same
uniform manner;Link and NavLink – Auxiliary wrappers
around React Router's <Link>
and <NavLink> components; they help to handle external and internal links in
the same uniform manner;Modal – Themeable modal component;ScalableRect – Container that keeps
the specified aspect ratio regardless the width you set.Whenever you are to do any changes in the library, keep in mind the following:
Different projects rely on this library, the tooling it provides should be as generic and flexible as possible. When you change existing components, do your best to keep backward compatibility of the updated components, any changes that demand updates in the projects relying on the library, must be documented in the changelog.
Rely on unit tests to verify your changes, and prevent regression. Update existing unit tests to keep up with your changes, and add new unit tests when necessary.
For the final testing of your updates within a host project relying on this lib, see the next section.
The library use semantic versioning. In case your changes demand any changes in the project relying on the library, you should release it as a minor library update (more severe comparing to patch update). Consider to use a new branch, called after the minor version, and to not merge your changes into the main develop / master branches until everybody is prepared for that.
To locally test how your library updates work within a host project relying on
the lib (without releasing them to NPM), use
npm link to link local copy of the lib
into the host project, then run npm run build:dev:watch in the library root to
automatically re-build the lib when you change it, and use the host project to
see the final effect of changes you make.
Continious Integration and Delivery (CI/CD) is set up for this repository with
CircleCI 2.0. Commits to all branches trigger testing of the code with
$ npm test (it runs linters and unit tests), and also build the library.
CI/CD flow is interrupted in case of any problems.
To release updated library version to NPM do the following:
Bump library version in package.json and package-lock.json by
$ npm version UPDATE_TYPE --no-git-tag command, where UPDATE_TYPE should
be one of patch / minor / major to update current version x.y.z
to x.y.(z+1) / x.(y+1).0 / (x+1).0.0. The --no-git-tag flag prevents
automatic creation of the Git tag with the same name as the version.
Tag the commit to be released with the git tag like v0.1.2, where 0.1.2 is
the new version set in the previous step.
Commit the tag to GitHub repository.
Topcoder React Utils is MIT Licensed
FAQs
Topcoder collection of generic ReactJS components and utils
We found that topcoder-react-utils demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer 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
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.