Technical Standards

Languages

C++

Standard: C++17 ISO Standard

Compiler: Clang 9 (9.0 or later) or GNU GCC 7 (7.2 or later)

Windows Compiler: Clang (see above), either native or via WSL.

CSS

Standard: W3C CSS

Version: CSS3

Encoding

Standard: UTF-8

HTML

Standard: W3C HTML5

Version: HTML5

Python

Standard: PEP 8

Version: 3.7.x

XML

Standard: W3C XML

Version: 1.0

Libraries

Library

Use

Version

Binding

Source

License

Cairo

2D graphics

1.16.0

C/C++

Package: libcairo2-dev

LGPL/MPL

CPGF

Reflection, Introspection

1.6.0

C++

Repo: libdeps

Apache v2

Eigen

Linear algebra

3.3.1

C++

Repo: libdeps

MPL2

eventpp

Signals

0.1.0

C++

Repo: libdeps

Apache v2

Opus

Audio codec

1.3.1

C++

Repo: libdeps

BSD-3

PySide2

GUI

5.11.x

Python

Pip: PySide2

LGPL

pugixml

XML parsing

1.8

C++

Repo: libdeps

MIT

SDL

Hardware abstraction layer

2.0

C/C++

Package: libsdl2-dev

zlib

Operating System Support Targets

These show minimum specifications for a goal.

Support Goals:

  • 5: Essential

  • 4: High Priority

  • 3: Moderate Priority

  • 2: Low Priority

  • 1: Collateral Support

  • 0: No Support

OS

Memory

Goal

Microsoft Windows

Windows 95

256 MB

2

Windows 98

256 MB

3

Windows 2000

256 MB

3

Windows ME

256 MB

3

Windows XP SP1

256 MB

4

Windows XP SP2

512 MB

5

Windows XP SP3

512 MB

5

Windows Vista

512 MB

5

Windows 7

1 GB

5

Windows 8

(Any)

1

Windows 8.1

(Any)

1

Windows 10

(Any)

5

Apple Mac

OS X 10.0-10.3 PPC

256 MB

2

OS X 10.4 PPC

256 MB

4

OS X 10.4 Intel

256 MB

4

OS X 10.5

512 MB

3

OS X 10.6

1 GB

4

OS X 10.7-10.10

2 GB

4

Linux

Ubuntu LTS

512 MB

5

Debian

512 MB

4

Puppy Linux

256 MB

3

Fedora

1 GB

4

OpenSUSE

1 GB

3

SoaS

1 GB

3

For support consideration: