Version

File Header Standards

Overview

All source code files in Kinana repositories must include a copyright header. This is a requirement for IP protection and licensing compliance.


Copyright Header Template

Required Header

All source files must start with this copyright notice:

/**
 * Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
 * Kinana Content Hub Platform
 * 
 * This code is proprietary and confidential.
 * Unauthorized copying, distribution, or use is strictly prohibited.
 */

Language-Specific Formats

TypeScript/JavaScript:

/**
 * Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
 * Kinana Content Hub Platform
 * 
 * This code is proprietary and confidential.
 * Unauthorized copying, distribution, or use is strictly prohibited.
 */

import { Component } from '@angular/core';
// ... rest of file

C#:

/*
 * Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
 * Kinana Content Hub Platform
 * 
 * This code is proprietary and confidential.
 * Unauthorized copying, distribution, or use is strictly prohibited.
 */

using System;
// ... rest of file

Python:

# Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
# Kinana Content Hub Platform
#
# This code is proprietary and confidential.
# Unauthorized copying, distribution, or use is strictly prohibited.

import pandas as pd
# ... rest of file

HTML/CSS:

<!--
  Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
  Kinana Content Hub Platform
  
  This code is proprietary and confidential.
  Unauthorized copying, distribution, or use is strictly prohibited.
-->

SQL:

-- Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
-- Kinana Content Hub Platform
--
-- This code is proprietary and confidential.
-- Unauthorized copying, distribution, or use is strictly prohibited.

License Information

Proprietary License

Kinana is proprietary software. Source code is:

  • Owned by Yas Holding Technology
  • Not open source
  • Not licensed for redistribution
  • Protected as trade secret

Third-Party Licenses

Open Source Dependencies: Tracked in separate license files

  • Frontend: LICENSE-THIRD-PARTY.txt (npm packages)
  • Backend: LICENSE-THIRD-PARTY.txt (NuGet packages)
  • Python: requirements-licenses.txt

Licensed Frameworks:

  • ABP.io: Commercial multi-developer license
  • Nutrient (PSPDF): Annual license
  • GDPicture: Included in PSPDF contract

Reference: SharePoint F-IP-008 (Third Party License Register)


Author Attribution

Individual Attribution (Optional)

Personal attribution discouraged in proprietary code:

  • Code is company-owned intellectual property
  • Team collaboration makes individual attribution impractical
  • Git history provides complete authorship record

When to attribute:

  • Research papers or publications
  • External contributions (with CLA)
  • Significant algorithmic innovations

Format (if needed):

/**
 * Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
 * Kinana Content Hub Platform
 * 
 * This code is proprietary and confidential.
 * 
 * Original Algorithm: Dr. Jane Smith (Research Paper XYZ, 2023)
 * Implementation: Kinana Development Team
 */

Team Attribution

Use team-level attribution:

# Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
# Kinana Content Hub Platform
# Developed by YHT EdTech Division - Kinana Team

Function & Method Documentation

When to Document

Always:

  • Public APIs (exposed to other modules/services)
  • Complex algorithms
  • Non-obvious business logic

Rarely:

  • Simple getters/setters
  • Self-explanatory methods
  • Internal helper functions

Format

TypeScript:

/**
 * Calculates pro-rated subscription amount for partial billing period.
 * 
 * @param subscription - Current subscription details
 * @param startDate - Start date of pro-rated period
 * @param endDate - End date of pro-rated period
 * @returns Pro-rated amount in AED
 * @throws {ValidationError} If dates are invalid
 */
function calculateProRatedAmount(
  subscription: Subscription,
  startDate: Date,
  endDate: Date
): number {
  // Implementation
}

C#:

/// <summary>
/// Calculates pro-rated subscription amount for partial billing period.
/// </summary>
/// <param name="subscription">Current subscription details</param>
/// <param name="startDate">Start date of pro-rated period</param>
/// <param name="endDate">End date of pro-rated period</param>
/// <returns>Pro-rated amount in AED</returns>
/// <exception cref="ValidationException">If dates are invalid</exception>
public decimal CalculateProRatedAmount(
    Subscription subscription,
    DateTime startDate,
    DateTime endDate)
{
    // Implementation
}

Python:

def calculate_prorated_amount(
    subscription: Subscription,
    start_date: datetime,
    end_date: datetime
) -> float:
    """
    Calculate pro-rated subscription amount for partial billing period.
    
    Args:
        subscription: Current subscription details
        start_date: Start date of pro-rated period
        end_date: End date of pro-rated period
    
    Returns:
        Pro-rated amount in AED
    
    Raises:
        ValueError: If dates are invalid or end_date before start_date
    """
    pass

Class & Module Documentation

Class Documentation

TypeScript:

/**
 * Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
 * Kinana Content Hub Platform
 * 
 * This code is proprietary and confidential.
 */

