.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / postcss / CONTRIBUTING.md
1 # Contributing Guide to PostCSS
2
3 If you want contribute to PostCSS, there are few things that you should
4 be familiar with.
5
6
7 ## In Case You Have Question About Using PostCSS
8
9 * **Ask for help in [the chat]**
10
11     If you stuck on something there is a big chance
12     that someone had similar problem before.
13
14 [the chat]: https://gitter.im/postcss/postcss
15
16
17 ## Adding Your Plugin to the List
18
19 If you created or found a plugin and want to add it to PostCSS plugins list
20 follow this simple steps.
21
22 PR should not change plugins defined in README it contains only favorite plugins
23 and moderated by PostCSS author.
24
25 Plugins submitted by community located in [`docs/plugins`].
26
27 * **Keep plugins order**
28
29     Be sure that plugin not presented yet and find suitable position
30     in alphabetic order for it.
31     But plugins with `postcss-` prefix should come first.
32
33 * **Check spelling**
34
35     Before submitting PR be sure that spelling check pass.
36     For that run command `npm test`.
37     If it fails with unknown word error, add it as word
38     to `.yaspellerrc` dictionary.
39
40 * **Check PostCSS plugin guideline**
41
42     Provided plugin should match plugin [guidelines].
43
44 - **Provide link to suggested plugin**
45
46     Make sure your pull request description contains link to plugin
47     you are willing to add.
48
49 [`docs/plugins`]: https://github.com/postcss/postcss/blob/master/docs/plugins.md
50 [guidelines]:     https://github.com/postcss/postcss/blob/master/docs/guidelines/plugin.md
51
52
53 ## TypeScript Declaration Improvements
54
55 If you found a bug or want to add certain improvements to types declaration file
56
57 * **Check current TypeScript styling**
58
59    Be sure that your changes match TypeScript styling rules defined in typings file.
60     * We use classes for existing JS classes like `Stringifier`.
61     * Namespaces used for separating functions related to same subject.
62     * Interfaces used for defining custom types.
63
64    Make sure you read through declaration file writing [best practices]
65    by TypeScript team.
66
67 [best practices]: https://www.typescriptlang.org/docs/handbook/declaration-files/do-s-and-don-ts.html
68
69
70 ## Core Development
71
72 If you want to add new feature or fix existed issue
73
74 - **Become familiar with PostCSS architecture**
75
76     For gentle intro to PostCSS architecture look through our [guide].
77
78 [guide]: https://github.com/postcss/postcss/blob/master/docs/architecture.md