In computing, lightweight software also called lightweight program and lightweight application, is a computer program that is designed to have a small memory footprint (RAM usage) and low CPU usage, overall a low usage of system resources. To achieve this, the software should avoid software bloat and code bloat and try to find the best algorithm efficiency.

LXDE, an example of a lightweight desktop environment for Linux and BSD.

Examples

While all software development generally tries to avoid excessive size and including unnecessary code through various best practices and compiler optimization, lightweight software development implies the employment of specific programming techniques and styles designed to produce extremely small and performant software.

A demonstrative example of the extreme end of lightweight software are complex programs developed entirely in assembly language.

Lightweight software for everyday use usually refers to apps that are used frequently, offer a limited set of features, and start and run quickly.

  • Neovim – A terminal-based text editor with an extremely broad feature set and programmability via Lua. Because Neovim lacks any graphical user interface (GUI), it can include many features, while remaining lightweight, because the graphics libraries are the "heaviest" part of most applications.

See also