circuitpython-org/_board/e_fidget.md
Jeff Epler 4715875cc4 Fix board dates to always be of the form YYYY-MM-DD
.. leading zeros are required for `frontmatter` to treat them as dates
rather than strings, apparently per the YAML specification.

This was done by script:
```py
import re
import datetime
import pathlib
import sys

import frontmatter

rx = re.compile(r'^(\s*)date_added:.*$', re.M)

for path_str in sys.argv[1:]:
    print(path_str)
    path = pathlib.Path(path_str)

    post = frontmatter.load(path)
    date_added = post.get("date_added", "")

    if isinstance(date_added, datetime.date):
        continue

    if isinstance(date_added, str):
        try:
            date_added = datetime.datetime.strptime(date_added, "%Y-%m-%d")
        except ValueError as exc:
            print(f"Failed to parse date {date_added} in {path_str}: {exc}")
            continue

    date_added = date_added.date()
    content = path.read_text("utf-8")
    new_content = rx.sub(lambda m: f"{m.group(1)}date_added: {date_added}", content)
    assert content != new_content

    path.write_text(new_content, "utf-8")
```
2024-03-22 11:31:45 -05:00

1,018 B

layout board_id title name manufacturer board_url board_image date_added family features
download e_fidget E-Fidget Download E-Fidget 2231puppy
https://e-fidget.xyz
e_fidget.jpg 2023-01-04 raspberrypi
Battery Charging
USB-C

The E-Fidget is a new kind of fidget spinner. It uses haptic feedback in the form of 8 vibration motors to simulate the feeling of spinning while not moving at all. This provides several benefits, including being able to be "spun" from inside of a pocket to reduce distraction, and much lower noise levels. It's equipped with the venerable RP2040, and it's 100% OSHW! Includes 16 MBits (2 Megabytes) of external QSPI flash. It'll be available for purchase soon, or you can download the source files and order one today!

More Info

Documentation

Design Source

Purchase

Coming soon! In the meantime, you can download the design sources from the link above and make one yourself!