Definition
A technology stack is the combination of languages, frameworks, databases, and infrastructure used to build and run an application.
Usage and related concepts
A stack identifies the chosen components; architecture describes their responsibilities and connections. Studying a stack helps explain implementation choices, but a component list alone does not establish design quality.