Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
attributes-kit
Advanced tools
Attributes Kit is a (as the name suggest) kit which helps you with rendering MSON (plain-text, human and machine readable, description format for describing data structures).
For instance—it turns the following...
- id: 1
- name: A green door
- price: 12.50
- tags: home, green
...into this.
Please see the list of supported features →
This application has been deployed to Heroku, try it out at attributes-kit.herokuapp.com.
Note: Attributes Kit hasn't been published to NPM just yet, before we do that, please
git clone
the repository.
$ git clone git@github.com:apiaryio/attributes-kit.git
cd ./attributes-kit
npm install
npm start
You can go to localhost:8080 to try out the Playground, or to /examples.html to see the list of examples.
Render the Attributes Kit using the render
method.
import AttributesKit from 'attributes-kit';
let attributes = new AttributesKit({element, options});
attributes.render(refractElement);
Or you can use the React component directly.
import {Attributes} from 'attributes-kit';
// E.g. <Attributes element={refractElement} />
You're done! Great job! :+1:
Please see the STATUS.md
file.
:point_right: You are using version 0.10.39
(or newer) of Node
node -v
0.10.39
:point_right: You are using version 2.11.3
(or newer) of NPM
npm -v
2.11.3
Browser |
---|
render
Methodimport AttributesKit from 'attributes-kit';
AttributesKit.render(refractElement, element, options);
import AttributesKit from 'attributes-kit';
let attributes = new AttributesKit({element, options});
attributes.render(refractElement);
import ReactDom from 'react-dom';
import {Attributes} from 'attributes-kit';
ReactDom.render(<Attributes element={refractElement} />, element);
Attributes Kit always takes the same parameters.
Parameter | Description |
---|---|
refractElement | Refract element to be rendered. |
element | A DOM node or a CSS selector; Attributes Kit will be rendered inside the element. |
options | An options object to customize the rendering. |
npm install attributes-kit
import AttributesKit from 'attributes-kit';
var AttributesKit = require('attributes-kit');
Use the Attributes Kit, you can see the API.
<script>
tagIf you prefer to drop a <script>
tag in your page, here's how to do it. Just a note—all builds do support UMD (AMD and CommonJS) out of the box.
Go to the Releases page and download the latest release.
You can download the build directly, or all builds are located in the dist
folder.
Development Build |
---|
attributes-kit.js |
Works out of the box, the uncompressed file is best used during development or debugging. |
Production Build |
---|
attributes-kit-min.js; attributes-kit-min.js.map |
Works out of the box, compressed version saves bandwidth and improves performance in production. attributes-kit-min.js.map is not required to run the Kit. |
<script>
tag<script src="./attributes-kit.js"></script>
var AttributesKit = window.AttributesKit;
AttributesKit.render(refractElement, element, options);
Please see the API.
There are two more builds mainly for more advanced use cases.
Build without React |
---|
attributes-kit-no-react.js |
This build does not contain React dependency. You have to install React manually, or your application lists React in its dependencies (in package.json ). |
Build without dependencies |
---|
attributes-kit-no-deps.js |
This build does not contain any dependencies of the Attributes Kit. You have to install all dependencies manually, or your application lists them all in (e.g.) package.json . |
You can use the Attributes Kit on the server too. For instance—you can generate HTML on the server and send the markup down on the initial request for faster page loads and to allow search engines to crawl you pages for SEO purposes.
npm install attributes-kit
Please mind the dist/attributes-kit-server
suffix.
import AttributesKit from 'attributes-kit/dist/attributes-kit-server';
var AttributesKit = require('attributes-kit/dist/attributes-kit-server');
import React from 'react';
import ReactDomServer from 'react-dom/server'
import {Attributes} from 'attributes-kit/dist/attributes-kit-server';
const element = React.createElement(Attributes, {
refractElement: [Refract Element]
});
ReactDomServer.renderToString(element);
$ git clone git@github.com:apiaryio/attributes-kit.git
cd ./attributes-kit
npm install
npm start
Congratulations! You are all set to start developing now! :rocket:
Attributes Kit is maintained under the Semantic Versioning guidelines. Releases will be numbered with the following format.
<major>.<minor>.<patch>
And constructed with the following guidelines.
<major>
<minor>
<patch>
Please see the Releases section of our GitHub project for changelog.
Please see the Contributions guidelines.
This project adheres to the Open Code of Conduct. By participating, you are expected to honor this code.
MIT.
FAQs
React component for MSON rendering
The npm package attributes-kit receives a total of 34 weekly downloads. As such, attributes-kit popularity was classified as not popular.
We found that attributes-kit demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 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
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.