{"id":13719999,"url":"https://github.com/zephyrproject-rtos/west","last_synced_at":"2025-05-14T08:08:27.207Z","repository":{"id":37851511,"uuid":"134577458","full_name":"zephyrproject-rtos/west","owner":"zephyrproject-rtos","description":"West, Zephyr's meta-tool","archived":false,"fork":false,"pushed_at":"2025-05-09T19:02:08.000Z","size":1509,"stargazers_count":257,"open_issues_count":50,"forks_count":133,"subscribers_count":33,"default_branch":"main","last_synced_at":"2025-05-09T20:19:58.998Z","etag":null,"topics":["build-tool","debugging","flashing","repository-management","zephyr"],"latest_commit_sha":null,"homepage":"https://docs.zephyrproject.org/latest/guides/west/index.html","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zephyrproject-rtos.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-05-23T13:56:05.000Z","updated_at":"2025-05-09T19:02:13.000Z","dependencies_parsed_at":"2023-02-04T11:30:41.247Z","dependency_job_id":"9829f67f-adbb-4715-906f-4f637f3f6793","html_url":"https://github.com/zephyrproject-rtos/west","commit_stats":{"total_commits":851,"total_committers":38,"mean_commits":"22.394736842105264","dds":0.4101057579318449,"last_synced_commit":"7f842c2b84b53d5949501e10f4dafe675ddcac2f"},"previous_names":[],"tags_count":61,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zephyrproject-rtos%2Fwest","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zephyrproject-rtos%2Fwest/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zephyrproject-rtos%2Fwest/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zephyrproject-rtos%2Fwest/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zephyrproject-rtos","download_url":"https://codeload.github.com/zephyrproject-rtos/west/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253317514,"owners_count":21889583,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["build-tool","debugging","flashing","repository-management","zephyr"],"created_at":"2024-08-03T01:00:58.790Z","updated_at":"2025-05-14T08:08:22.197Z","avatar_url":"https://github.com/zephyrproject-rtos.png","language":"Python","funding_links":[],"categories":["Official Resources","Zephyr core components"],"sub_categories":[],"readme":".. raw:: html\n\n   \u003ca href=\"https://scorecard.dev/viewer/?uri=github.com/zephyrproject-rtos/west\"\u003e\u003cimg src=\"https://api.securityscorecards.dev/projects/github.com/zephyrproject-rtos/west/badge\"\u003e\u003c/a\u003e\n\nThis is the Zephyr RTOS meta tool, ``west``.\n\nhttps://docs.zephyrproject.org/latest/guides/west/index.html\n\nInstallation\n------------\n\nUsing pip::\n\n  pip3 install west\n\n(Use ``pip3 uninstall west`` to uninstall it.)\n\nBasic Usage\n-----------\n\nWest lets you manage multiple Git repositories under a single directory using a\nsingle file, called the *west manifest file*, or *manifest* for short.\nBy default the manifest file is named ``west.yml``.\nYou use ``west init`` to set up this directory, then ``west update`` to fetch\nand/or update the repositories named in the manifest.\n\nBy default, west uses `upstream Zephyr's manifest file\n\u003chttps://github.com/zephyrproject-rtos/zephyr/blob/main/west.yml\u003e`_, but west\ndoesn't care if the manifest repository is zephyr or not. You can and are\nencouraged to make your own manifest repositories to meet your needs.\n\nFor more details, see the `West guide\n\u003chttps://docs.zephyrproject.org/latest/guides/west/index.html\u003e`_ in the Zephyr\ndocumentation.\n\nExample usage using the upstream manifest file::\n\n  mkdir zephyrproject \u0026\u0026 cd zephyrproject\n  west init\n  west update\n\nWhat just happened:\n\n- ``west init`` clones the upstream *west manifest* repository, which in this\n  case is the zephyr repository. The manifest repository contains ``west.yml``,\n  a YAML description of the Zephyr installation, including Git repositories and\n  other metadata.\n\n- ``west update`` clones the other repositories named in the manifest file,\n  creating working trees in the installation directory ``zephyrproject``.\n\nUse ``west init -m`` to specify another manifest repository. Use ``--mr`` to\nuse a revision to inialize from; if not given, the remote's default branch is used.\nUse ``--mf`` to use a manifest file other than ``west.yml``.\n\nAdditional Commands\n-------------------\n\nWest has multiple sub-commands. After running ``west init``, you can\nrun them from anywhere under ``zephyrproject``.\n\nFor a list of available commands, run ``west -h``. Get help on a\ncommand with ``west \u003ccommand\u003e -h``.\n\nWest is extensible: you can add new commands to west without modifying its\nsource code. See `Extensions\n\u003chttps://docs.zephyrproject.org/latest/guides/west/extensions.html\u003e`_ in the\ndocumentation for details.\n\nRunning the Tests\n-----------------\n\nFirst, install tox::\n\n  # macOS, Windows\n  pip3 install tox\n\n  # Linux\n  pip3 install --user tox\n\nThen, run the test suite locally from the top level directory::\n\n  tox\n\nYou can use ``--`` to tell tox to pass arguments to ``pytest``. This is\nespecially useful to focus on specific tests and save time. Examples::\n\n  # Run a subset of tests\n  tox  --  tests/test_project.py\n\n  # Debug the ``test_update_narrow()`` code with ``pdb`` (but _not_ the\n  # west code which is running in subprocesses)\n  tox  --  --verbose --exitfirst --trace -k test_update_narrow\n\n  # Run all tests with \"import\" in their name and let them log to the\n  # current terminal\n  tox  --  -v -k import --capture=no\n\nThe tests cannot be run with ``pytest`` directly, they require the tox\nenvironment.\n\nSee the tox configuration file, tox.ini, for more details.\n\nHacking on West\n---------------\n\nThis section contains notes for getting started developing west itself.\n\nEditable Install\n~~~~~~~~~~~~~~~~\n\nTo run west \"live\" from the current source code tree, run this command from the\ntop level directory in the west repository::\n\n  pip3 install -e .\n\nThis is useful if you are actively working on west and don't want to re-package\nand install a wheel each time you run it.\n\nInstalling from Source\n~~~~~~~~~~~~~~~~~~~~~~\n\nYou can create and install a wheel package to install west as well.\n\nTo build the west wheel file::\n\n  pip3 install --upgrade build\n  python -m build\n\nThis will create a file named ``dist/west-x.y.z-py3-none-any.whl``,\nwhere ``x.y.z`` is the current version in setup.py.\n\nTo install the wheel::\n\n  pip3 install -U dist/west-x.y.z-py3-none-any.whl\n\nYou can ``pip3 uninstall west`` to remove this wheel before re-installing the\nversion from PyPI, etc.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzephyrproject-rtos%2Fwest","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzephyrproject-rtos%2Fwest","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzephyrproject-rtos%2Fwest/lists"}