blob: d030d70dfdf8f3a39d7fa9acfbce8ac192da5ba0 [file] [log] [blame]
.. _docs-root:
=======
Pigweed
=======
*Sustained, robust, and rapid embedded product development for large teams*
.. raw:: html
<!-- Add a little space between the H2 and the cards. This is an edge case
that only occurs on the homepage so it's best to just hack the fix
locally here. -->
<br>
-----------
Get started
-----------
.. grid:: 1
.. grid-item-card:: :octicon:`rocket` Tour of Pigweed
:link: showcase-sense
:link-type: ref
:class-item: sales-pitch-cta-primary
Explore key Pigweed features, such as hermetic building, full C++
code intelligence in VS Code, communicating with devices over RPC,
host-side and on-device unit tests, and lots more in a guided
walkthrough.
.. grid:: 2
.. grid-item-card:: :octicon:`code-square` Bazel quickstart
:link: https://cs.opensource.google/pigweed/quickstart/bazel
:link-type: url
:class-item: sales-pitch-cta-secondary
Fork our minimal, Bazel-based starter project to create a new
Pigweed project from scratch. The project includes a basic
blinky LED program that runs on Raspberry Pi Picos and can
be simulated on your development host.
.. grid-item-card:: :octicon:`list-ordered` More get started guides
:link: docs-get-started
:link-type: ref
:class-item: sales-pitch-cta-secondary
Set up a C++-based Zephyr project, set up GitHub Actions,
integrate Pigweed into an existing Bazel project, and more.
----------------
What is Pigweed?
----------------
.. raw:: html
<!-- Add a little space between the H2 and the cards. This is an edge case
that only occurs on the homepage so it's best to just hack the fix
locally here. -->
<br>
.. grid:: 2
.. grid-item-card:: :octicon:`code-square` Libraries
:link: docs-concepts-embedded-development-libraries
:link-type: ref
:class-item: sales-pitch-cta-secondary
Over 150 libraries ("modules") enabling you to use modern C++ and
software development best practices without compromising performance,
code size, or memory
.. grid-item-card:: :octicon:`tools` Automation
:link: docs-concepts-build-system
:link-type: ref
:class-item: sales-pitch-cta-secondary
Easier automated building, testing, and linting for Bazel, GN,
and CMake projects
.. grid:: 2
.. grid-item-card:: :octicon:`container` Environments
:link: docs-concepts-development-environment
:link-type: ref
:class-item: sales-pitch-cta-secondary
Hermetic and replicable development environments for your entire team -
no more struggling with toolchains and "it worked on my machine"
.. grid-item-card:: :octicon:`stack` Frameworks
:link: docs-concepts-full-framework
:link-type: ref
:class-item: sales-pitch-cta-secondary
Turnkey solutions for new projects that want to make full use of
everything that Pigweed offers
--------------------
Who's using Pigweed?
--------------------
.. _satellites: https://www.spinlaunch.com/
.. _autonomous aerial drones: https://www.flyzipline.com/
.. TODO: b/358432838 - Update this section once the banned word list is fixed.
Pigweed has shipped in millions of devices, including Google's suite of Pixel
devices, Nest thermostats, `satellites`_, and `autonomous aerial drones`_.
--------------------
Showcase: pw_console
--------------------
:ref:`module-pw_console` is our multi-purpose, pluggable REPL and log viewer.
It's designed to be a complete development and manufacturing solution for
interacting with hardware devices via :ref:`module-pw_rpc` over a
:ref:`module-pw_hdlc` transport. Gone are the days of hacking together a REPL
and log viewer for each new project!
.. figure:: pw_console/images/python_completion.png
:alt: Using pw_console to interact with a device
Using pw_console to interact with a device
.. _docs-root-changelog:
---------------------
What's new in Pigweed
---------------------
.. include:: changelog.rst
:start-after: .. changelog_highlights_start
:end-before: .. changelog_highlights_end
See :ref:`docs-changelog-latest` in our changelog for details.
----------
Talk to us
----------
.. raw:: html
<!-- Add a little space between the H2 and the cards. This is an edge case
that only occurs on the homepage so it's best to just hack the fix
locally here. -->
<br>
.. grid:: 1
.. grid-item-card:: :octicon:`comment-discussion` Chat room
:link: https://discord.gg/M9NSeTA
:link-type: url
:class-item: sales-pitch-cta-secondary
For real-time discussion with the Pigweed team, head over to our Discord.
.. grid:: 2
.. grid-item-card:: :octicon:`device-camera-video` Monthly community meeting
:link: https://discord.com/channels/691686718377558037/951228399119126548
:link-type: url
:class-item: sales-pitch-cta-secondary
.. pigweed-live::
.. grid-item-card:: :octicon:`bug` Issues
:link: https://pwbug.dev
:link-type: url
:class-item: sales-pitch-cta-secondary
Found a bug? Got a feature request? Please create a new issue in our
tracker.
.. toctree::
:maxdepth: 1
:hidden:
Home <self>
Tour of Pigweed <docs/showcases/sense/index>
What's new <changelog>
docs/get_started/index
Source code <https://cs.pigweed.dev/pigweed>
docs/showcases/index
docs/concepts/index
docs/3p/index
modules
docs/community/index
Developing & contributing <docs/contributing/index>
Blog <docs/blog/index>