Skip to content

Add comprehensive documentation (KDoc) for public APIs #96

@callebtc

Description

@callebtc

Description:
Many public APIs lack proper KDoc documentation, making the codebase harder to understand and maintain.

Missing Documentation Areas:

  • Public class constructors
  • Public method parameters and return values
  • Manager classes and their lifecycle
  • Extension functions
  • Data classes and their properties

Impact:

  1. Poor developer experience for team members
  2. Unclear API contracts
  3. Harder onboarding for new developers

Fix Instructions:
Add comprehensive KDoc for all public APIs:

/**
 * Manages Cashu wallet operations and database connections.
 * 
 * This singleton class handles:
 * - MultiMintWallet initialization
 * - Database lifecycle management  
 * - Mint configuration changes
 * 
 * @property appContext The application context for database access
 * @see MultiMintWallet
 */
object CashuWalletManager {

    /**
     * Initializes the wallet manager with the given context.
     * Safe to call multiple times.
     * 
     * @param context The application context
     * @throws IllegalStateException if initialization fails
     */
    fun init(context: Context) { ... }
}

Priority Areas:

  1. CashuWalletManager - wallet operations
  2. PosUiCoordinator - UI coordination
  3. Payment-related classes
  4. Manager classes

Tools: Use Android Studio's "Generate Documentation" feature

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions