You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -61,18 +60,21 @@ Some settings in `myst.yml` may not work as expected, and you may need to report
61
60
Please do **_NOT_** report `mystmd` bugs on `afterpython` repository.
62
61
:::
63
62
63
+
---
64
64
### Table of Contents (TOC)
65
65
The `toc` subsection under `project` in `myst.yml` defines how your content is organized.
66
66
67
67
You can run `myst init --write-toc` in your content directory (e.g., `afterpython/doc/`) to automatically generate a TOC based on your existing content.
68
68
69
69
*See [Table of Contents](https://mystmd.org/guide/table-of-contents) for more details.*
70
70
71
+
---
71
72
### authors.yml
72
73
When you run `ap init`, `afterpython` creates an `authors.yml` file in the `afterpython/` directory and syncs authors from `pyproject.toml`. This allows you to easily manage the authors of your project.
73
74
74
75
*See [Authorship](https://mystmd.org/guide/authorship#skip-to-frontmatter), you can add social media links to your authors in `authors.yml` (e.g. GitHub, X, etc.)*
75
76
77
+
---
76
78
#### Change Author at Page Level
77
79
By default, authors defined in `authors.yml` will all be used in `myst.yml` at the project level (see `project.authors` in `myst.yml`). However, you can override this behavior at the page level by adding the `authors` frontmatter at the top of your content (e.g. `doc/your_page.md`):
78
80
```markdown
@@ -81,3 +83,8 @@ authors:
81
83
- new_author_id_defined_in_authors_yml
82
84
---
83
85
```
86
+
87
+
88
+
:::{tip}
89
+
This entire documentation is written in MyST Markdown. You can click the "Edit this page" button in the top right corner to see the source code as an example of how to write content in MyST Markdown.
content types: doc, blog, tutorial, example, guide, etc.
40
+
During `ap init`, `afterpython` creates a new directory `afterpython/_website/` and initializes it with [project-website-template], which uses [Svelte] and SvelteKit to create the project website and serve the HTML files built by `mystmd` in all of the content folders in `afterpython/` (e.g., `afterpython/doc/`, `afterpython/blog/`)
37
41
38
-
use a full web ui framework ([Svelte]) to wrap the content and escape the scope of MyST
42
+
This approach brings us into the realm of full-stack web development, which enables us to add features such as an AI chatbot, full-text search engine across the website, etc.
39
43
40
-
## Homepage
41
-
Currently only your `README.md` is used as the homepage.
42
44
43
-
### API Reference
44
-
use pdoc
45
-
### FAQs
46
-
faq.yml
47
-
### Compatibility
48
-
support sphinx, mkdocs
45
+
---
46
+
## Website Template Update
47
+
[project-website-template] is a separate repository that will be updated independently of `afterpython` to provide new features and bug fixes for the project website.
48
+
49
+
When updates are available, run `ap update website`, which will update `afterpython/_website`, and you can start using the new features immediately.
50
+
51
+
52
+
:::{warning} Caveat
53
+
`ap update website` will overwrite the existing `afterpython/_website` with the latest [project-website-template]. If you have made any customizations to `afterpython/_website`, they will be lost.
54
+
:::
55
+
56
+
57
+
---
58
+
## Customization and Styling
59
+
Since all the code is pulled from [project-website-template] to `afterpython/_website/`, you can customize the project website by modifying the code in `afterpython/_website/src/`.
60
+
61
+
For example, to change the landing page, which by default displays the `README.md`, you can modify the code in `afterpython/_website/src/routes/+page.svelte`.
62
+
63
+
> If you don't know Svelte and are using an LLM to code for you, remember to ask it to write in Svelte 5 syntax.
64
+
49
65
50
66
---
67
+
## Work in Progress 🚧
51
68
## Built-in Features
52
-
- full-text search engine (Work in Progress)
53
-
- AI chatbot (Work in Progress)
69
+
- full-text search using [PageFind]
70
+
- AI chatbot using [WebLLM]
71
+
72
+
### API Reference
73
+
[pdoc] will be used to build the API Reference section on the project website.
74
+
75
+
### FAQs
76
+
`faq.yml` will be used as content for the FAQs section on the project website.
77
+
54
78
### Google Analytics
79
+
add google analytics support for the entire website
55
80
56
-
---
57
-
## Website Template Update
58
-
`ap update website`
59
-
Caveat: This will overwrite the existing project website template.
60
-
### Customization and Styling
61
-
can use LLM to code any web components in [Svelte]
81
+
### Compatibility
82
+
Currently `afterpython` only supports content built `mystmd`. It does NOT work with Sphinx, MkDocs etc.
Copy file name to clipboardExpand all lines: afterpython/doc/quickstart.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -56,7 +56,7 @@ When using flags, a MyST development server starts for that specific content fol
56
56
All content folders in `afterpython/` (e.g., `afterpython/doc/`, `afterpython/blog/`) are initialized by `myst init` (see [MyST Markdown]), and **each** has a default `index.md` file and a `myst.yml` file for configuration.
57
57
58
58
:::{seealso}
59
-
To learn more about how to arrange your content in the content folders, see [Table of Contents] or a [Quick Guide about myst.yml](walkthrough/myst_yml.md).
59
+
To learn more about how to arrange your content in the content folders, see [Table of Contents] or a [Quick Guide about myst.yml](myst.md).
After initialization, the following directories are created:
8
8
-`afterpython/`
9
9
-`afterpython/doc/`
@@ -15,3 +15,24 @@ After initialization, the following directories are created:
15
15
The `afterpython/` directory is the main directory that contains all content, while the subdirectories are initialized by `myst init` (see [MyST Markdown]).
16
16
17
17
> Note that [NodeJS] and [pnpm] will be installed for you by default if they are not already installed
18
+
19
+
20
+
## _website/
21
+
22
+
## Configuration Files
23
+
24
+
## afterpython.toml
25
+
26
+
`afterpython.toml` is a configuration file for `afterpython` inside `afterpython/`. Consider it as an extension of `pyproject.toml`, storing extra information of your project such as company name, company URL, project website URL, etc.
0 commit comments