insights+ Project and Folder Structure

Contents

    Project Structure

    A repository (aka Solution) for an insights+ module should contain the following projects:

    • Front End project
    • Front End tests
    • Back End project
    • Back End tests
    • Db Up project (if it has a module-specific database)

    Backend Project Folder Structure

    We prefer keeping a project self-contained, rather than extracting layers into different projects. This is only a guideline, and may be ignored if necessary.

    General folder structure. Sub-folders are allowed:

    • BusinessLogic – Logic classes
    • Data – Data access classes
      • EntityFramework – Database Context
        • Entities – The entities for the context
    • Endpoints – API endpoints if the project is a Web App.
    • Exceptions – Custom exceptions
    • Extensions – Extension classes
    • Functions – The Azure Function classes if the project is an Azure Function app. Separate API versions.
      • API
        • V1, V2, etc.
      • ServiceBus, Queue, Timer, etc. Based on trigger type.
    • Helpers – Static helper classes.
    • Middleware – Middleware for project startup
    • Models – Other types of objects like DTOs, enums, etc. Feel free to subfolder these items.

    Updated on March 25, 2026

    Leave a Reply

    Your email address will not be published. Required fields are marked *