-
-
Notifications
You must be signed in to change notification settings - Fork 9.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Get some features from ClojureScript devcards #19
Comments
One of other things that I'm working on to add for my team is markdown description. Perhaps I can send another PR on that? I don't quite understand point 2. Mind to elaborate more? |
That's a great idea! |
@sammkj yes please 👍
Basically, with this we are just reading propTypes for a given component class and just list them. It's kind of a documentation for a component. @glenjamin Thanks. |
Other than a property name, there's not enough reflective data in Reacts PropTypes to extract that information. Facebook uses (and recommends) static analysis to access that data: facebook/react#4794 |
Also, why do you not recommend writing tests inside of stories? |
@arunoda Hi there, Have some local groundwork for exactly these two features that I'd like to integrate in your tool :)
How shall i put a note that i started to work on it? And what do you think if i'll develop it? |
@nicksp awesome.
import { storiesOf, markdown } from '@kadira/storybook';
storiesOf('Something')
.add('description', markdown(`
## This is the a great component.
...
`)); This markdown will return a React element. So, it will work without any additional setup.
Yes. It's nice to show this with the user's component. This is also same for the markdown description as well. I think it's great if we can create a new panel just below the iframe which shows these information if it contains within a story. |
@arunoda How shall i start? I mean do i need to create and issues and mark that i'm working on it or what? So, since this is a relatively complex task, i cat start with little things first and go further step by step. And in the meantime we can discuss the implemented stuff and alter it if needed. |
@nicksp just add a note and start working on it. May be just work on a simple task. |
@arunoda Sounds good. Will ad a note right here then, in that specific issue. But since i don't have that much free time unfortunately, it won't be fast development process... just so you know. But i'll do my best. Would really love to pimp that project. |
@nicksp No problem. Take your time. If we are working on that, I will let you know. |
Started implementation of the following tasks:
|
@nicksp We discuss a bit about this in our office. So, we thought rather than doing any changes to Storybook core, may be we can use some helper components to achieve these. See some sample code: import React from 'react';
import { storiesOf, action } from '@kadira/storybook';
import { Button } from '../button';
import { Container, Markdown, PropTable } from '@you/storybook-helpers';
storiesOf('Button', module)
.add('with a text', () => (
<Container>
<Markdown>
## Rendering a button
This is how you can render a button.
</Markdown>
<Button>Button Name</Button>
<PropTable component={Button} />
</Container>
)); |
The only catch with something like that, would be if you're still wanting that component resizer (#17) . That resizes the whole So you would end up possibly needing another helper to wrap the component (and then only resize that?). <Container>
<Markdown>
## Rendering a button
This is how you can render a button.
</Markdown>
<Component>
<Button>Text name</Button>
</Component>
<PropTable component={Button} />
</Container> |
@jeef3 That's a good point. |
@arunoda Yep, sounds like a good solution. I like idea of separate components doing its stuff only. So, will implement on my account then, as a separate component which you can you later. |
I'm going to close this since we'll be working on some of these features as extensions to react storybook. We'll be launching an addon API soon. |
Add Circle-Ci build status image to the readme
fixes #18 : create react app public directory
Write Changelog: support --patches-only option
Implemented bare minimum list component
See: https://github.com/bhauman/devcards
Clojurescript devcards is a very similar project but they have implemented some cool features which reminds me iPython notebooks.
It has a concept of card (which is similar to story in our case). Unlike in our case, we can render not only React elements, but markdown and tests as cards.
See: https://vimeo.com/97078905
Which is very useful for creating self describing documentations.
What we can get from Devcards
It's unwise if we just clone all the features of devcards. But we can inspire from it. Here are some of the things we can do.
The text was updated successfully, but these errors were encountered: