{"id":34356265,"url":"https://github.com/named-data/ndn-cxx","last_synced_at":"2025-12-18T02:56:38.683Z","repository":{"id":13697862,"uuid":"16391717","full_name":"named-data/ndn-cxx","owner":"named-data","description":"NDN C++ Library","archived":false,"fork":false,"pushed_at":"2025-11-19T00:37:09.000Z","size":11002,"stargazers_count":143,"open_issues_count":0,"forks_count":158,"subscribers_count":27,"default_branch":"master","last_synced_at":"2025-11-19T02:26:49.497Z","etag":null,"topics":["cpp","library","ndn","networking"],"latest_commit_sha":null,"homepage":"https://docs.named-data.net/ndn-cxx","language":"C++","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/named-data.png","metadata":{"files":{"readme":"README-dev.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING.lesser","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-01-30T21:36:36.000Z","updated_at":"2025-11-19T00:37:13.000Z","dependencies_parsed_at":"2023-01-11T20:21:09.664Z","dependency_job_id":"9f17b6de-7e68-4da1-a8c2-6502b363ad8d","html_url":"https://github.com/named-data/ndn-cxx","commit_stats":null,"previous_names":[],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/named-data/ndn-cxx","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/named-data%2Fndn-cxx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/named-data%2Fndn-cxx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/named-data%2Fndn-cxx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/named-data%2Fndn-cxx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/named-data","download_url":"https://codeload.github.com/named-data/ndn-cxx/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/named-data%2Fndn-cxx/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27790029,"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","status":"online","status_checked_at":"2025-12-18T02:00:09.725Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["cpp","library","ndn","networking"],"created_at":"2025-12-18T02:56:38.053Z","updated_at":"2025-12-18T02:56:38.674Z","avatar_url":"https://github.com/named-data.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Notes for ndn-cxx developers\n\nIf you are new to the NDN software community, please read our\n[Contributor's Guide](https://github.com/named-data/.github/blob/main/CONTRIBUTING.md).\n\n## Code style\n\nndn-cxx code is subject to [ndn-cxx code style](https://docs.named-data.net/ndn-cxx/current/code-style.html).\n\n## Licensing\n\nContributions to ndn-cxx must be licensed under the LGPL v3 or a compatible license.\nIf you choose the LGPL v3, please use the following license boilerplate in all `.hpp`\nand `.cpp` files:\n\n```cpp\n/* -*- Mode:C++; c-file-style:\"gnu\"; indent-tabs-mode:nil; -*- */\n/*\n * Copyright (c) [Year(s)], [Copyright Holder(s)].\n *\n * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).\n *\n * ndn-cxx library is free software: you can redistribute it and/or modify it under the\n * terms of the GNU Lesser General Public License as published by the Free Software\n * Foundation, either version 3 of the License, or (at your option) any later version.\n *\n * ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY\n * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A\n * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.\n *\n * You should have received copies of the GNU General Public License and GNU Lesser\n * General Public License along with ndn-cxx, e.g., in COPYING.md file.  If not, see\n * \u003chttp://www.gnu.org/licenses/\u003e.\n *\n * See AUTHORS.md for complete list of ndn-cxx authors and contributors.\n */\n```\n\nIf you are affiliated to an NSF-supported NDN project institution, please use the [NDN Team License\nBoilerplate](https://redmine.named-data.net/projects/ndn-cxx/wiki/NDN_Team_License_Boilerplate_(ndn-cxx)).\n\n## Unit tests\n\nTo run the unit tests, ndn-cxx needs to be built with unit test support and installed\ninto the configured location.  For example:\n\n```shell\n./waf configure --with-tests # --debug is also strongly recommended while developing\n./waf\nsudo ./waf install\n```\n\n\u003e [!TIP]\n\u003e On Linux you may also need to run `sudo ldconfig` to reconfigure the dynamic linker bindings.\n\nThe simplest way to run the tests is to launch the compiled binary without any parameters:\n\n```shell\n./build/unit-tests\n```\n\nThe [Boost.Test framework](https://www.boost.org/doc/libs/1_74_0/libs/test/doc/html/index.html)\nis very flexible and allows a number of run-time customization of what tests should be run.\nFor example, it is possible to choose to run only a specific test suite, only a specific\ntest case within a suite, specific test cases across multiple test suites, and so on:\n\n```shell\n# Run all the test cases inside the Face test suite (tests/unit/face.t.cpp)\n./build/unit-tests -t TestFace\n\n# Run only the test case \"ExpressInterestData\" from the previous test suite\n./build/unit-tests -t TestFace/ExpressInterestData\n\n# Run the \"Basic\" test case from all test suites\n./build/unit-tests -t */Basic\n```\n\nBy default, Boost.Test framework will produce verbose output only when a test case fails.\nIf it is desired to see verbose output (result of each test assertion), add `-l all`\noption to `./build/unit-tests` command.  To see test progress, you can use `-l test_suite`,\nor `-p` to show a progress bar:\n\n```shell\n# Show report all log messages including the passed test notification\n./build/unit-tests -l all\n\n# Show test suite messages\n./build/unit-tests -l test_suite\n\n# Show nothing\n./build/unit-tests -l nothing\n\n# Show progress bar\n./build/unit-tests -p\n```\n\nThere are many more command line options available, information about which can be obtained\neither from the command line using the `--help` switch, or online on the\n[Boost.Test website](https://www.boost.org/doc/libs/1_74_0/libs/test/doc/html/boost_test/runtime_config/summary.html).\n\n\u003e [!WARNING]\n\u003e If you have a customized `client.conf` in `~/.ndn`, `/etc/ndn`, or `/usr/local/etc/ndn`\n\u003e (or any other `SYSCONFDIR/ndn` if you passed `--sysconfdir` to `./waf configure`),\n\u003e Face-related test cases may fail.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnamed-data%2Fndn-cxx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnamed-data%2Fndn-cxx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnamed-data%2Fndn-cxx/lists"}