Developer Onboarding

Back to Support

This page provides documentation for anyone working with the NAPS2 source code.

Development Environment and Compiling

You can open the NAPS2 solution with Visual Studio 2022 Community or Rider.

Dev Tools

NAPS2 has a dedicated set of command line tools for building, testing, and packaging. These build on top of the normal dotnet CLI.

Build Configurations

Project Structure

The NAPS2 solution has a number of projects:

And test projects:

Also see related repositories:

Oauth2 Client Credentials

Gmail and Outlook Web Access integration (for the "Email PDF" button) require client credentials to be set up for each service. If you want to include support in a custom build you will need to get your own set of credentials.


Create a file named NAPS2.Lib\google.credentials.json that you get from the Google Api Console (help).


Create a file named NAPS2.Lib\microsoft.credentials.json and set "client_id" and "client_secret" from the Microsoft Application Portal (generate a password for "client_secret").

You will also need to set up web redirect URIs to as well as for ports 49319, 58985, 53893, 50086.

Back to Support