diff --git a/.github/workflows/awesome-lint.yml b/.github/workflows/awesome-lint.yml
new file mode 100644
index 0000000..3b1a2e1
--- /dev/null
+++ b/.github/workflows/awesome-lint.yml
@@ -0,0 +1,19 @@
+name: Awesome Lint
+
+on:
+ push:
+ pull_request:
+ workflow_dispatch:
+
+jobs:
+ awesomeLint:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+
+ - uses: actions/setup-node@v4
+ with:
+ node-version: lts/*
+
+ - name: Awesome Lint
+ run: npx awesome-lint
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..2973c0c
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,121 @@
+Creative Commons Legal Code
+
+CC0 1.0 Universal
+
+ CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
+ LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
+ ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
+ INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
+ REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
+ PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
+ THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
+ HEREUNDER.
+
+Statement of Purpose
+
+The laws of most jurisdictions throughout the world automatically confer
+exclusive Copyright and Related Rights (defined below) upon the creator
+and subsequent owner(s) (each and all, an "owner") of an original work of
+authorship and/or a database (each, a "Work").
+
+Certain owners wish to permanently relinquish those rights to a Work for
+the purpose of contributing to a commons of creative, cultural and
+scientific works ("Commons") that the public can reliably and without fear
+of later claims of infringement build upon, modify, incorporate in other
+works, reuse and redistribute as freely as possible in any form whatsoever
+and for any purposes, including without limitation commercial purposes.
+These owners may contribute to the Commons to promote the ideal of a free
+culture and the further production of creative, cultural and scientific
+works, or to gain reputation or greater distribution for their Work in
+part through the use and efforts of others.
+
+For these and/or other purposes and motivations, and without any
+expectation of additional consideration or compensation, the person
+associating CC0 with a Work (the "Affirmer"), to the extent that he or she
+is an owner of Copyright and Related Rights in the Work, voluntarily
+elects to apply CC0 to the Work and publicly distribute the Work under its
+terms, with knowledge of his or her Copyright and Related Rights in the
+Work and the meaning and intended legal effect of CC0 on those rights.
+
+1. Copyright and Related Rights. A Work made available under CC0 may be
+protected by copyright and related or neighboring rights ("Copyright and
+Related Rights"). Copyright and Related Rights include, but are not limited
+to, the following:
+
+ i. the right to reproduce, adapt, distribute, perform, display,
+ communicate, and translate a Work;
+ ii. moral rights retained by the original author(s) and/or performer(s);
+iii. publicity and privacy rights pertaining to a person's image or
+ likeness depicted in a Work;
+ iv. rights protecting against unfair competition in regards to a Work,
+ subject to the limitations in paragraph 4(a), below;
+ v. rights protecting the extraction, dissemination, use and reuse of data
+ in a Work;
+ vi. database rights (such as those arising under Directive 96/9/EC of the
+ European Parliament and of the Council of 11 March 1996 on the legal
+ protection of databases, and under any national implementation
+ thereof, including any amended or successor version of such
+ directive); and
+vii. other similar, equivalent or corresponding rights throughout the
+ world based on applicable law or treaty, and any national
+ implementations thereof.
+
+2. Waiver. To the greatest extent permitted by, but not in contravention
+of, applicable law, Affirmer hereby overtly, fully, permanently,
+irrevocably and unconditionally waives, abandons, and surrenders all of
+Affirmer's Copyright and Related Rights and associated claims and causes
+of action, whether now known or unknown (including existing as well as
+future claims and causes of action), in the Work (i) in all territories
+worldwide, (ii) for the maximum duration provided by applicable law or
+treaty (including future time extensions), (iii) in any current or future
+medium and for any number of copies, and (iv) for any purpose whatsoever,
+including without limitation commercial, advertising or promotional
+purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
+member of the public at large and to the detriment of Affirmer's heirs and
+successors, fully intending that such Waiver shall not be subject to
+revocation, rescission, cancellation, termination, or any other legal or
+equitable action to disrupt the quiet enjoyment of the Work by the public
+as contemplated by Affirmer's express Statement of Purpose.
+
+3. Public License Fallback. Should any part of the Waiver for any reason
+be judged legally invalid or ineffective under applicable law, then the
+Waiver shall be preserved to the maximum extent permitted taking into
+account Affirmer's express Statement of Purpose. In addition, to the
+extent the Waiver is so judged Affirmer hereby grants to each affected
+person a royalty-free, non transferable, non sublicensable, non exclusive,
+irrevocable and unconditional license to exercise Affirmer's Copyright and
+Related Rights in the Work (i) in all territories worldwide, (ii) for the
+maximum duration provided by applicable law or treaty (including future
+time extensions), (iii) in any current or future medium and for any number
+of copies, and (iv) for any purpose whatsoever, including without
+limitation commercial, advertising or promotional purposes (the
+"License"). The License shall be deemed effective as of the date CC0 was
+applied by Affirmer to the Work. Should any part of the License for any
+reason be judged legally invalid or ineffective under applicable law, such
+partial invalidity or ineffectiveness shall not invalidate the remainder
+of the License, and in such case Affirmer hereby affirms that he or she
+will not (i) exercise any of his or her remaining Copyright and Related
+Rights in the Work or (ii) assert any associated claims and causes of
+action with respect to the Work, in either case contrary to Affirmer's
+express Statement of Purpose.
+
+4. Limitations and Disclaimers.
+
+ a. No trademark or patent rights held by Affirmer are waived, abandoned,
+ surrendered, licensed or otherwise affected by this document.
+ b. Affirmer offers the Work as-is and makes no representations or
+ warranties of any kind concerning the Work, express, implied,
+ statutory or otherwise, including without limitation warranties of
+ title, merchantability, fitness for a particular purpose, non
+ infringement, or the absence of latent or other defects, accuracy, or
+ the present or absence of errors, whether or not discoverable, all to
+ the greatest extent permissible under applicable law.
+ c. Affirmer disclaims responsibility for clearing rights of other persons
+ that may apply to the Work or any use thereof, including without
+ limitation any person's Copyright and Related Rights in the Work.
+ Further, Affirmer disclaims responsibility for obtaining any necessary
+ consents, permissions or other rights required for any use of the
+ Work.
+ d. Affirmer understands and acknowledges that Creative Commons is not a
+ party to this document and has no duty or obligation with respect to
+ this CC0 or use of the Work.
diff --git a/README.md b/README.md
index a432b7e..8a6b859 100644
--- a/README.md
+++ b/README.md
@@ -1,60 +1,69 @@
-# Embedded Testing
-[](https://awesome.re)
-[](https://github.com/onmcu/awesome-embedded-testing/actions/workflows/links.yml)
-
-Curated list of tools and resources for testing Embedded and Low-level software
-
-## Table of Contents
-- [Embedded Testing](#embedded-testing)
- - [Table of Contents](#table-of-contents)
- - [Books, blogs and training materials](#books-blogs-and-training-materials)
- - [Test Frameworks](#test-frameworks)
- - [Rust Test Frameworks](#rust-test-frameworks)
- - [General Embedded Testing Frameworks](#general-embedded-testing-frameworks)
- - [Mocking and Hardware Simulation](#mocking-and-hardware-simulation)
- - [Embedded Integration & Continuous Integration (CI)](#embedded-integration--continuous-integration-ci)
- - [Static & Dynamic Analysis](#static--dynamic-analysis)
- - [Embedded-Specific Testing Techniques & Tools](#embedded-specific-testing-techniques--tools)
- - [Test Automation & Hardware-in-the-Loop (HIL)](#test-automation--hardware-in-the-loop-hil)
- - [Examples & Reference Projects](#examples--reference-projects)
-
-## Books, blogs and training materials
+# Awesome Embedded Testing [](https://awesome.re)
+
+> Tools, frameworks, and resources for testing embedded and low-level software, covering unit testing, mocking, hardware simulation, static and dynamic analysis, continuous integration, and hardware-in-the-loop automation.
+
+
+
+
+
+## Contents
+
+- [Test Frameworks](#test-frameworks)
+ - [Rust Test Frameworks](#rust-test-frameworks)
+ - [General Embedded Testing Frameworks](#general-embedded-testing-frameworks)
+ - [Mocking and Hardware Simulation](#mocking-and-hardware-simulation)
+ - [Continuous Integration](#continuous-integration)
+ - [Static and Dynamic Analysis](#static-and-dynamic-analysis)
+ - [Embedded-Specific Techniques and Tools](#embedded-specific-techniques-and-tools)
+ - [Test Automation and Hardware-in-the-Loop](#test-automation-and-hardware-in-the-loop)
+ - [Examples and Reference Projects](#examples-and-reference-projects)
## Test Frameworks
+
### Rust Test Frameworks
-- **[embedded-test](https://crates.io/crates/embedded-test)** Rust test harness and runner for embedded devices 
+
+- [embedded-test](https://crates.io/crates/embedded-test) - Rust test harness and runner for embedded devices.
+- [defmt-test](https://github.com/knurling-rs/defmt/tree/main/firmware/defmt-test) - Rust test harness that lets you write and run unit tests on your device as if using the built-in `#[test]` attribute.
### General Embedded Testing Frameworks
-- **[Ceedling/Unity](https://github.com/ThrowTheSwitch/Ceedling)** – Popular C-based unit testing and build framework, great for small to medium-sized embedded projects. 
-- **[GoogleTest (gtest)](https://github.com/google/googletest)** – Widely used and highly customizable C++ testing framework, commonly adopted in embedded C++ projects. 
-- **[CppUTest](https://github.com/cpputest/cpputest)** – Flexible testing framework tailored specifically to embedded software, emphasizing memory safety and simplicity. 
-- **[Catch2](https://github.com/catchorg/Catch2)** – Modern C++ testing framework known for ease of use and expressive assertions, lightweight enough for embedded targets. 
+
+- [Ceedling/Unity](https://github.com/ThrowTheSwitch/Ceedling) - Popular C-based unit testing and build framework, great for small to medium-sized embedded projects.
+- [GoogleTest](https://github.com/google/googletest) - Widely used and highly customizable C++ testing framework, commonly adopted in embedded C++ projects.
+- [CppUTest](https://github.com/cpputest/cpputest) - C and C++ testing framework tailored specifically to embedded software, emphasizing memory safety and simplicity.
+- [Catch2](https://github.com/catchorg/Catch2) - Modern C++ testing framework known for ease of use and expressive assertions, lightweight enough for embedded targets.
### Mocking and Hardware Simulation
-- **[CMock](https://github.com/ThrowTheSwitch/CMock)** – Generates mock objects automatically for C, ideal for testing interactions with hardware-dependent code. 
-- **[Fake Function Framework (FFF)](https://github.com/meekrosoft/fff)** – Lightweight, simple mocking framework for C-based embedded software. 
-- **[Renode](https://github.com/renode/renode)** – Powerful framework for hardware simulation and testing, allowing execution and debugging of embedded binaries without actual hardware. 
-- **[QEMU](https://github.com/qemu/qemu)** – Widely adopted open-source emulator, very useful for full-system simulation of embedded platforms during testing. 
-- **[embedded-hal-mock](https://github.com/dbrgn/embedded-hal-mock)** – Mocks for testing embedded-hal based drivers without hardware access. 
-
-### Embedded Integration & Continuous Integration (CI)
-- **[PlatformIO](https://github.com/platformio/platformio-core)** – Cross-platform build tool and package manager, ideal for automating builds and tests for embedded projects. 
-- **[Embench](https://github.com/embench/embench-iot)** – Open-source benchmarking suite specifically targeting IoT-class embedded systems. 
-- **[Robot Framework](https://github.com/robotframework/robotframework)** – Generic acceptance-test automation framework, commonly used for higher-level integration and system tests. 
-
-### Static & Dynamic Analysis
-- **[Cppcheck](https://github.com/danmar/cppcheck)** – Popular static analysis tool specifically tailored for C and C++ codebases. 
-- **[Valgrind](https://github.com/paulfloyd/freebsd_valgrind)** – Dynamic analysis tool useful for memory leak detection and error tracking. 
-- **[Clang Sanitizers](https://github.com/google/sanitizers)** – Effective runtime debugging tools for detecting memory safety errors in embedded C/C++ applications. 
-
-### Embedded-Specific Testing Techniques & Tools
-- **[Embedded Artistry's Embedded Testing Guides](https://github.com/embeddedartistry/embedded-resources)** – Curated resources and examples for best practices in embedded software testing. 
-- **[Tracealyzer](https://github.com/Percepio)** *(Commercial with free tiers)* – Real-time trace visualization for debugging and performance analysis of embedded systems. 
-
-### Test Automation & Hardware-in-the-Loop (HIL)
-- **[Labgrid](https://github.com/labgrid-project/labgrid)** – Automation framework for hardware-in-the-loop testing, integrates smoothly with continuous integration. 
-- **[OpenHTF](https://github.com/google/openhtf)** – Hardware testing framework from Google designed for automated manufacturing tests and HIL testing. 
-
-### Examples & Reference Projects
-- **[Nasa JPL's F Prime](https://github.com/nasa/fprime)** – NASA's open-source flight software framework, extensively tested and validated. 
-- **[LittlevGL](https://github.com/lvgl/lvgl)** – Embedded GUI library extensively using unit tests and automated integration testing. 
+
+- [CMock](https://github.com/ThrowTheSwitch/CMock) - Generates mock objects automatically for C, ideal for testing interactions with hardware-dependent code.
+- [Fake Function Framework (FFF)](https://github.com/meekrosoft/fff) - Lightweight, simple mocking framework for C-based embedded software.
+- [Renode](https://github.com/renode/renode) - Multi-architecture framework for hardware simulation and testing, allowing execution and debugging of embedded binaries without actual hardware.
+- [QEMU](https://github.com/qemu/qemu) - Widely adopted open-source emulator, very useful for full-system simulation of embedded platforms during testing.
+- [embedded-hal-mock](https://github.com/dbrgn/embedded-hal-mock) - Mocks for testing Rust embedded-hal based drivers without hardware access.
+
+### Continuous Integration
+
+- [PlatformIO](https://github.com/platformio/platformio-core) - Cross-platform build tool and package manager, ideal for automating builds and tests for embedded projects.
+- [Embench](https://github.com/embench/embench-iot) - Open-source benchmarking suite specifically targeting IoT-class embedded systems.
+- [Robot Framework](https://github.com/robotframework/robotframework) - Generic Python-based acceptance-test automation framework, commonly used for higher-level integration and system tests.
+
+### Static and Dynamic Analysis
+
+- [Cppcheck](https://github.com/danmar/cppcheck) - Popular static analysis tool specifically tailored for C and C++ codebases.
+- [Valgrind](https://valgrind.org) - Dynamic analysis tool useful for memory leak detection and error tracking.
+- [Clang Sanitizers](https://github.com/google/sanitizers) - Effective runtime debugging tools for detecting memory safety errors in embedded C and C++ applications.
+
+### Embedded-Specific Techniques and Tools
+
+- [Embedded Artistry's Embedded Resources](https://github.com/embeddedartistry/embedded-resources) - Curated resources and examples for best practices in embedded software testing.
+- [Tracealyzer](https://github.com/Percepio) - Real-time trace visualization for debugging and performance analysis of embedded systems (commercial with free tiers).
+
+### Test Automation and Hardware-in-the-Loop
+
+- [Labgrid](https://github.com/labgrid-project/labgrid) - Python-based automation framework for hardware-in-the-loop testing, integrates smoothly with continuous integration.
+- [OpenHTF](https://github.com/google/openhtf) - Python hardware testing framework from Google designed for automated manufacturing tests and hardware-in-the-loop testing.
+- [OnMCU](https://github.com/onmcu/onmcu-rs) - CLI for remote MCU development, flashing, and testing on real hardware hosted on the OnMCU platform.
+
+### Examples and Reference Projects
+
+- [NASA JPL's F Prime](https://github.com/nasa/fprime) - NASA's open-source C++ flight software framework, extensively tested and validated.
+- [LVGL](https://github.com/lvgl/lvgl) - Embedded GUI library written in C, extensively using unit tests and automated integration testing.
diff --git a/badges.md b/badges.md
deleted file mode 100644
index 06865c9..0000000
--- a/badges.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# Languages
-- C: 
-- C++: 
-- Rust: 
-- Python: 
-
-
-
-## Rust
-
-- Crates: [](https://crates.io/crates/embedded-test)
diff --git a/contributing.md b/contributing.md
new file mode 100644
index 0000000..562de9f
--- /dev/null
+++ b/contributing.md
@@ -0,0 +1,19 @@
+# Contributing
+
+Thanks for taking the time to contribute!
+
+Please ensure your pull request adheres to the following guidelines:
+
+- Search previous suggestions before making a new one, to avoid duplicates.
+- Make an individual pull request for each suggestion.
+- Use the following format: `- [Name](link) - Description.`
+- Keep descriptions short, concise, and in the present tense.
+- Start each description with a capital letter and end it with a period.
+- Add one link per pull request, in the most appropriate category.
+- New categories, or improvements to the existing ones, are welcome.
+- Check your spelling and grammar.
+- Make sure your text editor is set to remove trailing whitespace.
+- The pull request and commit should have a useful title.
+- Only suggest tools and resources that are actively maintained and well documented.
+
+Thank you for your suggestions!
diff --git a/media/embedded_testing.svg b/media/embedded_testing.svg
new file mode 100644
index 0000000..a218c72
--- /dev/null
+++ b/media/embedded_testing.svg
@@ -0,0 +1,197 @@
+
+