Skip to content

mihbor/sciko-linalg

Repository files navigation

Sciko Linear Algebra

A Kotlin Multiplatform library for linear algebra operations.

Features

  • Eigen decomposition for real matrices
  • LU decomposition
  • QR decomposition
  • Schur transformation
  • High precision floating point utilities
  • Support for both JVM and JavaScript platforms

Usage

Gradle

Add the following to your build.gradle.kts:

repositories {
    maven {
        name = "GitHubPackages"
        url = uri("https://maven.pkg.github.com/mihbor/sciko-linalg")
        credentials {
            username = project.findProperty("gpr.user") as String? ?: System.getenv("USERNAME")
            password = project.findProperty("gpr.key") as String? ?: System.getenv("TOKEN")
        }
    }
}

dependencies {
    implementation("ltd.mbor.sciko:sciko-linalg:0.1-SNAPSHOT")
}

Authentication

To use packages from GitHub Packages, you need to authenticate:

  1. Using environment variables:

    export USERNAME=your-github-username
    export TOKEN=your-github-personal-access-token
  2. Using gradle.properties:

    gpr.user=your-github-username
    gpr.key=your-github-personal-access-token

The personal access token needs the read:packages scope.

Publishing

Automatic Publishing

The library is automatically published to GitHub Packages on every push to the main branch, when a release is created, or when the workflow is manually triggered.

Manual Publishing

To publish manually:

export USERNAME=your-github-username
export TOKEN=your-github-personal-access-token
./gradlew publishAllPublicationsToGitHubPackagesRepository

Building

./gradlew build

Testing

./gradlew test

License

Licensed under the Apache License 2.0. See LICENSE for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 2

  •  
  •  

Languages