# amnezia-client | Amnezia VPN | Knowledge Base | Instagit

Amnezia VPN Client (Desktop+Mobile)

GitHub Stars: 14.1k

Repository: https://github.com/amnezia-vpn/amnezia-client

---

## Articles

### [Where Settings and Preferences Are Managed in the Amnezia-Client Codebase](/amnezia-vpn/amnezia-client/where-are-settings-preferences-managed-amnezia-client-codebase)

Discover where Amnezia-Client settings and preferences are managed. Explore the three-layer architecture, SecureAppSettingsRepository, SecureQSettings, and controller classes for detailed insights.

- Tags: internals
- Published: 2026-07-29

### [What Is the Amnezia-Client License? GPL‑3.0 Terms and Compliance Guide](/amnezia-vpn/amnezia-client/what-is-license-amnezia-client-software)

Understand the Amnezia-Client license, GPL-3.0. Learn your rights for free use, modification, and distribution of this open-source VPN client and ensure compliance.

- Tags: api-reference
- Published: 2026-07-29

### [How to Contribute Code to the Amnezia-Client Project: A Complete Developer's Guide](/amnezia-vpn/amnezia-client/how-to-contribute-code-amnezia-client-project)

Contribute code to the Amnezia-Client project easily. Follow this guide to fork, build, test, and submit pull requests for the amnezia-vpn/amnezia-client repository.

- Tags: how-to-guide
- Published: 2026-07-29

### [What Are the Logging Levels Available in Amnezia-Client?](/amnezia-vpn/amnezia-client/what-are-logging-levels-available-amnezia-client)

Explore the five logging levels Trace, Debug, Info, Warning, and Error in amnezia-client. Understand their implementation and usage for effective issue tracking and system monitoring.

- Tags: api-reference
- Published: 2026-07-29

### [How Amnezia VPN Client Implements Kill Switch: Architecture and Code Deep Dive](/amnezia-vpn/amnezia-client/how-does-amnezia-client-implement-kill-switch-functionality)

Discover how Amnezia VPN client implements its kill switch. Learn about the cross-platform architecture and code used to block traffic on Windows, Linux, and macOS.

- Tags: architecture
- Published: 2026-07-29

### [Where to Find the Client-Side Code for Managing Connection States in Amnezia VPN](/amnezia-vpn/amnezia-client/where-can-i-find-client-side-code-managing-connection-states)

Locate Amnezia VPN client-side code for connection states. Find vital logic in connectionController.cpp and vpnConnection.cpp for seamless connection management.

- Tags: how-to-guide
- Published: 2026-07-29

### [What Is the Core Module in Amnezia-Client? Architecture and Responsibilities Explained](/amnezia-vpn/amnezia-client/what-is-role-core-module-amnezia-client)

Discover the Amnezia-Client core module. Learn how it manages the VPN lifecycle and bridges data layers with the Qt/QML interface. Understand its architecture and responsibilities.

- Tags: internals
- Published: 2026-07-29

### [How to Test amnezia-client Locally: Complete Build and Runtime Guide](/amnezia-vpn/amnezia-client/how-to-test-amnezia-client-locally)

Learn to test amnezia-client locally. This guide details building the service daemon and UI client with CMake and Conan, then running them to verify IPC and VPN tunnel functionality.

- Tags: how-to-guide
- Published: 2026-07-29

### [Amnezia-Client Architecture: Main Components, Layer Structure, and Source Code Organization](/amnezia-vpn/amnezia-client/what-are-main-components-amnezia-client-architecture)

Explore amnezia-client architecture. Understand its QML UI, core logic, VPN engine, protocol implementations, and background service separation for a robust, cross-platform VPN solution.

- Tags: architecture
- Published: 2026-07-29

### [How Does amnezia-client Handle DNS Resolution? A Deep Dive into the Cross-Platform VPN DNS Architecture](/amnezia-vpn/amnezia-client/how-does-amnezia-client-handle-dns-resolution)

Discover how amnezia-client handles DNS resolution by routing queries through platform-specific APIs and restoring system DNS upon disconnection. Learn about its secure VPN DNS architecture.

- Tags: deep-dive
- Published: 2026-07-29

### [Where Are Network Interface Handling Routines Located in Amnezia-Client?](/amnezia-vpn/amnezia-client/where-are-network-interface-handling-routines-located-amnezia-client)

Discover network interface handling routines in Amnezia Client. Explore platform-specific utility classes and the central Daemon class for robust network management. Find the code now.

- Tags: internals
- Published: 2026-07-29

### [VPN Protocols Supported by Amnezia Client: WireGuard, OpenVPN, IKEv2, AWG, and Xray](/amnezia-vpn/amnezia-client/what-are-different-vpn-protocols-supported-amnezia-client)

Discover the VPN protocols Amnezia Client supports: WireGuard, OpenVPN, IKEv2, AWG, and Xray. Learn about their implementation in the Amnezia VPN repository.

