
Research
npm Malware Targets Telegram Bot Developers with Persistent SSH Backdoors
Malicious npm packages posing as Telegram bot libraries install SSH backdoors and exfiltrate data from Linux developer machines.
Left, Right, Up, Down. A spatial navigation library for devices with input via directional controls
A spatial navigation library for devices with input via directional controls
v3 is a major rewrite, covering many new features. However, it unfortunately breaks some backwards compatibility.
We are currently in the process of writing more detailed docs for an upgrade process. However, the main things to note at the minute at;
grid
in favour of isIndexAligned
behaviourgit clone git@github.com:bbc/lrud.git lrud
cd lrud
npm install
Lrud is written in Typescript and makes use of mitt.
npm install lrud
const { Lrud } = require('Lrud')
// create an instance, register some nodes and assign a default focus
var navigation = new Lrud()
navigation
.registerNode('root', { orientation: 'vertical' })
.registerNode('item-a', { parent: 'root', isFocusable: true })
.registerNode('item-b', { parent: 'root', isFocusable: true })
.assignFocus('item-a')
// handle a key event
document.addEventListener('keypress', (event) => {
navigation.handleKeyEvent(event)
});
// Lrud will output an event when it handles a move
navigation.on('move', (moveEvent) => {
myApp.doSomethingOnNodeFocus(moveEvent.enter)
})
See usage docs for details full API details.
For more "full" examples, covering common use cases, check the recipes
All code is written in Typescript, so we make use of a tsconfig.json
and jest.config.js
to ensure tests run correctly.
Test files are split up fairly arbitrarily, aiming to have larger sets of tests broken into their own file.
npm test
To run a specific test file, use npx jest
from the project root.
npx jest src/lrud.test.js
You can also run all the tests with verbose output. This is useful for listing out test scenarios to ensure that behaviour is covered.
npm run test:verbose
You can also run all the tests with coverage output
npm run test:coverage
Several of the tests have associated diagrams, in order to better explain what is being tested. These can be found in ./docs/test-diagrams
.
We also have a specific test file (src/build.test.js
) in order to ensure that we haven't broken the Typescript/rollup.js build.
npm version <patch:minor:major>
npm publish
LRUD is part of the BBC TAL libraries, and available to everyone under the terms of the Apache 2 open source licence (Apache-2.0). Take a look at the LICENSE file in the code.
Copyright (c) 2018 BBC
FAQs
Left, Right, Up, Down. A spatial navigation library for devices with input via directional controls
We found that lrud demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 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
Malicious npm packages posing as Telegram bot libraries install SSH backdoors and exfiltrate data from Linux developer machines.
Security News
pip, PDM, pip-audit, and the packaging library are already adding support for Python’s new lock file format.
Product
Socket's Go support is now generally available, bringing automatic scanning and deep code analysis to all users with Go projects.