pw_module: Jinja template refactor

- Start using jinja templates for `pw module create`.
- docs.rst template
- BUILD.bazel template
- CMakeLists.txt template
- Update //docs/module_metadata.json

Change-Id: I50d83108a331d55f28fe3dd638a530410de39c2c
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/201751
Reviewed-by: Alexei Frolov <frolv@google.com>
Commit-Queue: Anthony DiGirolamo <tonymd@google.com>
Presubmit-Verified: CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Kayce Basques <kayce@google.com>
10 files changed
tree: 130849c4099914be0d0bfce15c0523aa4a5c5b4c
  1. .allstar/
  2. .vscode/
  3. build_overrides/
  4. docker/
  5. docs/
  6. kudzu/
  7. pw_alignment/
  8. pw_allocator/
  9. pw_analog/
  10. pw_android_toolchain/
  11. pw_arduino_build/
  12. pw_assert/
  13. pw_assert_basic/
  14. pw_assert_log/
  15. pw_assert_tokenized/
  16. pw_assert_zephyr/
  17. pw_async/
  18. pw_async2/
  19. pw_async2_basic/
  20. pw_async2_epoll/
  21. pw_async_basic/
  22. pw_base64/
  23. pw_bloat/
  24. pw_blob_store/
  25. pw_bluetooth/
  26. pw_bluetooth_hci/
  27. pw_bluetooth_profiles/
  28. pw_bluetooth_proxy/
  29. pw_bluetooth_sapphire/
  30. pw_boot/
  31. pw_boot_cortex_m/
  32. pw_build/
  33. pw_build_android/
  34. pw_build_info/
  35. pw_build_mcuxpresso/
  36. pw_bytes/
  37. pw_channel/
  38. pw_checksum/
  39. pw_chre/
  40. pw_chrono/
  41. pw_chrono_embos/
  42. pw_chrono_freertos/
  43. pw_chrono_rp2040/
  44. pw_chrono_stl/
  45. pw_chrono_threadx/
  46. pw_chrono_zephyr/
  47. pw_cli/
  48. pw_compilation_testing/
  49. pw_config_loader/
  50. pw_console/
  51. pw_containers/
  52. pw_cpu_exception/
  53. pw_cpu_exception_cortex_m/
  54. pw_crypto/
  55. pw_digital_io/
  56. pw_digital_io_linux/
  57. pw_digital_io_mcuxpresso/
  58. pw_digital_io_rp2040/
  59. pw_docgen/
  60. pw_doctor/
  61. pw_emu/
  62. pw_env_setup/
  63. pw_env_setup_zephyr/
  64. pw_file/
  65. pw_format/
  66. pw_function/
  67. pw_fuzzer/
  68. pw_grpc/
  69. pw_hdlc/
  70. pw_hex_dump/
  71. pw_i2c/
  72. pw_i2c_linux/
  73. pw_i2c_mcuxpresso/
  74. pw_i2c_rp2040/
  75. pw_ide/
  76. pw_interrupt/
  77. pw_interrupt_cortex_m/
  78. pw_interrupt_xtensa/
  79. pw_interrupt_zephyr/
  80. pw_intrusive_ptr/
  81. pw_json/
  82. pw_kvs/
  83. pw_libc/
  84. pw_libcxx/
  85. pw_log/
  86. pw_log_android/
  87. pw_log_basic/
  88. pw_log_null/
  89. pw_log_rpc/
  90. pw_log_string/
  91. pw_log_tokenized/
  92. pw_log_zephyr/
  93. pw_malloc/
  94. pw_malloc_freelist/
  95. pw_malloc_freertos/
  96. pw_metric/
  97. pw_minimal_cpp_stdlib/
  98. pw_module/
  99. pw_multibuf/
  100. pw_multisink/
  101. pw_package/
  102. pw_perf_test/
  103. pw_persistent_ram/
  104. pw_polyfill/
  105. pw_preprocessor/
  106. pw_presubmit/
  107. pw_protobuf/
  108. pw_protobuf_compiler/
  109. pw_random/
  110. pw_result/
  111. pw_ring_buffer/
  112. pw_router/
  113. pw_rpc/
  114. pw_rpc_transport/
  115. pw_rust/
  116. pw_snapshot/
  117. pw_software_update/
  118. pw_span/
  119. pw_spi/
  120. pw_spi_linux/
  121. pw_spi_mcuxpresso/
  122. pw_spi_rp2040/
  123. pw_status/
  124. pw_stm32cube_build/
  125. pw_stream/
  126. pw_stream_shmem_mcuxpresso/
  127. pw_stream_uart_linux/
  128. pw_stream_uart_mcuxpresso/
  129. pw_string/
  130. pw_symbolizer/
  131. pw_sync/
  132. pw_sync_baremetal/
  133. pw_sync_embos/
  134. pw_sync_freertos/
  135. pw_sync_stl/
  136. pw_sync_threadx/
  137. pw_sync_zephyr/
  138. pw_sys_io/
  139. pw_sys_io_ambiq_sdk/
  140. pw_sys_io_arduino/
  141. pw_sys_io_baremetal_lm3s6965evb/
  142. pw_sys_io_baremetal_stm32f429/
  143. pw_sys_io_emcraft_sf2/
  144. pw_sys_io_mcuxpresso/
  145. pw_sys_io_rp2040/
  146. pw_sys_io_stdio/
  147. pw_sys_io_stm32cube/
  148. pw_sys_io_zephyr/
  149. pw_system/
  150. pw_target_runner/
  151. pw_thread/
  152. pw_thread_embos/
  153. pw_thread_freertos/
  154. pw_thread_stl/
  155. pw_thread_threadx/
  156. pw_thread_zephyr/
  157. pw_tls_client/
  158. pw_tls_client_boringssl/
  159. pw_tls_client_mbedtls/
  160. pw_tokenizer/
  161. pw_toolchain/
  162. pw_toolchain_bazel/
  163. pw_trace/
  164. pw_trace_tokenized/
  165. pw_transfer/
  166. pw_uart/
  167. pw_unit_test/
  168. pw_unit_test_zephyr/
  169. pw_varint/
  170. pw_watch/
  171. pw_web/
  172. pw_work_queue/
  173. seed/
  174. targets/
  175. third_party/
  176. ts/
  177. zephyr/
  178. .bazelignore
  179. .bazelrc
  180. .black.toml
  181. .clang-format
  182. .clang-tidy
  183. .eslintrc.cjs
  184. .git-blame-ignore-revs
  185. .gitattributes
  186. .gitignore
  187. .gn
  188. .mypy.ini
  189. .prettierignore
  190. .prettierrc.cjs
  191. .pw_ide.yaml
  192. .pylintrc
  193. activate.bat
  194. Android.bp
  195. AUTHORS
  196. bootstrap.bat
  197. bootstrap.sh
  198. BUILD.bazel
  199. BUILD.gn
  200. BUILDCONFIG.gn
  201. CMakeLists.txt
  202. jest.config.ts
  203. Kconfig.zephyr
  204. LICENSE
  205. modules.gni
  206. OWNERS
  207. package-lock.json
  208. package.json
  209. pigweed.json
  210. PIGWEED_MODULES
  211. README.md
  212. rollup.config.js
  213. tsconfig.json
  214. WORKSPACE
README.md

Pigweed

Pigweed is an open source collection of embedded-targeted libraries–or as we like to call them, modules. These modules are building blocks and infrastructure that enable faster and more reliable development on small-footprint MMU-less 32-bit microcontrollers like the STMicroelectronics STM32L452 or the Nordic nRF52832.

For more information please see our website: https://pigweed.dev/.

Links