Awesome
Kraken Browser
kibrow is dependency injection to register module to global access, without the need to load module using require
or import
again in every file, then module can be accessed as a global with very easy and then only register modules to kraken config, which you often the most used in each every file, example module like axios
, lodash
, moment
etc, for nodejs version check this kinode.
Installation
$ npm install kibrow -S or yarn add kibrow -S
Config
-
Kraken config property
- name for to calling module in each every file and default value is to undefined
- module for to register module to global access and default value is to undefined
- inject for to disabled module to global access, if value is set to false and default value is to true
-
Example Kraken Config Not With SSR
import { krakenConfig } from 'kibrow' import axios from 'axios' import _ from 'lodash' krakenConfig({ packages: [ { name: '$axios', module: axios }, { name: '$_', module: _ } ] })
-
Example Kraken Config With SSR
import { krakenConfig } from 'kibrow/ssr' import axios from 'axios' import _ from 'lodash' krakenConfig({ packages: [ { name: '$axios', module: axios }, { name: '$_', module: _ } ] })
Example Usage
Before usage of this module, if you're using ESLint you have must be added Overrides ESLint Config, and also if you're using typescript add "noImplicitAny": false
to tsconfig.json, for more example usage and implementation check folder demo in this repository here.
-
Overrides Eslint Config
"overrides": [ { "files": [ "**/*.js", "**/*.jsx", "**/*.ts", "**/*.tsx" ], "rules": { "no-restricted-globals": 0 }, "globals": { "self": "writable" } } ]
-
Example Usage Using JavaScript
self.$axios.get('https://jsonplaceholder.typicode.com/users') .then(res => console.log(res.data)) .catch(err => console.log(err.response.data))
-
Example Usage Using TypeScript
self['$axios'].get('https://jsonplaceholder.typicode.com/users') .then(res => console.log(res.data)) .catch(err => console.log(err.response.data))
Testing
-
Testing Via Local
npm test or make test
-
Testing Via Local And Build
make build
-
Testing Via Docker
docker build -t kraken-browser or make dkb tag=kraken-browser
Bugs
For information on bugs related to package libraries, please visit here
Contributing
Want to make kraken-browser more perfect ? Let's contribute and follow the contribution guide.