Skip to content

Commit 448c708

Browse files
authored
ci: Enable markdown linting and spell checking (#990)
1 parent 130f102 commit 448c708

35 files changed

+996
-587
lines changed

CODE_OF_CONDUCT.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Code of Conduct
22

3-
This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. This code of conduct has been adopted by many other open source communities and we feel it expresses our values well.
3+
This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. This code of conduct has been adopted by many other open source communities and we feel it expresses our values well.
44

55
As contributors and maintainers of this project, and in the interest of fostering an open and welcoming community, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities.
66

LICENSE.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
MIT License
1+
# MIT License
22

33
Copyright (c) 2021 Uno Platform
44

README.md

+12-6
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
1+
# Uno Toolkit
2+
13
<p align="center">
2-
<img src="doc/assets/material-toolkit-design-system.png">
4+
<img src="doc/assets/material-toolkit-design-system.png" alt="Material Toolkit Design System">
35
</p>
46

5-
# Uno Toolkit
6-
7-
[![Open Uno in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/unoplatform/uno.toolkit.ui)
7+
[![Open Uno in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/unoplatform/uno.toolkit.ui)
88
[![Azure DevOps](https://uno-platform.visualstudio.com/Uno%20Platform/_apis/build/status/Uno%20Platform/Uno.WindowsCommunityToolkit%20-%20CI?branchName=unorel%2F7.1)](https://uno-platform.visualstudio.com/Uno%20Platform/_build/latest?definitionId=14&branchName=unorel%2F7.1)
99
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE)
1010

1111
Uno Toolkit provides a set of higher-level UI Controls designed specifically for multi-platform, responsive applications.
1212

1313
## Packages
14+
1415
Package|Stable|Preview
1516
-|-|-
1617
Uno.Toolkit.UI|[![NuGet stable](https://img.shields.io/nuget/v/Uno.Toolkit.UI?label=stable)](https://www.nuget.org/packages/Uno.Toolkit.UI)|[![NuGet preview](https://img.shields.io/nuget/vpre/Uno.Toolkit.UI?label=preview)](https://www.nuget.org/packages/Uno.Toolkit.UI)
@@ -21,34 +22,39 @@ Uno.Toolkit.WinUI.Material|[![NuGet stable](https://img.shields.io/nuget/v/Uno.T
2122
Uno.Toolkit.WinUI.Cupertino|[![NuGet stable](https://img.shields.io/nuget/v/Uno.Toolkit.WinUI.Cupertino?label=stable)](https://www.nuget.org/packages/Uno.Toolkit.WinUI.Cupertino)|[![NuGet preview](https://img.shields.io/nuget/vpre/Uno.Toolkit.WinUI.Cupertino?label=preview)](https://www.nuget.org/packages/Uno.Toolkit.WinUI.Cupertino)
2223

2324
## Getting Started
25+
2426
See the complete [documentation](#documentation) for starting with this library.
2527
For a larger example and features demo, visit the [Uno Gallery](https://github.com/unoplatform/uno.gallery) repository.
2628

2729
## Documentation
30+
2831
All documentation for `Uno.Toolkit.UI` can be found on our [website](https://platform.uno/docs/articles/external/uno.toolkit.ui/doc/getting-started.html).
2932

3033
## Contributing
31-
Please read our [contributing guide](https://github.com/unoplatform/uno/blob/master/CONTRIBUTING.md) to learn about our development process and how to propose bug fixes and improvements.
34+
35+
Please read our [contributing guide](https://github.com/unoplatform/uno/blob/master/CONTRIBUTING.md) to learn about our development process and how to propose bug fixes and improvements.
3236
Come visit us on our [Discord Channel #uno-platform](https://discord.gg/eBHZSKG) for help on how to contribute!
3337

3438
Contribute to Uno in your browser using [GitPod.io](https://gitpod.io), follow [our guide here](https://platform.uno/docs/articles/features/working-with-gitpod.html).
3539

3640
Be also mindful of our [Code of Conduct](CODE_OF_CONDUCT.md).
3741

3842
## Acknowledgments
43+
3944
- [Uno Platform](https://platform.uno)
4045
- [Material Design 3](https://m3.material.io/)
4146
- [Material Design](https://material.io/design)
4247
- [Cupertino - Human Interface Guideline styling](https://developer.apple.com/design/human-interface-guidelines)
4348
- [WinUI](https://microsoft.github.io/microsoft-ui-xaml/)
4449

4550
## License
51+
4652
This project is licensed under the Apache 2.0 license - see the [LICENSE](LICENSE) file for details.
4753

4854
## Contributors
55+
4956
Thanks go to these wonderful people (List made with [contrib.rocks](https://contrib.rocks)):
5057

5158
[![Uno.Toolkit.UI Contributors](https://contrib.rocks/image?repo=unoplatform/uno.toolkit.ui)](https://github.com/unoplatform/uno.toolkit.ui/graphs/contributors)
5259

5360
💖 Thank you.
54-

build/workflow/.markdownlint.json

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"default": true,
3+
"line-length": false,
4+
"commands-show-output": false,
5+
"no-bare-urls": false,
6+
"no-inline-html": false,
7+
"no-duplicate-heading": false,
8+
"no-emphasis-as-heading": false
9+
}

build/workflow/cspell.json

+204
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,204 @@
1+
{
2+
"version": "0.2",
3+
"language": "en",
4+
"words": [
5+
"Avalonia",
6+
"ambiently",
7+
"binlog",
8+
"Blazor",
9+
"blockquotes",
10+
"Bootstrapper",
11+
"brotli",
12+
"browsersync",
13+
"bytecode",
14+
"Callout",
15+
"chatops",
16+
"codebases",
17+
"Codespace",
18+
"Codespaces",
19+
"Contoso",
20+
"Cupertino",
21+
"customizability",
22+
"databinding",
23+
"datacontext",
24+
"datagrid",
25+
"devs",
26+
"Dismissable",
27+
"Docfx",
28+
"ellipsize",
29+
"Expando",
30+
"flyouts",
31+
"Framebuffer",
32+
"Gamepad",
33+
"gamepads",
34+
"Geolocation",
35+
"globbing",
36+
"Gyrometer",
37+
"Hanja",
38+
"hectopascals",
39+
"Inlines",
40+
"interactable",
41+
"keychain",
42+
"laggy",
43+
"layouter",
44+
"layouting",
45+
"Listview",
46+
"LLRM",
47+
"mergeable",
48+
"MSAL",
49+
"msbuild",
50+
"MVUX",
51+
"MVVM",
52+
"NETSDK",
53+
"netstandard",
54+
"oidc",
55+
"Omnisharp",
56+
"overscroll",
57+
"Packt",
58+
"parameterless",
59+
"pickable",
60+
"Pluralsight",
61+
"POSIX",
62+
"reentrantly",
63+
"Resizetizer",
64+
"resw",
65+
"roadmap",
66+
"safearea",
67+
"sandboxed",
68+
"Segoe",
69+
"Silverlight",
70+
"Skia",
71+
"skiasharp",
72+
"Storyboarded",
73+
"struct",
74+
"Syncfusion",
75+
"templatable",
76+
"templating",
77+
"timespan",
78+
"Tizen",
79+
"TLDR",
80+
"toolkits",
81+
"triaging",
82+
"UI's",
83+
"unmanaged",
84+
"Uno's",
85+
"unoplatform",
86+
"UWP's",
87+
"VSIX",
88+
"walkthrough",
89+
"WEBASSEMBLY",
90+
"Haptics"
91+
],
92+
"ignoreWords": [
93+
"ADAL",
94+
"addin",
95+
"AEHD",
96+
"appsettings",
97+
"Authenticode",
98+
"automagically",
99+
"Divio's",
100+
"emcc",
101+
"emscripten",
102+
"Findlay",
103+
"Flatpickr",
104+
"Giesel",
105+
"GNSS",
106+
"GPIO",
107+
"Grigorik",
108+
"hdpi",
109+
"Headered",
110+
"Hoefling",
111+
"HRESULT",
112+
"Icaza",
113+
"IDBFS",
114+
"Ilya",
115+
"Infragistics",
116+
"jonathanpeppers's",
117+
"Krueger",
118+
"libgtk",
119+
"Liu's",
120+
"Logpoints",
121+
"macios",
122+
"Matteo",
123+
"McCaffrey",
124+
"mdpi",
125+
"Mergify",
126+
"mlaunch",
127+
"muxc",
128+
"netstd",
129+
"nventive",
130+
"odel",
131+
"Onoh",
132+
"pdate",
133+
"Ronica",
134+
"Serilog",
135+
"Singh",
136+
"slnf",
137+
"Stetho",
138+
"Talkin",
139+
"UADO",
140+
"Udemy",
141+
"UNOB",
142+
"unpackaged",
143+
"winappsdk",
144+
"winui",
145+
"xhdpi",
146+
"xxhdpi",
147+
"xxxhdpi",
148+
"Yowza"
149+
],
150+
"patterns": [
151+
{
152+
"name": "Markdown uid",
153+
"pattern": "^(?=uid:).*$",
154+
"description": ""
155+
},
156+
{
157+
"name": "Markdown links",
158+
"pattern": "\\((.*)\\)",
159+
"description": ""
160+
},
161+
{
162+
"name": "Markdown code blocks",
163+
"pattern": "/^(\\s*`{3,}).*[\\s\\S]*?^\\1/gmx",
164+
"description": "Taken from the cSpell example at https://cspell.org/configuration/patterns/#verbose-regular-expressions"
165+
},
166+
{
167+
"name": "Inline code blocks",
168+
"pattern": "\\`([^\\`\\r\\n]+?)\\`",
169+
"description": "https://stackoverflow.com/questions/41274241/how-to-capture-inline-markdown-code-but-not-a-markdown-code-fence-with-regex"
170+
},
171+
{
172+
"name": "Link contents",
173+
"pattern": "\\<a(.*)\\>",
174+
"description": ""
175+
},
176+
{
177+
"name": "Snippet references",
178+
"pattern": "-- snippet:(.*)",
179+
"description": ""
180+
},
181+
{
182+
"name": "Snippet references 2",
183+
"pattern": "\\<\\[sample:(.*)",
184+
"description": "another kind of snippet reference"
185+
},
186+
{
187+
"name": "Multi-line code blocks",
188+
"pattern": "/^\\s*```[\\s\\S]*?^\\s*```/gm"
189+
}
190+
],
191+
"ignoreRegExpList": [
192+
"Markdown uid",
193+
"Markdown links",
194+
"Markdown code blocks",
195+
"Inline code blocks",
196+
"Link contents",
197+
"Snippet references",
198+
"Snippet references 2",
199+
"Multi-line code blocks"
200+
],
201+
"ignorePaths": [
202+
"../doc/index.md"
203+
]
204+
}

build/workflow/pipeline.yml

+19-7
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,22 @@ variables:
4545
IsCanaryBranch: $[startsWith(variables['Build.SourceBranch'], 'refs/heads/canaries/')]
4646
IsReleaseBranch: $[or(eq(variables['Build.SourceBranch'], 'refs/heads/main'), startsWith(variables['Build.SourceBranch'], 'refs/heads/feature/'), startsWith(variables['Build.SourceBranch'], 'refs/heads/release/'))]
4747

48-
jobs:
49-
- template: stage-build-packages.yml
50-
- template: stage-uitests-wasm.yml
51-
- template: stage-build-ios.yml
52-
- template: stage-build-android.yml
53-
- template: stage-uitests-ios.yml
54-
- template: stage-uitests-android.yml
48+
stages:
49+
- stage: Validations
50+
displayName: Validations
51+
jobs:
52+
- template: stage-validations.yml
53+
54+
- stage: Packages
55+
dependsOn: Validations
56+
jobs:
57+
- template: stage-build-packages.yml
58+
59+
- stage: Tests
60+
dependsOn: Validations
61+
jobs:
62+
- template: stage-uitests-wasm.yml
63+
- template: stage-build-ios.yml
64+
- template: stage-uitests-ios.yml
65+
- template: stage-build-android.yml
66+
- template: stage-uitests-android.yml

build/workflow/stage-validations.yml

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
jobs:
2+
- job: spell_checking
3+
displayName: 'Spell Checking Validation'
4+
5+
pool:
6+
vmImage: 'ubuntu-latest'
7+
8+
steps:
9+
- checkout: self
10+
fetchDepth: 1
11+
clean: true
12+
13+
- task: NodeTool@0
14+
inputs:
15+
versionSpec: '18.x'
16+
17+
- bash: npm install -g cspell
18+
displayName: Install cSpell
19+
20+
- bash: cspell --config $(Build.SourcesDirectory)/build/workflow/cspell.json "**/*.md" --no-progress
21+
displayName: Run Spell Checking
22+
23+
- job: markdown_link
24+
displayName: 'Markdown Validation'
25+
26+
pool:
27+
vmImage: 'ubuntu-latest'
28+
29+
steps:
30+
- checkout: self
31+
fetchDepth: 1
32+
clean: true
33+
34+
- task: NodeTool@0
35+
inputs:
36+
versionSpec: '18.x'
37+
38+
- bash: npm install -g markdownlint-cli
39+
displayName: Install markdownlint-cli
40+
41+
- bash: markdownlint -c $(Build.SourcesDirectory)/build/workflow/.markdownlint.json "**/*.md"
42+
displayName: Run Markdown Linter
Loading
-1.35 KB
Loading

0 commit comments

Comments
 (0)