.. 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")
```
1.4 KiB
1.4 KiB
| layout | board_id | title | name | manufacturer | board_url | board_image | date_added | family | features | ||
|---|---|---|---|---|---|---|---|---|---|---|---|
| download | thunderpack_v11 | Thunderpack v1.1 Download | Thunderpack v1.1 | Jeremy Gillick |
|
thunderpack_v11.jpg | 2020-04-16 | stm |
|
A kick-ass microcontroller board with everything you need in a compact package that fits in your pocket. Integrated battery, power management system, Arm microcontroller, USB bootloader, 4 high-power PWM outputs, and 12 GPIOs.
Why? After years of wiring together portable LED controllers that all consisted of a lithum batter, charge controller, power switch, and an arduino nano (or similar), I wanted something better. I always found those versions to be janky and fragile -- not to mention concerned that damaging the pouch cell battery might make it explode! This board has everything I need with room to expand.
Features
- Ultra-low-power 32-bit microcontroller (STM32L072xx)
- Integrated high-capacity 18650 lithium battery
- 4 high-current PWM outputs (2.3A per channel!) with an LED on each for debugging.
- 12 GPIOs, USART, I2C, SPI, USB
- 6k EEPROM
- USB bootloader
- Tactile on/off switch
- Tactile user button with built-in debounce circuit
- Breadboard friendly
- Durable AF! (Put a tube of heat shrink around it for a super easy case, if you'd like.)