Skip to main content

BeeBEEP in numbers

How big BeeBEEP is: files, lines of code, classes, tests, translations and documents, counted from the source.

For: developers, translators · From BeeBEEP 6.0.0 · Updated on

This page counts what BeeBEEP is made of: its source files, lines of code, tests, translations and documents. It is for anyone who wants to size up the project before reading it, building it or contributing to it. Every number below comes from the source itself and is rewritten by a program, so it is as recent as the version named in the first sentence.

At a glance

This count is for version 5.99.0. The program is 1,045 source files and 206,192 lines, 112,807 of them code, in 388 classes. 4,304 test functions check it, 25 languages translate it and 23 documents describe it.

Source code by area

The program is split by what each part does. The core library holds all the logic and has no interface; the two interface rows are the C++ and the QML that draw it; the legacy bridge lets BeeBEEP 6 talk with BeeBEEP 5. The last row counts the automated tests apart: they are not part of the total above them.

AreaFilesCodeCommentsBlankLines
Core library68667,25048,54716,027131,824
Legacy 5.x bridge558,2803,1731,53312,986
Interface, C++ side13412,3257,7502,89222,967
Interface, QML side10815,7246,0822,24824,054
Plugins414,7252,0875767,388
Plugin SDK437210344519
Build and packaging174,1311,7106136,454
Total1,045112,80769,45223,933206,192
Automated tests747117,70529,12723,777170,609

Source code by language

The same total, split by the language the code is written in.

LanguageFilesCodeCommentsBlankLines
C++88088,23359,74820,525168,506
QML10815,8126,2172,32624,355
JavaScript384,4891,9865226,997
Python49662862131,465
CMake61,8497051382,692
Shell and batch71,1274821551,764
CSS23312854413
Total1,045112,80769,45223,933206,192

Everything else

WhatHow many
Test functions4,304
Classes and structures in the program's headers388
Languages the interface is translated into25
Texts to translate987
Documents23
Words in the documents44,852
Vector pictures (SVG)111
Raster pictures (PNG)141

How the numbers are counted

  • Only tracked files. What a build leaves behind and what is downloaded to build are not counted.
  • A line is code, a comment or blank. A comment is a line that starts with a comment mark, or that sits inside a block comment. A line of code followed by a comment on the same line is code. The count is deliberately simple, so it can differ by a little from other tools.
  • Not counted as lines. Pictures, the translation files, the compiled translations and the data files are counted as files only.
  • Classes are the class and structure definitions at the top of the program's headers. Enumerations, namespaces and free functions are not classes, so the count is lower than the number of headers.
  • Test functions are the functions each test file registers to run. One function can check many cases, so they are not the number of individual checks.
  • Texts to translate is the largest number of interface texts found in one language file.

All the help pages