4.0 KiB
title, author, state, date_completed, model, input_tokens, output_tokens
| title | author | state | date_completed | model | input_tokens | output_tokens |
|---|---|---|---|---|---|---|
| Replace 11ty with Zensical | Janik von Rotz <login@janikvonrotz.ch> | draft | YYYY-MM-DD |
Replace 11ty with Zensical
Note: @Clanker refers to the "ai agent" (you) who is working on this prompt file.
@Clanker when working on this prompt file, make sure to:
- Read context and task section first
- Prepare a list of todos
- Update the todo list while working on task
Context
@Clanker Read the AGENTS.md and README.md to get an understanding of the project.
Task
I want to replace https://www.11ty.dev/ with https://zensical.org/. First check current 11ty setup:
- Navigation: ./_includes/layouts/base.njk
- Assets:
- ./img
- ./js
- Markdown:
- development.md
- examples.md
- library.md
- patterns.md
- README.md
- usage.md
- Node files:
- eleventy.config.js
- package-lock.json
- patterns.md
- pnpm-lock.yaml
- node_modules
- Task commands:
./task help | grep 11ty
Remove Node/11ty
Start by removing the Node/11ty files.
Create bin files for 11ty commands
Move the 11ty functions into scripts in the bin folder:
bin/dev-11ty-docsbin/build-11ty-docsbin/serve-11ty-docs
Create a new bin/init-11ty-docs that installs 11ty with pnpm.
Add a "11ty" section to the library.md and add help rows to the task.template.
Setup Zensical
Similar o the 11ty commands create:
bin/init-zensical-docsbin/dev-zensical-docsbin/build-zensical-docsbin/serve-zensical-docs
The init-zensical-docs uses activate-venv, installs zensical according to https://zensical.org/docs/get-started/#install-with-uv and finally initalizes the project with zensical new .. If possible pass option to not create the .github workflow.
Add a "Zensical" section to the library.md and add help rows to the task.template.
Move to docs
Move the mentioned markdown files and assets to the docs folder.
Setup the file navigation and link structure.
Use ./task dev-11ty-docs to check the site.
Ensure the website is working as before.
Recreate randomFunctionNames.js
There is js script js/randomFunctionNames.js that adds name generator to example.md. Try to load the js code accoring to https://zensical.org/docs/customization/#additional-javascript and move the function to the appropriate folder.
Create vuepress scripts
This is a nice-to-have-task. Many other projects such as ~/Odoo-Build use Vuepress to build the static site.
Odoo-Build]$ task help | grep vuepress
| build-vuepress | | Create vuepress build. |
| dev-vuepress | | Start vuepress development server. |
| install-vuepress | | Install build dependencies. |
| serve-vuepress | | Serve vuepress build. |
Create bin scripts for these commands as well:
build-vuespress->build-vuepress-docsdev-vuespress->dev-vuepress-docsinstall-vuespress->init-vuepress-docsserve-vuespress->serve-vuepress-docs
For the init-vuepress-docs additional packages are required. Check the package.json for details.
When the project is initalized it also has to create the dev and build scripts in package.json
Ignore the copy snippet files instructions of the Odoo-Build/task.
Add a "Vuepress" section to the library.md and add help rows to the task.template.
Update install script
Finally I want you to update the ./install script. Find a way to list the bin scripts. I do not want update this file manually.
Also create an uninstall script. That removes the scripts provided by taskfile.build.
Worklog
@Clanker Add a summary here once the task has been completed.
@Clanker Set frontmatter state to completed and update date and model. If you have access to session info also add token count.