
Product
Introducing Rust Support in Socket
Socket now supports Rust and Cargo, offering package search for all users and experimental SBOM generation for enterprise projects.
@substrate-system/routes
Advanced tools
Route matcher devised for shared rendering JavaScript applications
Route matcher devised for shared rendering JavaScript applications
npm install -S @substrate-system/routes
Featuring ESM or CJS versions via package.json
exports
field.
// esm
import Router from '@substrate-system/routes'
// cjs
const Router = require('@substrate-system/routes').default
Get a router instance
import Router from '@substrate-system/routes'
var router = new Router()
router.addRoute('/articles', getArticles);
router.addRoute('/articles/:slug', getArticleBySlug);
router.addRoute('/articles/search/*', searchForArticles);
// can also chain the method calls
router
.addRoute('/foo', () => {/* ... */})
.addRoute('/bar', () => {/* ... */})
const match = router.match('/articles');
// => RouteMatch
interface RouteMatch {
params:Record<string, string>; // <-- e.g. { slug: 'article-title' }
splats:string[];
route:string;
next?:((...any)=>any)|null;
action?:(...any)=>any;
index?:number;
}
You'll get null
back if no route matches the provided URL. Otherwise, the
route match will provide all the useful information you need inside an object.
Key | Description |
---|---|
action | The action passed to addRoute as a second argument. Using a function is recommended |
next | Fall through to the next route, or null if no other routes match |
route | The route passed to addRoute as the first argument |
params | An object containing the values for named parameters in the route |
splats | An object filled with the values for wildcard parameters |
MIT
This is a fork of ruta3, just adding types.
FAQs
Route matcher devised for shared rendering JavaScript applications
We found that @substrate-system/routes demonstrated a healthy version release cadence and project activity because the last version was released less than 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.
Product
Socket now supports Rust and Cargo, offering package search for all users and experimental SBOM generation for enterprise projects.
Product
Socket’s precomputed reachability slashes false positives by flagging up to 80% of vulnerabilities as irrelevant, with no setup and instant results.
Product
Socket is launching experimental protection for Chrome extensions, scanning for malware and risky permissions to prevent silent supply chain attacks.