From ca36f5c298266820d9ac8b82c0c759612ca5d9f5 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 4 Mar 2024 20:15:03 +0000 Subject: [PATCH] Update docs --- ChangeLog.md | 1 - README.md | 131 ++++++++++++++++++--------------------------------- 2 files changed, 46 insertions(+), 86 deletions(-) diff --git a/ChangeLog.md b/ChangeLog.md index 848fe73..332af18 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -7,7 +7,6 @@ ## 0.3.0 (2023-05-06) * Add `API` section into the docs. - * Add dependency on `clack-handler-hunchentoot` system. diff --git a/README.md b/README.md index 1002d36..ddab7a4 100644 --- a/README.md +++ b/README.md @@ -6,20 +6,12 @@ ## 40ANTS-PROJECT-TEMPLATES ASDF System Details -* Version: 0.3.0 - * Description: A bunch of Mystic templates to create `CL` library, web-project, `API` microservice and `CLI` command. - * Licence: Unlicense - * Author: Alexander Artemenko - * Homepage: [https://40ants.com/project-templates/][863f] - * Bug tracker: [https://github.com/40ants/project-templates/issues][8fc2] - * Source control: [GIT][41d7] - * Depends on: [alexandria][8236], [cl-ppcre][49b9], [mystic][417d], [mystic-file-mixin][38f5], [str][ef7f] [![](https://github-actions.40ants.com/40ants/project-templates/matrix.svg?only=ci.run-tests)][ca1d] @@ -44,9 +36,7 @@ You can install this library from Quicklisp, but you want to receive updates qui This library provides following template classes: * [`library-template`][a2ba] - * [`reblocks-app-template`][9624] - * [`jsonrpc-app-template`][5748] To create new projects out of these templates, use functions [`create-library`][560f] and [`create-reblocks-app`][7346]: @@ -84,7 +74,7 @@ CL-USER> (mystic:render * -#### [class](b8ee) `40ants-project-templates/library:library-template` (qlfile-mixin clpm-mixin docs-mixin ci-mixin rove-tests-mixin gitignore-mixin file-mixin) +#### [class](3cdf) `40ants-project-templates/library:library-template` (qlfile-mixin clpm-mixin docs-mixin ci-mixin rove-tests-mixin gitignore-mixin file-mixin) Mystic template to create a Common Lisp library with documentation, tests and continuous integration. @@ -95,15 +85,10 @@ Use [`40ants-project-templates:create-library`][560f] function to generate a ske ##### Included mixins * [`qlfile-mixin`][c335] - * [`clpm-mixin`][f9c4] - * [`docs-mixin`][333e] - * [`ci-mixin`][5153] - * [`rove-tests-mixin`][2215] - * [`gitignore-mixin`][cb6d] @@ -111,24 +96,17 @@ Use [`40ants-project-templates:create-library`][560f] function to generate a ske ##### Options * `:AUTHOR` - Author. **Required**. The project author's name. - * `:NAME` - Name. **Required**. The project's name. - * `:DESCRIPTION` - Description. A short, one-line description of the project. - * `:DOC-THEME` - Documentation Theme. A theme name in the form of the fully specified symbol name (as a string). Example: 40ants-doc-theme-40ants:40ants-theme. - * `:EMAIL` - Email. The project author's email. - * `:GITHUB` - GitHub `URL`. The project's `URL` on the GitHub. - * `:HOMEPAGE` - Homepage. `URL` of the project's homepage. - * `:LICENSE` - License. Default: "`BSD`". The project's license string, e.g. '`MIT`', '`GPL`v3'. -#### [function](7b23) `40ants-project-templates:create-library` directory-path name description &key request-all-options +#### [function](6b7a) `40ants-project-templates:create-library` directory-path name description &key request-all-options Creates Common Lisp library in the specified directory. @@ -137,7 +115,7 @@ call to `MYSTIC:RENDER` function to pass any options you like as a list. -#### [generic-function](ff87) `40ants-project-templates/library:make-core-file` template +#### [generic-function](26da) `40ants-project-templates/library:make-core-file` template Should return a file object, which creates main lisp file. @@ -145,7 +123,7 @@ Use [`make-file`][659a] function to create a [`mystic.template.file:file`][a919] -#### [generic-function](a1b6) `40ants-project-templates/library:make-system-file` template +#### [generic-function](1773) `40ants-project-templates/library:make-system-file` template Should return a file object, which creates `{{ name }}.asd` file. @@ -155,7 +133,7 @@ Should return a file object, which creates `{{ name }}.asd` file. -#### [class](c162) `40ants-project-templates/reblocks-app:reblocks-app-template` (library-template) +#### [class](b8dd) `40ants-project-templates/reblocks-app:reblocks-app-template` (library-template) This template creates a Reblocks web application with a few simple widgets. @@ -169,24 +147,17 @@ for a new web service. ##### Options * `:AUTHOR` - Author. **Required**. The project author's name. - * `:NAME` - Name. **Required**. The project's name. - * `:DESCRIPTION` - Description. A short, one-line description of the project. - * `:DOC-THEME` - Documentation Theme. A theme name in the form of the fully specified symbol name (as a string). Example: 40ants-doc-theme-40ants:40ants-theme. - * `:EMAIL` - Email. The project author's email. - * `:GITHUB` - GitHub `URL`. The project's `URL` on the GitHub. - * `:HOMEPAGE` - Homepage. `URL` of the project's homepage. - * `:LICENSE` - License. Default: "`BSD`". The project's license string, e.g. '`MIT`', '`GPL`v3'. -#### [function](3e1a) `40ants-project-templates:create-reblocks-app` directory-path name description &key request-all-options +#### [function](6529) `40ants-project-templates:create-reblocks-app` directory-path name description &key request-all-options Creates Common Lisp web application in the specified directory. @@ -199,7 +170,7 @@ call to `MYSTIC:RENDER` function to pass any options you like as a list. -#### [class](d74a) `40ants-project-templates/jsonrpc-app:jsonrpc-app-template` (library-template) +#### [class](a290) `40ants-project-templates/jsonrpc-app:jsonrpc-app-template` (library-template) This template creates a `JSON-RPC` `API` server. @@ -207,11 +178,8 @@ Other behaviour is inherited from [`library-template`][a2ba]. This server will provide: * `API` methods created using [`openrpc-server`][24be] system. - * Open`RPC` specification at /openrpc.json `URI`. - * Logging, configured to output data in `JSON` format. - * Optional `SLYNK` server running on port given as `SLYNK_PORT` env variable. Use [`40ants-project-templates:create-jsonrpc-app`][a32b] function to generate a skeleton @@ -222,24 +190,17 @@ for a new web service. ##### Options * `:AUTHOR` - Author. **Required**. The project author's name. - * `:NAME` - Name. **Required**. The project's name. - * `:DESCRIPTION` - Description. A short, one-line description of the project. - * `:DOC-THEME` - Documentation Theme. A theme name in the form of the fully specified symbol name (as a string). Example: 40ants-doc-theme-40ants:40ants-theme. - * `:EMAIL` - Email. The project author's email. - * `:GITHUB` - GitHub `URL`. The project's `URL` on the GitHub. - * `:HOMEPAGE` - Homepage. `URL` of the project's homepage. - * `:LICENSE` - License. Default: "`BSD`". The project's license string, e.g. '`MIT`', '`GPL`v3'. -#### [function](d4c9) `40ants-project-templates:create-jsonrpc-app` directory-path name description &key request-all-options +#### [function](5cd5) `40ants-project-templates:create-jsonrpc-app` directory-path name description &key request-all-options Creates Common Lisp `RPC` `API` application in the specified directory. @@ -256,7 +217,7 @@ call to `MYSTIC:RENDER` function to pass any options you like as a list. -#### [class](7ed8) `40ants-project-templates/mixin/ci:ci-mixin` (file-mixin) +#### [class](45ac) `40ants-project-templates/mixin/ci:ci-mixin` (file-mixin) Adds docs based on 40ants-docs. @@ -266,7 +227,7 @@ Adds docs based on 40ants-docs. -#### [class](e79b) `40ants-project-templates/mixin/clpm:clpm-mixin` (file-mixin) +#### [class](28e4) `40ants-project-templates/mixin/clpm:clpm-mixin` (file-mixin) Adds clpmfile into the root of the project. @@ -276,7 +237,7 @@ Adds clpmfile into the root of the project. -#### [class](2577) `40ants-project-templates/mixin/docs:docs-mixin` (file-mixin) +#### [class](b253) `40ants-project-templates/mixin/docs:docs-mixin` (file-mixin) Adds docs based on 40ants-docs. @@ -286,19 +247,19 @@ Adds docs based on 40ants-docs. -#### [class](7538) `40ants-project-templates/mixin/gitignore:gitignore-mixin` () +#### [class](354a) `40ants-project-templates/mixin/gitignore:gitignore-mixin` () Adds .gitignore into the root of the project. -#### [variable](a867) `40ants-project-templates/mixin/gitignore:*patterns*` ("*~" ".#*" ".*.~undo-tree~") +#### [variable](d1b3) `40ants-project-templates/mixin/gitignore:*patterns*` ("*~" ".#*" ".*.~undo-tree~") Default list of patterns which returned by [`patterns-to-ignore`][fcc9] generic function. -#### [generic-function](39dd) `40ants-project-templates/mixin/gitignore:patterns-to-ignore` template +#### [generic-function](4e98) `40ants-project-templates/mixin/gitignore:patterns-to-ignore` template Should return a list of patterns to add to .gitignore. Default method takes them from [`*patterns*`][0c07] variable. @@ -308,13 +269,13 @@ Should return a list of patterns to add to .gitignore. Default method takes them -#### [class](f5e4) `40ants-project-templates/mixin/qlfile:qlfile-mixin` (file-mixin) +#### [class](ffc6) `40ants-project-templates/mixin/qlfile:qlfile-mixin` (file-mixin) Adds qlfile into the root of the project. -#### [generic-function](7356) `40ants-project-templates/mixin/qlfile:qlfile-pieces` template +#### [generic-function](0fd8) `40ants-project-templates/mixin/qlfile:qlfile-pieces` template Returns a list of strings which will be concatentated to build a qlfile. @@ -324,7 +285,7 @@ Returns a list of strings which will be concatentated to build a qlfile. -#### [class](da28) `40ants-project-templates/mixin/rove-tests:rove-tests-mixin` (file-mixin) +#### [class](0e83) `40ants-project-templates/mixin/rove-tests:rove-tests-mixin` (file-mixin) Adds tests based on Rove. @@ -334,36 +295,36 @@ Adds tests based on Rove. -### [class](0a32) `mystic.template.file:file-mixin` (template) +### [class](b6c5) `mystic.template.file:file-mixin` (template) A Mystic template mixin for rendering a list of files using Mustache. -### [class](9409) `mystic.template.file:file` () +### [class](3b31) `mystic.template.file:file` () A file. -### [reader](b6db) `mystic.template.file:file-content` (file) (:content) +### [reader](a435) `mystic.template.file:file-content` (file) (:content) The file's contents, a Mustache template string. -### [reader](54ca) `mystic.template.file:file-path` (file) (:path) +### [reader](feb3) `mystic.template.file:file-path` (file) (:path) The path to the file relative to the directory, a Mustache template string. -### [function](14a3) `mystic.template.file:make-file` system-name path output-path-template +### [function](a265) `mystic.template.file:make-file` system-name path output-path-template -### [function](efbd) `40ants-project-templates/utils:ensure-template-docstring-has-options-description` CLASS-NAME &KEY (TITLE "## Options") +### [function](162c) `40ants-project-templates/utils:ensure-template-docstring-has-options-description` CLASS-NAME &KEY (TITLE "## Options") Appends options description to the documentation string of a given template class. @@ -395,29 +356,29 @@ template class docstrings. [659a]: https://40ants.com/project-templates/#x-28MYSTIC-2ETEMPLATE-2EFILE-3AMAKE-FILE-20FUNCTION-29 [41d7]: https://github.com/40ants/project-templates [ca1d]: https://github.com/40ants/project-templates/actions -[9409]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/.qlot/dists/ultralisp/software/roswell-mystic-20230314045148/templates/mixins/file/file.lisp#L18 -[54ca]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/.qlot/dists/ultralisp/software/roswell-mystic-20230314045148/templates/mixins/file/file.lisp#L19 -[b6db]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/.qlot/dists/ultralisp/software/roswell-mystic-20230314045148/templates/mixins/file/file.lisp#L24 -[0a32]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/.qlot/dists/ultralisp/software/roswell-mystic-20230314045148/templates/mixins/file/file.lisp#L30 -[14a3]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/.qlot/dists/ultralisp/software/roswell-mystic-20230314045148/templates/mixins/file/file.lisp#L49 -[7b23]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/core.lisp#L24 -[3e1a]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/core.lisp#L40 -[d4c9]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/core.lisp#L56 -[d74a]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/jsonrpc-app.lisp#L14 -[b8ee]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/library.lisp#L30 -[a1b6]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/library.lisp#L85 -[ff87]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/library.lisp#L93 -[7ed8]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/mixin/ci.lisp#L11 -[e79b]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/mixin/clpm.lisp#L11 -[2577]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/mixin/docs.lisp#L16 -[7538]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/mixin/gitignore.lisp#L13 -[a867]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/mixin/gitignore.lisp#L18 -[39dd]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/mixin/gitignore.lisp#L25 -[f5e4]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/mixin/qlfile.lisp#L25 -[7356]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/mixin/qlfile.lisp#L30 -[da28]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/mixin/rove-tests.lisp#L11 -[c162]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/reblocks-app.lisp#L15 -[efbd]: https://github.com/40ants/project-templates/blob/f78dfa29a6098fb9587a77fb18e11175cbaab3ab/src/utils.lisp#L91 +[3b31]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/.qlot/dists/ultralisp/software/roswell-mystic-20230314045148/templates/mixins/file/file.lisp#L18 +[feb3]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/.qlot/dists/ultralisp/software/roswell-mystic-20230314045148/templates/mixins/file/file.lisp#L19 +[a435]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/.qlot/dists/ultralisp/software/roswell-mystic-20230314045148/templates/mixins/file/file.lisp#L24 +[b6c5]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/.qlot/dists/ultralisp/software/roswell-mystic-20230314045148/templates/mixins/file/file.lisp#L30 +[a265]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/.qlot/dists/ultralisp/software/roswell-mystic-20230314045148/templates/mixins/file/file.lisp#L49 +[6b7a]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/core.lisp#L24 +[6529]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/core.lisp#L40 +[5cd5]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/core.lisp#L56 +[a290]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/jsonrpc-app.lisp#L14 +[3cdf]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/library.lisp#L30 +[1773]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/library.lisp#L85 +[26da]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/library.lisp#L93 +[45ac]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/mixin/ci.lisp#L11 +[28e4]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/mixin/clpm.lisp#L11 +[b253]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/mixin/docs.lisp#L16 +[354a]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/mixin/gitignore.lisp#L13 +[d1b3]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/mixin/gitignore.lisp#L18 +[4e98]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/mixin/gitignore.lisp#L25 +[ffc6]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/mixin/qlfile.lisp#L25 +[0fd8]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/mixin/qlfile.lisp#L30 +[0e83]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/mixin/rove-tests.lisp#L11 +[b8dd]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/reblocks-app.lisp#L15 +[162c]: https://github.com/40ants/project-templates/blob/988d7f0121f77e1a0da3d1dc38f04cb803be6047/src/utils.lisp#L91 [8fc2]: https://github.com/40ants/project-templates/issues [8236]: https://quickdocs.org/alexandria [49b9]: https://quickdocs.org/cl-ppcre