The .und folder is a special, optional directory you can place inside your source tree to automatically share configuration files, CodeChecks, and scripts across all Understand projects built from that code.

When present, any Understand project (.und file) that includes your source directory will automatically detect and use the contents of the .und folder—no extra setup needed.


What the .und Folder Can Contain

You can use the .und folder to include:

  • CodeCheck configuration files
    Store shared settings and rule configurations so your team’s coding standards are automatically applied to every project.

  • Custom CodeChecks
    Add custom .upy (Understand Python) scripts to extend CodeCheck with your own rules.

  • Automated architecture scripts
    Include scripts that check architectural dependencies, generate reports, or enforce layering rules.


Example Folder Structure

Here’s an example .und layout used internally at SciTools:

.und/
├── codecheck/
│   └── configs/
│       └── config.json
└── plugin/
    ├── Arch/
    │   └── und-deps.upy
    └── CodeCheck/
        ├── destructor_assign.upy
        ├── forbidden.upy
        ├── inconsistent_lock.upy
        ├── names.upy
        ├── return.upy
        └── style.upy

This setup contains:

  • codecheck/configs/config.json — shared CodeCheck configuration.

  • plugin/Arch/ — scripts for architectural dependency checks.

  • plugin/CodeCheck/ — custom CodeCheck rules used by the team.

Any developer who creates an Understand project using this source tree automatically gains access to all these checks and configurations.


Why Use a .und Folder?

The .und folder helps ensure consistency across multiple Understand projects—especially when your team builds for several platforms (we build on Windows, macOS and Linux) or maintains multiple branches.

By storing configurations and scripts in the source tree, you ensure:

  • Shared coding standards are always available.

  • Custom analysis scripts are accessible to everyone.

  • Every project behaves the same way, regardless of OS or setup.

At SciTools, we use this exact setup internally so that all of our platform-specific projects share the same CodeCheck rules and architecture validation scripts.


How to Set It Up

  1. Create a folder named .und in the root of your source directory.

  2. Add your CodeCheck configurations and plugin scripts under it.

  3. Open or create your Understand project in that source directory.

  4. Understand will automatically detect and load the contents of .und.


Notes

  • The .und folder is hidden by default on mac and linux(due to the leading dot).

  • It’s optional — if not present, Understand behaves normally.

  • You can still override or extend settings in individual projects if needed.