Boost Libraries Learn Community Posts Downloads
Libraries Learn Community Posts Downloads
Latest 1.92.0 1.91.0-1 1.91.0 1.90.0 1.89.0 1.88.0 1.87.0 1.86.0 1.85.0 1.84.0 1.83.0 1.82.0 1.81.0 1.80.0 1.79.0 1.78.0 1.77.0 1.76.0 1.75.0 1.74.0 1.73.0 1.72.0 1.71.0 1.70.0 1.69.0 1.68.0 1.67.0 1.66.0 1.65.1 1.65.0 1.64.0 1.63.0 1.62.0 1.61.0 1.60.0 1.59.0 1.58.0 1.57.0 1.56.0 1.55.0 1.54.0 1.53.0 1.52.0 1.51.0 1.50.0 1.49.0 1.48.0 1.47.0 1.46.1 1.46.0 1.45.0 1.44.0 1.43.0 1.42.0 1.41.0 1.40.0 1.39.0 1.38.0 1.37.0 1.36.0 1.35.0 1.34.1 1.34.0 1.33.1 1.33.0 1.32.0 1.31.0 1.30.2 1.30.1 1.30.0 1.29.0 1.28.0 1.27.0 1.26.0 1.25.1-bgl 1.25.1 1.25.0 1.24.0 1.23.0 1.22.0 1.21.2 1.21.1 1.21.0 1.20.2 1.20.1 1.20.0 1.19.0 1.18.3 1.18.2 1.18.0 1.17.0 1.16.1
Log In
CTRL+K
Latest 1.92.0 1.91.0-1 1.91.0 1.90.0 1.89.0 1.88.0 1.87.0 1.86.0 1.85.0 1.84.0 1.83.0 1.82.0 1.81.0 1.80.0 1.79.0 1.78.0 1.77.0 1.76.0 1.75.0 1.74.0 1.73.0 1.72.0 1.71.0 1.70.0 1.69.0 1.68.0 1.67.0 1.66.0 1.65.1 1.65.0 1.64.0 1.63.0 1.62.0 1.61.0 1.60.0 1.59.0 1.58.0 1.57.0 1.56.0 1.55.0 1.54.0 1.53.0 1.52.0 1.51.0 1.50.0 1.49.0 1.48.0 1.47.0 1.46.1 1.46.0 1.45.0 1.44.0 1.43.0 1.42.0 1.41.0 1.40.0 1.39.0 1.38.0 1.37.0 1.36.0 1.35.0 1.34.1 1.34.0 1.33.1 1.33.0 1.32.0 1.31.0 1.30.2 1.30.1 1.30.0 1.29.0 1.28.0 1.27.0 1.26.0 1.25.1-bgl 1.25.1 1.25.0 1.24.0 1.23.0 1.22.0 1.21.2 1.21.1 1.21.0 1.20.2 1.20.1 1.20.0 1.19.0 1.18.3 1.18.2 1.18.0 1.17.0 1.16.1
Log In
K 🇸🇦
kode1234565 Member Since 2026 Software Engineer, C++ Alliance
Share Profile
Bio

Contributors Frequently Asked Questions

This section contains answers to the common questions that new contributors to Boost often have.

Topics

  • Adding New Libraries

  • Boost Software License

  • Development Environments

  • Documentation

  • Existing Boost Libraries

  • Generative Artificial Intelligence

  • Modular Boost

  • Post-Release Engagement

  • Safe C++

  • Security

  • Testing

Adding New Libraries

  1. Do Boost libraries typically come from gauging outside interest, or perhaps more from developers following their own interests?

    Most Boost Libraries originate from individual developers, or small teams, following their own interests, rather than from organized external demand. Typically, self-motivated developers identify a gap in the C++ ecosystem or have a strong interest in a particular domain. To be clear, Boost is not driven by corporate feature requests, community polling or public wishlists, nor top-down direction (though The C++ Alliance might sponsor, or partially sponsor, work it deems of specific value, such as it did with Boost.Json). The community acts as a gatekeeper to ensure quality, generality, and long-term usefulness, rather than as a source for library concepts.

  2. When considering developing a library for Boost, what is the right balance between ambitious functionality and limited functionality?

    The keys to a successful development of a new library are to identify core functionality and start simple. Prioritize functionality that provides significant value to developers and aligns with Boost’s goals of promoting high-quality, reusable libraries. Avoid adding unnecessary features that may increase complexity without adding much value. It’s often beneficial to start with a simpler implementation that addresses a specific problem or use case effectively. A library with a narrow focus and a clear, intuitive API is more likely to be accepted by the Boost community than one that attempts to solve too many problems at once or introduces unnecessary complexity.

    In addition to this, consider future extensibility, performance, portability, current trends, and always remember you can seek community advice and feedback through the Boost mailing lists.

  3. Am I right in thinking that Boost libraries are typically low-level and very specific, rather than higher-level and for tackling large scale issues such as generative AI, a modern game engine, or quantum computing, to name a few examples?

    Yes, Boost libraries have traditionally excelled in areas such as high-performance computing, cross-platform, embedded systems, and networking. Taking your example of generative AI, many Boost libraries could be used as components of a new AI model - such as parsing, networking, serialization, errors and exception handling, math and statistics, randomness, and so on. A new quality generative AI model is a considerable undertaking, and Boost libraries could do a lot of the grunt work and leave a development team with the most creative aspects. Simulating quantum computing, or creating a modern game engine, gets a similar answer, a development team could focus on the interactive UI, with Boost libraries handling a myriad of administrative and operational tasks.

    A key aspect of a successful Boost library is focus: what is the problem that the library in question is the solution for?

  4. If there is social media discussion on new libraries, typically what does the discussion entail?

    The new libraries most requested tend to be more like updates to existing libraries. There’s a common desire for more comprehensive asynchronous programming support, often for higher-level abstractions or more extensive async features. Another example is more programming options, say for an enhanced version of Boost.ProgramOptions, or for libraries supporting earlier or later C++ standards, such as requests to support pre-C++17 standards.

