Skip to content

Commit 008778e

Browse files
docs: update documentation to use block quote callouts for admonitions
1 parent 57a8f84 commit 008778e

File tree

19 files changed

+81
-99
lines changed

19 files changed

+81
-99
lines changed

.cursor/rules/documentation.mdc

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,10 @@ def get_item(key: str) -> str | None:
7878

7979
## Writing Style
8080

81-
- **Admonitions**: use `!!! note`, `!!! tip`, `!!! warning`. `note` supports an optional inline title: `!!! note "Title"`.
81+
- **Admonitions**: use block quote callouts instead of MkDocs `!!!` admonitions, as PyCharm's markdown formatter strips the required indentation. Format: `> **Type:** message text` where Type is one of `Tip`, `Note`, `Warning`, `Danger`.
82+
- Single-line: `> **Tip:** Install the extra before use.`
83+
- Multi-line: prefix every line with `>`, use `>` on blank lines to keep the block together.
84+
- With nested code block: open with `> **Tip:** intro text`, then `>`, then `> \`\`\`lang ... \`\`\``
8285
- **Cross-links**: always relative paths (e.g., `[Error Handling](../error_handling.md)`).
8386
- **Emphasis**: bold (`**term**`) for key terms on first mention. No emoji outside `index.md` and overview pages.
8487
- **Tables**: use for structured comparison data (extras matrix, config options).

docs/404.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,4 @@ It may have been moved, renamed, or deleted.
1919
- [API Reference](api_reference/index.md) — full reference for all public classes
2020
- [FAQ](community/faq.md) — frequently asked questions
2121

22-
!!! tip "Search the docs"
23-
Use the search bar at the top of the page to find any topic instantly.
22+
> **Tip:** Use the search bar at the top of the page to find any topic instantly.

docs/community/contributing.md

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,8 @@ make install
6060
make install-dev
6161
```
6262

63-
!!! tip "Pre-commit Hooks"
64-
Running `make install-dev` sets up pre-commit hooks that automatically run linting, formatting, and type checking on
65-
every commit. Use `make pre-commit` to run all hooks manually before opening a pull request.
63+
> **Tip:** Running `make install-dev` sets up pre-commit hooks that automatically run linting, formatting, and type
64+
> checking on every commit. Use `make pre-commit` to run all hooks manually before opening a pull request.
6665
6766
## Contribution Guidelines
6867

@@ -229,9 +228,8 @@ New adapters follow a consistent checklist. Use this as your guide when contribu
229228

230229
8. **Update `mkdocs.yml`** — add both new pages under the appropriate `nav:` keys.
231230

232-
!!! note "Issue templates"
233-
Use the [GitHub issue templates](https://github.com/SyntaxArc/ArchiPy/issues/new/choose) when
234-
reporting bugs, requesting features, or proposing new adapters.
231+
> **Note:** Use the [GitHub issue templates](https://github.com/SyntaxArc/ArchiPy/issues/new/choose) when reporting
232+
> bugs, requesting features, or proposing new adapters.
235233
236234
## Code of Conduct
237235

docs/community/faq.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -201,8 +201,8 @@ REDIS__PORT=6379
201201
ENVIRONMENT=DEV
202202
```
203203

204-
!!! warning "Never commit `.env` to version control"
205-
Add `.env` to your `.gitignore`. Use `.env.example` to document the required variables without real values.
204+
> **Warning:** Add `.env` to your `.gitignore`. Use `.env.example` to document the required variables without real
205+
> values.
206206
207207
### Can I override configuration at runtime?
208208

