Skip to content

PcapPlusPlus/pcapplusplus.github.io

Repository files navigation

PcapPlusPlus Logo

PcapPlusPlus is a multi-platform C++ library for capturing, parsing and crafting of network packets. It is designed to be efficient, powerful and easy to use.

PcapPlusPlus enables decoding and forging capabilities for a large variety of network protocols. It also provides easy to use C++ wrappers for the most popular packet processing engines such as libpcap, WinPcap, DPDK, eBPF AF_XDP and PF_RING.

This repo contains the content for PcapPlusPlus web-site.

The project itself can be found here: https://github.com/seladb/PcapPlusPlus

Getting Started

Prerequisites

  1. Git
  2. Docusaurus

Running locally

  1. Clone this repo: git clone https://github.com/PcapPlusPlus/pcapplusplus.github.io.git

  2. Install dependencies:

    Using npm:

    npm ci

    Or using yarn:

    yarn install --frozen-lockfile
  3. Start the web-site:

    Using npm:

    npm start

    Or using yarn:

    yarn run start
  4. If the browser doesn't open automatically browse to http://localhost:3000

Overview

This web-site is built using Docusaurus.

The API reference is generated using Doxygen. The Doxygen files are located under the static/api-docs/<version>/doxygen directory and include the Doxyfile file and mainpage.dox which is the API main page.

Most of the content is organized in MDX files which are easy to generate and maintain and can include React components for extended capabilities. Some pages like the landing page and the versions page are pure React (tsx) pages. The API reference is static HTML files which are generated by Doxygen.

Contribute

You are more than welcome to contribute to this web-site. You can do that by either opening issues on GitHub or by adding/modifying content and create a PR.

If you don't have a GitHub user you can also contact us by email: mailto:pcapplusplus@gmail.com

If you decide to create a PR please make sure you:

  • Run the changes locally to make sure they're working. Please refer to the Getting Started section to learn how
  • Test the changes on different browsers
  • Test the changes on both desktop and mobile. You don't really have to run it on a mobile device, each desktop browser offers a mobile view of the page
  • If you include new images or icons, make sure they are visible in both light mode and dark mode