pimaso

Third-party licenses

pimaso is built on open-source software. Every component it ships is listed here with its licence.

None of these components is a service. They run on your device, and none of them sends anything anywhere in this app’s configuration — see the Privacy Policy.

Application libraries

Linked into the app from npm. Versions are those in pimaso 1.0.3.

Version 0.81.6

The application framework.

react MIT
Version 19.1.4

The UI library React Native renders with.

Version 6.19.2

The playback backend: RTSP, decoding and rendering. Patched in this app — see below.

Version 124.0.8

Two-way audio (Talk).

Version 10.0.0

Android Keystore storage for the camera cache and the session.

Version 3.1.1

App-private storage for preferences.

Version 7.3.14

Navigation between the app’s destinations.

Version 7.18.6

Native stack navigator.

Version 7.18.14

Tab navigator.

Version 4.16.0

Native screen containers behind the navigators.

Version 5.8.0

Insets for notches, status and navigation bars.

Version 15.15.5

Draws the icons as vectors.

Version 5.101.4

Fetching, caching and refreshing everything on the server plane.

zod MIT
Version 3.25.76

Validates every response from the imaso server against a shared schema.

Native components

Shipped inside the modules above, each under its own licence.

The RTSP playback and decoding pipeline, shipped inside react-native-video.

WebRTC (Google) BSD-3-Clause

Carries the microphone audio for Talk, shipped inside react-native-webrtc.

The platform support libraries every Android app links against.

Hermes MIT

The JavaScript engine React Native runs the app in.

Material Symbols Apache-2.0

The icon artwork. The paths are extracted at build time and drawn as vectors; no font is shipped.

Every component here is permissively licensed

Everything pimaso ships is under the MIT, Apache-2.0 or BSD-3-Clause licence. There is no copyleft component in the app, which is a deliberate constraint rather than a coincidence: pimaso’s own source is not published, and a component under a copyleft licence would either have to change that or be removed.

One was removed for exactly that reason. Until August 2026 a second playback backend built on libVLC shipped alongside the current one, as the fallback for cameras whose RTSP the default backend refuses. libVLC’s own core is permissive enough for this, but the prebuilt Android package used with it bundles further components under the GNU General Public License — so it was taken out. None of those components was doing anything for a viewer: they encode video and read DVDs, and this app only decodes a network stream.

It is a real loss, and worth stating rather than quietly dropping: a camera the app cannot play no longer has a second decoder to fall back to.

Modifications

One of the npm packages above is patched in this app, applied at build time rather than forked. react-native-video — it implements a texture-backed video surface that ships as an empty stub upstream, so a rotated camera can be drawn the right way up and a pinched tile stays inside its own bounds; and it forces RTP to be interleaved over the RTSP TCP connection instead of arriving on separate UDP ports, which is what makes cameras work on networks that drop the UDP.

The patch is MIT-licensed material under the same terms as the package it applies to, and is available on request from [email protected].

Artwork

The app icon and in-app mark are imaso’s own artwork, used with the project’s identity. The interface icons are Material Symbols, Apache-2.0.

Something missing?

If a component is used and is not listed here, that is an error worth reporting — please open an issue, or email [email protected].