Skip to content
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

Guides #7

Open
4 of 12 tasks
Murderlon opened this issue Jun 1, 2019 · 10 comments
Open
4 of 12 tasks

Guides #7

Murderlon opened this issue Jun 1, 2019 · 10 comments
Labels
📚 area/docs This affects documentation help wanted 🙏 This could use your insight or help 🦋 type/enhancement This is great to have 🙆 yes/confirmed This is confirmed and ready to be worked on

Comments

@Murderlon
Copy link
Member

Murderlon commented Jun 1, 2019

As there has been talk of centralizing (some) of the docs and improving on helping users get started, I decided to start with writing more guides like the ones currently online and let those act as the introductory knowledge base about the ecosystem. These guides will probably get a prominent place on v2 of this website.

Any feedback is appreciated as well as ideas for new guides!


  • Introduction to unified

After reading this guide you will: understand what unified does, get a taste of the ecosystem., know how it can be used, know what parts (processors) you need for your (future) use case, have a list of resources to continue learning or get started.

  • Using unified

Learn how to use unified by transforming markdown to HTML. It’ll also show how to use plugins, add a table of contents, and check prose.

  • Create an online editor

Learn how to create an interactive online editor with unified. This guide creates a demo visualising syntactic properties of text.

  • Setting up tooling for browser support.

Learn how to setup your favorite build tool to make unified usable in the browser.

  • Introduction to syntax trees with unist, mdast, hast, and nlcst

As mentioned in syntax-tree/ideas#7, this should not be writing yet another book on syntax trees, that largely duplicates existing resources. This guide should focus on getting a basic but sufficient mental model about syntax trees, how they're used in the ecosystem, and what specs like unist are.

  • How to create a new syntax tree format

Learn how to make a proper specification for a content format.

  • How to get started with writing plugins

This guide goes deeper into how unified and processors work under the hood and explains some common approaches. Furthermore, it goes into the pros and cons of writing a plugin at parser level or, for instance, mdast.

  • Writing a hast plugin

Walk through of an example plugin with hast.

  • Writing a mdast plugin

Walk through of an example plugin with mdast.

  • Writing as nlcst plugin

Walk through of an example plugin with nlcst.

  • Writing a remark parser plugin.

Walk through of an example parser plugin .

  • vfile?

Should probably be included but not sure how yet.

@ChristianMurphy
Copy link
Member

Another possible guide series.
Using Unified with:

  • Rollup
  • WebPack
  • Angular CLI
  • Create React App
  • Vue CLI

See unifiedjs/unified#34 for context

@wooorm
Copy link
Member

wooorm commented Jun 12, 2019

Yeah that’s a great idea as well!

@wooorm
Copy link
Member

wooorm commented Jun 13, 2019

This guide for Pandoc clearly explains some of the things we also need to explain: https://pandoc.org/filters.html

@wooorm
Copy link
Member

wooorm commented Jun 22, 2019

Another idea: a guide on how to create a parser / syntax-tree format (spectrum)

@Murderlon
Copy link
Member Author

Good one! I updated the issue to incorporate these new ideas.

@wooorm wooorm added 📚 area/docs This affects documentation 🙆 yes/confirmed This is confirmed and ready to be worked on 🦋 type/enhancement This is great to have labels Aug 10, 2019
@ChristianMurphy
Copy link
Member

There is also a unified handbook now, is there any way these two efforts could be consolidated? /cc @johno

@Murderlon Murderlon reopened this Oct 31, 2019
@Murderlon
Copy link
Member Author

(accidentally closed the issue for a sec)

The to do list in it's current form mostly aligns with the intended contents of the handbook. But I'm not completely sure if the handbook should supersede all guides. I'd say it depends on how both would be presented.

Originally, I imagined the guides to live on V2 of the website with a title, subtitle, and reading time. They would be small and focused which would encourage users, who for instance just came to figure out what unified is about, to quickly and easily do just that. Instead of linking to a handbook GH readme with a scary table of contents with things like unist, abstract syntax trees, traversal, etc.

However, the handbook itself could be a readme and be presented on the website, structured and split up in way that makes sense for users, future plugin authors, and potential other areas.


  • How do you (@unifiedjs/core) see the distinction between guides and the handbook?
  • How would we link and present the centralized knowledge (either the handbook, guides, or both)?

@wooorm
Copy link
Member

wooorm commented Dec 17, 2019

If anyone wants to restart work on this, I feel that the current set up makes it easier to work on them!

@januswel
Copy link

I searched docs to extends Markdown and found this

unified is really awesome but hard to use, because canonical documents for edge cases (like extending Markdown) are not available

But it seems this issue is not proceeding 🤔
Is it OK to send some PRs for the tasks?
Or, users should refer the handbook?

@ChristianMurphy
Copy link
Member

PRs enhancing and adding to the handbook are welcome!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
📚 area/docs This affects documentation help wanted 🙏 This could use your insight or help 🦋 type/enhancement This is great to have 🙆 yes/confirmed This is confirmed and ready to be worked on
Development

No branches or pull requests

4 participants