.. 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.2 KiB
1.2 KiB
| layout | board_id | title | name | manufacturer | board_url | board_image | date_added | family | features | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| download | m5stack_atom_lite | ATOM Lite ESP32 IoT Download | ATOM Lite ESP32 IoT | M5Stack |
|
m5stack_atom_lite.jpg | 2022-11-01 | esp32 |
|
Atom Lite, which has a size of only 24*24mm, is a very compact development board in the M5Stack development kit series. It provides more GPIOs for user customization which is very suitable for embedded smart home devices and in making smart toys. The main control adopts the ESP32-PICO chip which comes integrated with Wi-Fi technologies and has a 4MB of integrated SPI flash memory. Atom Lite board provides an Infra-Red LED, a RGB LED, buttons, and a HY2.0 interface. In addition, it can connect to external sensors and actuators through 6 GPIOs. The on-board Type-C USB interface enables rapid program upload and execution.
Features
- ESP32-based
- RGB LED(SK6812)
- Programmable button
- Built-in Infra-red
- Extendable Pins & Holes