Skip to content

docs: underline URLs #8217

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

Closed
wants to merge 5 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/Contributing.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,5 @@ So, from the bottom of our hearts, _thank you_ 💕.

## Getting Started

Please read our [Code of Conduct](https://github.com/typescript-eslint/typescript-eslint/blob/main/CODE_OF_CONDUCT.md) first.
If you're new to open source, you may also find the [How to Contribute to Open Source](https://opensource.guide/how-to-contribute) guide from https://opensource.guide useful.
Please read our <u>[Code of Conduct](https://github.com/typescript-eslint/typescript-eslint/blob/main/CODE_OF_CONDUCT.md)</u> first.
If you're new to open source, you may also find the <u>[How to Contribute to Open Source](https://opensource.guide/how-to-contribute)</u> guide from <u>https://opensource.guide</u> useful.
Comment on lines -14 to +15
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[just asking] Oh, this approach would require us to remember to always wrap any links in our docs in a <u> tag. Maybe we should underline them with css only? text-decoration: underline should do the trick

Moreover, I suppose we might want links in blog posts to be underlined too. I think it would be much easier to maintain if the underline was added automatically

So I guess we can just apply text-decoration to all links inside blog/docs container. Or vice-versa - apply underline to all a tags on the page and disable text-decoration in undesirable places like the side bar or table of content

What do you think?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps Docusaurus even has some functionality to customize markdown links (though I haven't searched)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I definitely agree, I'm new to the MDX format and I was unsure how styling was applied in these pages in the first place aside from general markdown syntax.

Should be a fairly easy fix, I'll get it done in the morning.

Copy link
Member

@JoshuaKGoldberg JoshuaKGoldberg Jan 8, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yup, what @auvred said - we're definitely going to forget this if we need to do it manually. And it's a bit of a pain. There should be a way to apply a straightforward style for most or all of the links inside markdown content.

14 changes: 7 additions & 7 deletions docs/Getting_Started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ These steps will get you running ESLint with our recommended rules on your TypeS

### Step 1: Installation

First, install the required packages for [ESLint](https://eslint.org), [TypeScript](https://typescriptlang.org), and this plugin:
First, install the required packages for <u>[ESLint](https://eslint.org)</u>, <u>[TypeScript](https://typescriptlang.org)</u>, and this plugin:

```bash npm2yarn
npm install --save-dev @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint typescript
Expand All @@ -30,7 +30,7 @@ module.exports = {
```

:::info
If your project doesn't use ESM, naming the file as `.eslintrc.js` is fine. See [ESLint's Configuration Files docs](https://eslint.org/docs/user-guide/configuring/configuration-files) for more info.
If your project doesn't use ESM, naming the file as `.eslintrc.js` is fine. See <u>[ESLint's Configuration Files docs](https://eslint.org/docs/user-guide/configuring/configuration-files)</u> for more info.
:::

### Step 3: Running ESLint
Expand Down Expand Up @@ -76,12 +76,12 @@ ESLint will lint all TypeScript compatible files within the current folder, and

## Next Steps

We provide a plethora of powerful rules that utilize the power of TypeScript's type information. [Visit the next page for a setup guide](./linting/Typed_Linting.mdx 'Visit the next page for a typed rules setup guide').
We provide a plethora of powerful rules that utilize the power of TypeScript's type information. <u>[Visit the next page for a setup guide](./linting/Typed_Linting.mdx 'Visit the next page for a typed rules setup guide')</u>.

If you're having problems getting this working, please have a look at our [Troubleshooting & FAQs](./linting/Troubleshooting.mdx).
If you're having problems getting this working, please have a look at our <u>[Troubleshooting & FAQs](./linting/Troubleshooting.mdx)</u>.

### Documentation Resources

- You can read more about configuring ESLint [in their documentation on configuration](https://eslint.org/docs/user-guide/configuring).
- You can read more about the rules provided by ESLint [in their documentation on their rules](https://eslint.org/docs/rules/).
- You can read more about the rules provided by typescript-eslint in [our rules documentation](/rules).
- You can read more about configuring ESLint <u>[in their documentation on configuration](https://eslint.org/docs/user-guide/configuring)</u>.
- You can read more about the rules provided by ESLint <u>[in their documentation on their rules](https://eslint.org/docs/rules/)</u>.
- You can read more about the rules provided by typescript-eslint in <u>[our rules documentation](/rules)</u>.
4 changes: 2 additions & 2 deletions docs/Maintenance.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,13 @@ We do our best to roughly adhere to this model - though at times we may shortcut

### Changes to Governance

Any changes to this document will be posted for open discussion on the [typescript-eslint GitHub Discussions](https://github.com/typescript-eslint/typescript-eslint/discussions) and kept open for at least one month.
Any changes to this document will be posted for open discussion on the <u>[typescript-eslint GitHub Discussions](https://github.com/typescript-eslint/typescript-eslint/discussions)</u> and kept open for at least one month.
The discussion will be shared at the beginning, middle, and end of that month on Discord and all our social media accounts.

## Providing Feedback

We're always receptive to suggestions on how to improve our processes!
For general feedback, we'd suggest posting in the [`#development` channel on Discord](https://discord.com/channels/1026804805894672454/1088474511759917106).
For general feedback, we'd suggest posting in the <u>[`#development` channel on Discord](https://discord.com/channels/1026804805894672454/1088474511759917106)</u>.
We can help you turn that into a GitHub discussion.

:::note
Expand Down
36 changes: 27 additions & 9 deletions docs/Packages.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,34 @@ id: packages
title: Packages
---

The `@typescript-eslint/*` packages are all stored in [our GitHub monorepo](https://github.com/typescript-eslint/typescript-eslint).
The monorepo is built and released with [Nx](https://nx.dev).
The `@typescript-eslint/*` packages are all stored in <u>[our GitHub monorepo](https://github.com/typescript-eslint/typescript-eslint)</u>.
The monorepo is built and released with <u>[Nx](https://nx.dev)</u>.

Each page in this section corresponds to a package we intentionally expose to users.
They are:

- [`@typescript-eslint/eslint-plugin`](./packages/ESLint_Plugin.mdx): An ESLint plugin which provides lint rules for TypeScript codebases.
- [`@typescript-eslint/eslint-plugin-tslint`](./packages/ESLint_Plugin_TSLint.mdx): An ESLint plugin that allows running TSLint rules within ESLint to help you migrate from TSLint to ESLint.
- [`@typescript-eslint/parser`](./packages/Parser.mdx): An ESLint parser which allows for ESLint to lint TypeScript source code.
- [`@typescript-eslint/rule-tester`](./packages/Rule_Tester.mdx): A utility for testing ESLint rules.
- [`@typescript-eslint/scope-manager`](./packages/Scope_Manager.mdx): A fork of [`eslint-scope`](https://github.com/eslint/eslint-scope), enhanced to support TypeScript functionality.
- [`@typescript-eslint/typescript-estree`](./packages/TypeScript_ESTree.mdx): The underlying code used by [`@typescript-eslint/parser`](./packages/Parser.mdx) that converts TypeScript source code into an [ESTree](https://github.com/estree/estree)-compatible form.
- [`@typescript-eslint/utils`](./packages/Utils.mdx): Utilities for working with TypeScript + ESLint together.
- <u>[`@typescript-eslint/eslint-plugin`](./packages/ESLint_Plugin.mdx)</u>: An
ESLint plugin which provides lint rules for TypeScript codebases.
- <u>
[`@typescript-eslint/eslint-plugin-tslint`](./packages/ESLint_Plugin_TSLint.mdx)
</u>
: An ESLint plugin that allows running TSLint rules within ESLint to help you migrate
from TSLint to ESLint.
- <u>[`@typescript-eslint/parser`](./packages/Parser.mdx)</u>: An ESLint parser
which allows for ESLint to lint TypeScript source code.
- <u>[`@typescript-eslint/rule-tester`](./packages/Rule_Tester.mdx)</u>: A
utility for testing ESLint rules.
- <u>[`@typescript-eslint/scope-manager`](./packages/Scope_Manager.mdx)</u>: A
fork of <u>[`eslint-scope`](https://github.com/eslint/eslint-scope)</u>, enhanced
to support TypeScript functionality.
- <u>
[`@typescript-eslint/typescript-estree`](./packages/TypeScript_ESTree.mdx)
</u>
: The underlying code used by <u>
[`@typescript-eslint/parser`](./packages/Parser.mdx)
</u> that converts TypeScript source code into an <u>
[ESTree](https://github.com/estree/estree)
</u>
-compatible form.
- <u>[`@typescript-eslint/utils`](./packages/Utils.mdx)</u>: Utilities for
working with TypeScript + ESLint together.
10 changes: 5 additions & 5 deletions docs/contributing/Discussions.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ id: discussions
title: Discussions
---

Most proposals in the typescript-eslint repository happen in [GitHub Issues](https://docs.github.com/issues).
We generally try to keep conversations inside issues for their discoverability and ability to be linked to [GitHub Pull Requests](https://docs.github.com/pull-requests).
Most proposals in the typescript-eslint repository happen in <u>[GitHub Issues](https://docs.github.com/issues)</u>.
We generally try to keep conversations inside issues for their discoverability and ability to be linked to <u>[GitHub Pull Requests](https://docs.github.com/pull-requests)</u>.

We have [GitHub Discussions](https://docs.github.com/discussions) enabled to enable three kinds of deeper, threaded conversations:
We have <u>[GitHub Discussions](https://docs.github.com/discussions)</u> enabled to enable three kinds of deeper, threaded conversations:

- **Community Feedback**: Questions from the maintainer team that should be raised to the broader community
- **RFCs (Requests For Comments)**: Formalized proposals for larger changes that should be discussed before turned into issues
Expand All @@ -16,12 +16,12 @@ Before filing a Discussion, search the issue tracker for any related conversatio
Link to them in the Discussion, along with a detailed description of what you'd like to discuss.

:::tip
For change proposals that match an [existing issue format](https://github.com/typescript-eslint/typescript-eslint/issues/new/choose), keep to filing issues.
For change proposals that match an <u>[existing issue format](https://github.com/typescript-eslint/typescript-eslint/issues/new/choose)</u>, keep to filing issues.
Most don't need to be moved to this separate format.
We can always move an issue to a discussion if it becomes unexpectedly deep.
:::

:::caution
Please don't use Discussions as a support forum.
See [Contributing > Issues > Questions and Support Requests](./Issues.mdx#questions-and-support-requests).
See <u>[Contributing > Issues > Questions and Support Requests](./Issues.mdx#questions-and-support-requests)</u>.
:::
14 changes: 7 additions & 7 deletions docs/contributing/Issues.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ Great!

Please do:

- Make sure you're using the [latest version of our packages](https://github.com/typescript-eslint/typescript-eslint/releases)
- Search [all opened and closed issues](https://github.com/typescript-eslint/typescript-eslint/issues?q=is%3Aissue+) to make sure your issue wouldn't be a duplicate
- Fill out the [appropriate issue template](https://github.com/typescript-eslint/typescript-eslint/issues/new/choose) completely
- Make sure you're using the <u>[latest version of our packages](https://github.com/typescript-eslint/typescript-eslint/releases)</u>
- Search <u>[all opened and closed issues](https://github.com/typescript-eslint/typescript-eslint/issues?q=is%3Aissue+)</u> to make sure your issue wouldn't be a duplicate
- Fill out the <u>[appropriate issue template](https://github.com/typescript-eslint/typescript-eslint/issues/new/choose)</u> completely
- Provide as much information as you can

## Commenting
Expand All @@ -29,7 +29,7 @@ Please don't:
### Issue Claiming

We don't use any kind of issue claiming system.
We've found in the past that they result in accidental ["licked cookie"](https://devblogs.microsoft.com/oldnewthing/20091201-00/?p=15843) situations where contributors claim an issue but run out of time or energy trying before sending a PR.
We've found in the past that they result in accidental <u>["licked cookie"](https://devblogs.microsoft.com/oldnewthing/20091201-00/?p=15843)</u> situations where contributors claim an issue but run out of time or energy trying before sending a PR.

If an issue has been marked as `accepting prs` and an open PR does not exist, feel free to send a PR.
You don't need to ask for permission.
Expand All @@ -39,9 +39,9 @@ You don't need to ask for permission.
The issue tracker is not an appropriate place for questions or support requests.
You can instead:

- Ask in our [Discord server](https://discord.gg/FSxKq8Tdyg)'s `#help` server
- Ask a question on [StackOverflow](https://stackoverflow.com/questions/tagged/typescript-eslint 'StackOverflow questions tagged with typescript-eslint') using the `typescript-eslint` tag
- Publicly toot [@tseslint on Mastodon](https://fosstodon.org/@tseslint) or tweet [@tseslint on Twitter](https://twitter.com/tseslint)
- Ask in our <u>[Discord server](https://discord.gg/FSxKq8Tdyg)</u>'s `#help` server
- Ask a question on <u>[StackOverflow](https://stackoverflow.com/questions/tagged/typescript-eslint 'StackOverflow questions tagged with typescript-eslint')</u> using the `typescript-eslint` tag
- Publicly toot <u>[@tseslint on Mastodon](https://fosstodon.org/@tseslint)</u> or tweet <u>[@tseslint on Twitter](https://twitter.com/tseslint)</u>

> Note that requests to add documentation _are_ allowed, even encouraged! 📝

Expand Down
20 changes: 12 additions & 8 deletions docs/contributing/Local_Development.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@ title: Local Development

Thank you for your interest in developing on typescript-eslint! ❤️‍🔥

> See [Contributing](../Contributing.mdx) and [Issues](./Issues.mdx) for details on our general contribution flows.
> See <u>[Contributing](../Contributing.mdx)</u> and <u>[Issues](./Issues.mdx)</u> for details on our general contribution flows.

## Setup

After [forking the repo from GitHub](https://help.github.com/articles/fork-a-repo) and [installing Yarn](https://yarnpkg.com):
After <u>[forking the repo from GitHub](https://help.github.com/articles/fork-a-repo)</u> and <u>[installing Yarn](https://yarnpkg.com)</u>:

```shell
git clone https://github.com/<your-name-here>/typescript-eslint
Expand All @@ -34,11 +34,11 @@ For example, if you make a change within `scope-manager` and want to use it in `
The following checks are all run on pull requests automatically.
You can also perform them locally.

> See [Contributing > Pull Requests](./Pull_Requests.mdx) for more information on pull requests.
> See <u>[Contributing > Pull Requests](./Pull_Requests.mdx)</u> for more information on pull requests.

### Formatting

We use [Prettier](https://prettier.io) to auto-format code.
We use <u>[Prettier](https://prettier.io)</u> to auto-format code.
A Git pre-commit hook should apply it to all committed changes.
Alternately, you can run `yarn format` in any package or in the root.

Expand All @@ -51,15 +51,19 @@ You can run `yarn lint` in any package or in the root.

Changes must pass two linters for documentation and naming, the commands for which may be run from the root:

- `yarn check-spelling`: [CSpell](https://cspell.org), for all code
- `yarn lint-markdown`: [Markdownlint](https://github.com/DavidAnson/markdownlint), for Markdown documentation
- `yarn check-spelling`: <u>[CSpell](https://cspell.org)</u>, for all code
- `yarn lint-markdown`: <u>[Markdownlint](https://github.com/DavidAnson/markdownlint)</u>, for Markdown documentation

### Tests

All code changes should ideally be unit tested if possible.
You can run `yarn test` in any package to run its tests.

> [VS Code launch tasks](https://code.visualstudio.com/docs/editor/tasks) tasks are provided that allow [visual debugging](https://code.visualstudio.com/docs/editor/debugging) tests.
> <u>
> [VS Code launch tasks](https://code.visualstudio.com/docs/editor/tasks)
> </u> tasks are provided that allow <u>
> [visual debugging](https://code.visualstudio.com/docs/editor/debugging)
> </u> tests.

#### Code Coverage

Expand Down Expand Up @@ -87,7 +91,7 @@ You can run `yarn typecheck` in any package or in the root to run `tsc`.

## Website Development

Our interactive documentation website is built with [Docusaurus](https://docusaurus.io).
Our interactive documentation website is built with <u>[Docusaurus](https://docusaurus.io)</u>.
Running `yarn start` from either the root or `packages/website` will start a local dev server on `localhost:3000`.

> The `website` package relies on other packages being built.
Expand Down
Loading