basic structure: 3rdparty provides library for app usage