/**
 * Service for managing user subscriptions.
 * 
 * Handles subscription creation, renewal, cancellation, and billing.
 * Integrates with payment gateway and sends subscription notifications.
 */
@Injectable({ providedIn: 'root' })
export class SubscriptionService {
  // Implementation
}

C#:

/*
 * Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
 * Kinana Content Hub Platform
 * 
 * This code is proprietary and confidential.
 */

/// <summary>
/// Application service for managing user subscriptions.
/// Handles subscription lifecycle, billing, and notifications.
/// </summary>
public class SubscriptionAppService : ApplicationService, ISubscriptionAppService
{
    // Implementation
}

Module/File Documentation

Python:

# Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
# Kinana Content Hub Platform
#
# This code is proprietary and confidential.

"""
Subscription management module for Kinana platform.

This module provides functionality for:
- Subscription creation and renewal
- Billing and payment processing
- Subscription tier management
- Usage tracking and limits enforcement

Dependencies:
    - payment_gateway: For payment processing
    - notification_service: For subscription alerts
"""

from datetime import datetime
from typing import Optional
# ... rest of file

README Standards

Repository README

Required Sections:

# Kinana [Component Name]

Brief description of component/service.

## Copyright

Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division
This code is proprietary and confidential.

## Overview

What this component does and why it exists.

## Technology Stack

- Framework/Language versions
- Key dependencies
- Infrastructure requirements

## Getting Started

### Prerequisites
- Required tools and versions
- Access requirements

### Installation
```bash
# Clone repository
gh repo clone kinana-ai/kinana-component

# Install dependencies
npm install  # or dotnet restore, pip install -r requirements.txt

Configuration

Environment variables or configuration needed.

Running Locally

# Development server
npm start  # or dotnet run, python main.py

Project Structure

src/
├── components/
├── services/
└── models/

Development

Branching Strategy

See Version Control Standards

Code Standards

See Coding Standards

Testing

Current status: Manual QA (automated testing planned)

Running Tests (future)

npm test

Deployment

Automated deployment to staging from dev branch. See Development Workflow

Documentation

  • API Documentation: /swagger (if backend)
  • Component Docs: /docs folder
  • Architecture: ARCHITECTURE.md (if complex)

License

Proprietary - Copyright (c) 2024-2025 Yas Holding Technology

Contact

For questions or issues, contact the Kinana development team through:

  • GitHub Issues (for bugs)
  • Microsoft Teams (for discussions)
  • Daily Standup (for urgent matters)

### Project-Specific README

Adapt template based on component:
- **Frontend**: Angular version, component library
- **Backend**: ABP.io version, database migrations
- **AI**: Python version, model information, GPU requirements

---

## API Documentation Standards

### REST API (Swagger/OpenAPI)

**Auto-generated** from code comments:

```csharp
/// <summary>
/// User management endpoints
/// </summary>
[ApiController]
[Route("api/[controller]")]
public class UsersController : ControllerBase
{
    /// <summary>
    /// Retrieve user by ID
    /// </summary>
    /// <param name="id">User unique identifier</param>
    /// <returns>User details</returns>
    /// <response code="200">User found</response>
    /// <response code="404">User not found</response>
    [HttpGet("{id}")]
    [ProducesResponseType(typeof(UserDto), StatusCodes.Status200OK)]
    [ProducesResponseType(StatusCodes.Status404NotFound)]
    public async Task<ActionResult<UserDto>> GetUser(Guid id)
    {
        // Implementation
    }
}

Access: https://staging.kinana.com/swagger

GraphQL API (if applicable)

Schema Documentation:

"""
User account in Kinana platform
"""
type User {
  "Unique identifier"
  id: ID!
  
  "User display name"
  name: String!
  
  "User email address (unique)"
  email: String!
}

Enforcement

Code Review

  • Automated Check: CI/CD verifies copyright headers (planned)
  • Manual Check: Reviewers verify headers in new files

New File Creation

VS Code Snippet (recommended):

{
  "Kinana Copyright Header": {
    "prefix": "copyright",
    "body": [
      "/**",
      " * Copyright (c) 2024-2025 Yas Holding Technology - YHT EdTech Division",
      " * Kinana Content Hub Platform",
      " * ",
      " * This code is proprietary and confidential.",
      " * Unauthorized copying, distribution, or use is strictly prohibited.",
      " */"
    ]
  }
}

Bulk Update

Script to add headers (if needed):

# Add copyright header to files missing it
# (Create script in tools/ directory)

Resources

IP Protection:

  • SharePoint IP Governance Repository
  • D-IP-007: IP Ownership Matrix
  • F-IP-006: Trade Secret Register

License Management:

  • F-IP-008: Third Party License Register
  • PL-IP-002: Open-Source Software Usage Policy

Last Updated: November 2025
Version: 1.0

In this document