- Tags: deep-dive
- Published: 2026-07-29

### [What UI Framework Does Amnezia-Client Use?](/amnezia-vpn/amnezia-client/what-ui-framework-does-amnezia-client-use)

Discover the UI framework Amnezia-Client employs. Learn how Qt Quick QML and C++ controllers power its visual interfaces. Explore the technical details now.

- Tags: getting-started
- Published: 2026-07-29

### [How Amnezia-Client Handles Network Connections: Modular VPN Protocol Architecture](/amnezia-vpn/amnezia-client/how-does-amnezia-client-handle-network-connections)

Discover how Amnezia-Client's modular VPN protocol architecture manages network connections leveraging inheritance for configuration, process management, and kill-switch enforcement with a unified API.

- Tags: internals
- Published: 2026-07-29

### [Main Entry Point for the Amnezia-Client Application: Complete Startup Analysis](/amnezia-vpn/amnezia-client/where-is-main-entry-point-amnezia-client-application)

Discover the main entry point for the amnezia-client application in client/main.cpp. Understand how it initializes the Qt app, sets up SSH, and manages the GUI event loop for seamless operation.

- Tags: deep-dive
- Published: 2026-07-29

### [How to Set Up a Development Environment for amnezia-client](/amnezia-vpn/amnezia-client/how-to-set-up-development-environment-amnezia-client)

Set up your amnezia-client development environment easily. Install Qt, CMake, and Conan, then compile the desktop client and VPN service. Start contributing today.

- Tags: how-to-guide
- Published: 2026-07-29

### [Dependencies for Amnezia VPN Client: Complete Build and Runtime Guide](/amnezia-vpn/amnezia-client/what-are-the-dependencies-for-amnezia-client)

Discover Amnezia VPN client dependencies. Learn how Conan, CMake, Qt, and platform-specific packages like OpenVPN, WireGuard, and XRay enable cross-platform builds and runtime.

- Tags: how-to-guide
- Published: 2026-07-29

### [How to Build Amnezia-Client from Source: Complete CMake & Qt6 Guide](/amnezia-vpn/amnezia-client/how-to-build-amnezia-client-from-source)

Build Amnezia-Client from source with our complete CMake and Qt6 guide. Clone the repo, install dependencies, and compile the GUI and service effortlessly.

- Tags: how-to-guide
- Published: 2026-07-29

### [Where to Find the Amnezia VPN Client Testing Suite: Files, Build Steps, and Qt Test Framework](/amnezia-vpn/amnezia-client/where-can-i-find-the-amnezia-vpn-clients-testing-suite)

Locate the Amnezia VPN client testing suite in the amnezia-vpn/amnezia-client repository. Discover build steps and learn how to compile the tests with CMake and the Qt Test framework.

- Tags: how-to-guide
- Published: 2026-07-28

### [Where to Find the Amnezia VPN Client Backend Code: Complete Developer Guide](/amnezia-vpn/amnezia-client/where-can-i-find-the-amnezia-vpn-clients-backend-code)

Locate the Amnezia VPN client backend code in the amnezia-vpn/amnezia-client repository's service/ directory. Access system service wrapper and VPN engine controller code easily.

- Tags: how-to-guide
- Published: 2026-07-28

### [How UI Components Are Managed in the Amnezia VPN Client: Qt/QML Architecture Explained](/amnezia-vpn/amnezia-client/how-are-ui-components-managed-in-amnezia-vpn-client)

Understand how Amnezia VPN client manages UI components using a Qt QML architecture. Explore C++ controllers, context properties, and declarative page loading. Learn more now.

- Tags: architecture
- Published: 2026-07-28

### [Amnezia VPN Client Main Entry Point: Qt Boot Sequence in client/main.cpp Explained](/amnezia-vpn/amnezia-client/where-is-the-main-entry-point-for-the-amnezia-vpn-client-application)

Discover the Qt boot sequence for the Amnezia VPN client. Explore client/main.cpp to understand how the application initializes, migrates config, and starts the local server.

- Tags: internals
- Published: 2026-07-28

### [Dependencies for Compiling Amnezia VPN Client: Complete Conan and CMake Guide](/amnezia-vpn/amnezia-client/what-are-the-dependencies-for-compiling-amnezia-vpn-client)

Learn to compile Amnezia VPN client by resolving C++ dependencies with Conan and linking Qt 6 modules using CMake. Get the complete guide.

- Tags: how-to-guide
- Published: 2026-07-28

### [How to Build the Amnezia VPN Client from Source on Linux, Windows, and Android](/amnezia-vpn/amnezia-client/how-to-build-amnezia-vpn-client-from-source)

Build the Amnezia VPN client from source easily on Linux Windows and Android. Follow our guide to compile the latest version using CMake Qt and Conan.

- Tags: how-to-guide
- Published: 2026-07-28