Boost Software License

  1. Where can I read the current version of the Boost Software License?

    Here: The Boost Software License.

  2. How should Boost programmers apply the license to source and header files?

    Add a multi-line comment based on the following template, substituting appropriate text for the name and date on the top line:

    cpp // Copyright (c) 2004-2006 Joe Coder // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at // https://www.boost.org/LICENSE_1_0.txt)

    Notes

    1. Leave an empty line before and after the above comment block.

    2. It is fine if the copyright and license messages are not on different lines; in no case should there be other intervening text.

    3. Do not include "All rights reserved" anywhere.

    4. Other ways of licensing source files have been considered, but some of them turned out to unintentionally nullify legal elements of the license. Having fixed language for referring to the license helps corporate legal departments evaluate the Boost distribution.

    5. Creativity in license reference language is strongly discouraged, but judicious changes in the use of whitespace are fine.

  3. How should the license be applied to documentation files rather than source files?

    Similarly to the way it is applied to source files: the user should see the very same text indicated in the template above, with the only difference that your local copy of LICENSE_1_0.txt should also be linked to.

  4. How should Boost programmers maintain the copyright messages?

    Copyright is only claimed for changes meeting a certain threshold of originality. Therefore, the copyright message only covers expressions of creativity. It is up to authors of changes to add themselves to the copyright message if they so decide. Typically, a new claimant is added when someone takes over maintenance of a library or a new version of an existing library is developed. In principle, do not remove previous copyright claims - just add new claims and/or claimants.

  5. How is the Boost Software License (BSL) different from the GNU General Public License (GPL)?

    The GNU General Public License is longer, and may be harder to understand. The Boost license permits the creation of derivative works for any use with no legal requirement to release your source code. Other differences include BSL not requiring reproduction of copyright messages for object code redistribution, and the fact that BSL is not "viral": if you distribute your own code along with some Boost code, the BSL applies only to the Boost code (and modified versions thereof); you are free to license your own code under any terms you like.

  6. Why the phrase "machine-executable object code generated by a source language processor"?

    To distinguish cases where we do not require reproduction of the copyrights and license (such as object libraries, shared libraries, and final program executables), from cases where reproduction is still required (such as distribution of self-extracting archives of source code or precompiled header files). More detailed wording was rejected as not being legally necessary, and reducing readability.

  7. Why is the "disclaimer" paragraph of the license entirely in uppercase?

    Capitalization of these particular provisions is a US legal mandate for consumer protection.

  8. Does the copyright and license cover interfaces too?

    The conceptual interface to a library is not covered. The particular representation expressed in the header is covered, as is the documentation, examples, test programs, and all the other material that goes with the library. A different implementation is free to use the same logical interface, however. Interface issues have been fought out in court several times; refer to a lawyer if this is likely to be an issue.

Achievements

Achievements capture your contributions to Boost — automatically tracked where possible, manually verified for high-value activities.

  • 00
    Code Commits Commits authored to any Boost repository.
  • 00
    Documentation Doc contributions using standardised Boost tooling (Antora / BoostLook).
  • 00
    Library Authoring Authored an original Boost library accepted into the collection.
  • 00
    Library Maintenance Number of libraries actively maintained.
  • 00
    Library Review Formal review submissions on Boost proposals.
  • 00
    Library Versioning Authored new versions / releases of Boost libraries.
  • 00
    Mailing List Participation Participation on the Boost developers mailing list.
  • 00
    News Posts Published Articles / news posts published on Boost.org.

Badges

Badges recognize your journey on Boost — from the contributions you make to the time you've invested and the milestones you've reached along the way.

  • Achievement-based Reflects the depth of your contributions. Accumulate achievements to unlock five tiers; Bronze, Silver, Gold, Platinum and Diamond.
  • Tenure-based Awarded in recognition of your time on the platform. The longer you've been part of the Boost community, the higher the tier you unlock.
  • Boost day celebration A celebration of the day you joined Boost. Awarded annually to mark another year as part of the community.
Contact Terms of Use Privacy Policy Report Bug
Feedback

What do you think of the new website?

Thank you — this is on its way to the team.

Keep them coming as you explore.

Found a bug, or have an idea? We would love to hear from you.

Pick one
Bug
Suggestion
Question
Usability
Incorrect information
Other

Choose File

Optional. PNG or JPEG, up to 2MB — a picture often saves us a lot of guesswork.

Optional. Only used if we need to ask you a follow-up question.

Sent with your browser and current page info.