docs/community/license.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,8 @@ Copyright 2024 [SyntaxArc](https://github.com/SyntaxArc) — Hossein Nejati & Me
1818
| Sublicense and distribute under a different license | Preserve all existing copyright, patent, and attribution notices |
1919
| Use patents contributed by contributors royalty-free | Patent rights terminate if you bring patent litigation against the project |
2020

21-
!!! note "Trademark Restriction"
22-
The Apache 2.0 license does **not** grant permission to use the SyntaxArc trade names, trademarks, or service marks,
23-
except as required for customary description of the software's origin.
21+
> **Note:** The Apache 2.0 license does **not** grant permission to use the SyntaxArc trade names, trademarks, or
22+
> service marks, except as required for customary description of the software's origin.
2423
2524
## Full License Text
2625

docs/community/security.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,8 @@ Include as much detail as possible:
2525

2626
You will receive an acknowledgment within **48 hours** and a status update within **7 days**.
2727

28-
!!! warning "Coordinated Disclosure"
29-
Please allow the maintainers reasonable time (typically 90 days) to prepare and release a fix before
30-
disclosing the vulnerability publicly.
28+
> **Warning:** Please allow the maintainers reasonable time (typically 90 days) to prepare and release a fix before
29+
> disclosing the vulnerability publicly.
3130
3231
---
3332

docs/getting-started/concepts.md

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,8 @@ graph LR
2727
| **Helpers** | `helpers/` | Pure utilities: decorators, interceptors, JWT, password, datetime |
2828
| **Adapters** | `adapters/` | External service integrations: databases, caches, queues, APIs |
2929

30-
!!! warning "One-way import rule"
31-
Imports flow inward only — `configs ← models ← helpers ← adapters`. Inner layers never import
32-
from outer layers. Violating this rule breaks testability and creates circular dependencies.
30+
> **Warning:** Imports flow inward only — `configs ← models ← helpers ← adapters`. Inner layers never import from outer
31+
> layers. Violating this rule breaks testability and creates circular dependencies.
3332
3433
---
3534

@@ -201,16 +200,16 @@ class UserRegistrationLogic:
201200
...
202201
```
203202

204-
!!! note "Logic layer collaboration rules"
205-
206-
- Logic classes **may call other logic classes** — nested `@atomic` calls reuse the open session.
207-
- Logic classes **must never import or call a repository from another domain directly**.
208-
Cross-domain reads must go through the other domain's logic class.
209-
210-
```
211-
✅ OrderCreationLogic → UserQueryLogic → UserRepository
212-
❌ OrderCreationLogic → UserRepository (bypasses domain boundary)
213-
```
203+
> **Note:** Logic layer collaboration rules:
204+
>
205+
> - Logic classes **may call other logic classes** — nested `@atomic` calls reuse the open session.
206+
> - Logic classes **must never import or call a repository from another domain directly**.
207+
> Cross-domain reads must go through the other domain's logic class.
208+
>
209+
> ```
210+
> ✅ OrderCreationLogic → UserQueryLogic → UserRepository
211+
> ❌ OrderCreationLogic → UserRepository (bypasses domain boundary)
212+
> ```
214213
215214
---
216215

docs/getting-started/installation.md

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ Before starting, ensure you have:
2424
uv is a fast Python package installer and resolver. Install it via
2525
the [official guide](https://docs.astral.sh/uv/getting-started/installation/).
2626

27-
!!! tip "Recommended Package Manager"
28-
ArchiPy recommends **`uv`** — it is significantly faster than `pip` and provides better dependency resolution.
27+
> **Tip:** ArchiPy recommends **`uv`** — it is significantly faster than `pip` and provides better dependency
28+
> resolution.
2929
3030
## Install ArchiPy
3131

@@ -100,14 +100,12 @@ If issues arise, verify:
100100
3. Build tools are available (UV handles this automatically)
101101
4. Database-specific dependencies are installed if using database adapters
102102

103-
!!! warning "Python 3.14+ Required"
104-
ArchiPy uses `X | Y` union syntax, lowercase generics (`list[str]`), and other modern features
105-
that require Python 3.14 or later. Using an older Python will result in `SyntaxError` at import time.
103+
> **Warning:** ArchiPy uses `X | Y` union syntax, lowercase generics (`list[str]`), and other modern features that
104+
> require Python 3.14 or later. Using an older Python will result in `SyntaxError` at import time.
106105
107-
!!! tip "IDE Integration"
108-
For the best development experience, use an IDE that supports Python type hints, such as PyCharm or VS Code with the
109-
Python extension. The project uses modern Python type hints and benefits from IDE support for type checking and
110-
autocompletion.
106+
> **Tip:** For the best development experience, use an IDE that supports Python type hints, such as PyCharm or VS Code
107+
> with the Python extension. The project uses modern Python type hints and benefits from IDE support for type checking and
108+
> autocompletion.
111109
112110
## See Also
113111

docs/getting-started/project_structure.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -101,13 +101,13 @@ project-root/
101101
| `entities/` | SQLAlchemy `BaseEntity` subclasses | Data structure only — no logic |
102102
| `errors/` | Domain-specific exceptions extending ArchiPy base errors | Raise with `raise ... from e` |
103103

104-
!!! tip "DTO naming conventions"
105-
106-
- **Domain input**: `UserRegistrationInputDTO` — data arriving from the client
107-
- **Domain output**: `UserRegistrationOutputDTO` — data returned to the client
108-
- **Repository command**: `CreateUserCommandDTO` — a write operation
109-
- **Repository query**: `GetUserByIdQueryDTO` — a read operation
110-
- **Repository response**: `UserResponseDTO` — result from an adapter or repository
104+
> **Tip:** DTO naming conventions:
105+
>
106+
> - **Domain input**: `UserRegistrationInputDTO` — data arriving from the client
107+
> - **Domain output**: `UserRegistrationOutputDTO` — data returned to the client
108+
> - **Repository command**: `CreateUserCommandDTO` — a write operation
109+
> - **Repository query**: `GetUserByIdQueryDTO` — a read operation
110+
> - **Repository response**: `UserResponseDTO` — result from an adapter or repository
111111
112112
### `repositories/`
113113

docs/getting-started/quickstart.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@ with a typed config, a Redis adapter, and a TTL cache decorator in under five mi
1313
- Python 3.14 or later
1414
- `uv` package manager ([installation guide](https://docs.astral.sh/uv/getting-started/installation/))
1515

16-
!!! tip "Check your Python version"
17-
18-
```bash
19-
python --version # must be 3.14+
20-
```
16+
> **Tip:** Check your Python version:
17+
>
18+
> ```bash
19+
> python --version # must be 3.14+
20+
> ```
2121
2222
## Step 1 — Create the Project
2323

0 commit comments

Comments
 (0)