Files
git.taskfile.build/prompt.md
T

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-docs
  • bin/build-11ty-docs
  • bin/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-docs
  • bin/dev-zensical-docs
  • bin/build-zensical-docs
  • bin/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-docs
  • dev-vuespress -> dev-vuepress-docs
  • install-vuespress -> init-vuepress-docs
  • serve-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.