Giter Club home page Giter Club logo

docz's Introduction

Chat

Docz makes it easy to write and publish beautiful interactive documentation for your code.

Create MDX files showcasing your code and Docz turns them into a live-reloading, production-ready site.

docz example

Table of Contents

πŸ“Ÿ Β  Start a New Project

Use create-docz-app to quickly get started :

npx create-docz-app my-docz-app
# or
yarn create docz-app my-docz-app --example typescript

βž• Β  Add Docz to an Existing Project

Start by adding docz as a dependency :

$ yarn add --dev docz@next # react react-dom

# or

$ npm install --save-dev docz@next # react react-dom

Note: react and react-dom will not be installed automatically. You'll have to install them yourself.

Then, add .mdx files anywhere in your project:

---
name: Button
route: /
---

import { Playground, Props } from 'docz'
import Button from './Button'

# Button

<Props of={Button} />

## Basic usage

<Playground>
  <Button type="submit">Click me</Button>
  <Button>No, click me</Button>
</Playground>

And a Button component Button.jsx:

import React from 'react'
import t from 'prop-types'

const Button = ({ children, type }) => <button type={type}>{children}</button>

Button.propTypes = {
  /**
   * This is a pretty good description for this prop.
   * Button type.
   */
  type: t.oneOf(['button', 'submit', 'reset']),
}
Button.defaultProps = {
  type: 'button',
}
export default Button

Finally, run the Docz development server:

$ yarn docz dev

That's it! You now have an interactive site to showcase and debug your components, and some badass documentation as a nice bonus πŸ‘Š

🎩   Features

  • πŸ”© Powered by Gatsby. Bundling and ecosystem powered by Gatsby.
  • 🧘 Zero config and easy. Don't worry about complex configurations steps.
  • ⚑️ Blazing Fast. Hot reload support and automatic code splitting out of the box.
  • πŸ’… Easy to customize. Create and use real customizable themes.
  • πŸ“ MDX Based. Write markdown enhanced by the power of components.
  • πŸŽ› Pluggable. Use plugins to manipulate and customize Docz to suit your needs.
  • πŸ” Typescript Support. Full support for TypeScript. Write your type definitions with no extra setup required.

Still not convinced? Check our docs to learn more about Docz!

πŸ€” Β  Why?

Libraries that make development easier are appearing every day. Style guides and design systems are growing in popularity. Today, tools that allow us to get our best work done and be efficient are necessary. We shouldn't be spending too much time on tasks that should be trivial. This is why we created Docz.

Documenting code is one of the most important and time-heavy processes when you're creating something new. A lot of time is wasted on unnecessarily attempting to build a documentation site that will match the style you want.

πŸ—ƒ Β  Examples

πŸ‘‰πŸ» Β  More info on our website

πŸŽ› Β  Plugins

🌍   Around the world

πŸ’ͺ🏻 Β  Contributors

This project exists thanks to all the people who contribute. [Contribute].

🀝   Contributing

All kinds of contributions are very welcome and appreciated !

If you want to contribute time to docz then here's a list to get you started :

  1. ⭐️ Star the project
  2. πŸ’¬ Help people in the issues by sharing your knowledge and experience
  3. πŸ› Find and report issues
  4. πŸ“₯ Submit PRs to help solve issues or add features
  5. βœ‹ Influence the future of docz with feature requests

If you're looking for a place to start make sure to check issues tagged with

Good First Issue

And make sure to read the Contributing Guide before making a pull request.

You can also contribute money to help secure docz's future.

Open Collective Patreon

πŸ’­ Β  Need Help?

If you need some help, feel free to open an issue with a description of the problem you're facing or chat with us on our Spectrum Community.

docz's People

Contributors

aleen42 avatar amedora avatar arthurdenner avatar bpetetot avatar diegohaz avatar ejuo avatar elv1n avatar fi3ework avatar glazy avatar ivan-dalmet avatar jared-dev avatar jchadwick avatar jedmao avatar kerumen avatar lesha1201 avatar lettertwo avatar lttb avatar luciditydesign avatar marceloavf avatar mpivaa avatar nicholasess avatar patricksevat avatar pedronauck avatar rakannimer avatar renatorib avatar rfoel avatar selbekk avatar socksrust avatar swapnull avatar yaodingyd avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.