ProductPromotion
Logo

Kotlin

made by https://0x3d.site

GitHub - sigbla/sigbla-app: Sigbla is a framework for working with data in tables, using the Kotlin programming language. It supports various data types, reactive programming and events, user input, charts, and more.
Sigbla is a framework for working with data in tables, using the Kotlin programming language. It supports various data types, reactive programming and events, user input, charts, and more. - sigbla...
Visit Site

GitHub - sigbla/sigbla-app: Sigbla is a framework for working with data in tables, using the Kotlin programming language. It supports various data types, reactive programming and events, user input, charts, and more.

GitHub - sigbla/sigbla-app: Sigbla is a framework for working with data in tables, using the Kotlin programming language. It supports various data types, reactive programming and events, user input, charts, and more.

Sigbla: Developer-friendly spreadsheets

Build codecov

Sigbla is a framework for working with data in tables, using the Kotlin programming language. It supports various data types, reactive programming and events, user input, charts, among other things.

We're probably all used to working with data in tables, using applications like Microsoft Excel or Google Sheets. Those are great, and used by many for all sorts of reasons. But they've got some shortcomings, such as:

  • Mixing code, data, and presentation into the same sheet
  • Performance challenges when doing a lot of calculations
  • Usability limitations for larger quantities of data

These issues make them difficult to maintain and understand, and limits how much we sanely want to do with them.

Sigbla fixes this by:

  • Providing an easy-to-use table structure for data
  • With programming residing in source code files
  • And letting you view the data through views

Sigbla also provides other things, like extending and making easier how we can do math in Kotlin, and, as mentioned, allows us to wire together relationships between cells through reactive programming.

Getting started

You can make use of Sigbla in your Kotlin projects by declaring it as a dependency.

Include it in your Gradle build file like so:

repositories {
    maven { url = uri("https://mvn.sigbla.app/repository") }
}

dependencies {
    implementation("sigbla.app:sigbla-app-all:1.+")
}

Please also consult the Sigbla sample project for a working Gradle example.

However, you don't need a full project setup and can also use a Kotlin REPL, such as kscript.

Assuming you have kscript installed, here's a quick example:

#!/usr/bin/env kscript

@file:Repository("https://mvn.sigbla.app/repository")
@file:DependsOn("sigbla.app:sigbla-app-all:[1,)")

import sigbla.app.*

val table = Table["MyTable"]

table["Column A", 0] = 100
table["Column A", 1] = 200

// Instead of sum(table["Column A", 0], table["Column A", 1]), you can also
// do sum(table["Column A"]) if you want to sum all "Column A" values.
// Other variants and combinations are also possible.
table["Sum", 2] = sum(table["Column A", 0], table["Column A", 1])

val tableView = TableView[table]

val url = show(tableView)
println("Table URL: $url")

It's a basic example that puts the values 100 and 200 into a cell each, before assigning the sum of these to a separate column we label "Sum" at row 2.

Because of the reactive nature of sum(..), if the values update, so will the sum.

If you open the printed URL, you'll see the table:

Sigbla example table

Please see the Sigbla documentation for further details. If you find any issues or have some suggestions, please reach out using GitHub issues or discussions.

More Resources
to explore the angular.

mail [email protected] to add your project or resources here 🔥.

Related Articles
to learn about angular.

FAQ's
to learn more about Angular JS.

mail [email protected] to add more queries here 🔍.

More Sites
to check out once you're finished browsing here.

0x3d
https://www.0x3d.site/
0x3d is designed for aggregating information.
NodeJS
https://nodejs.0x3d.site/
NodeJS Online Directory
Cross Platform
https://cross-platform.0x3d.site/
Cross Platform Online Directory
Open Source
https://open-source.0x3d.site/
Open Source Online Directory
Analytics
https://analytics.0x3d.site/
Analytics Online Directory
JavaScript
https://javascript.0x3d.site/
JavaScript Online Directory
GoLang
https://golang.0x3d.site/
GoLang Online Directory
Python
https://python.0x3d.site/
Python Online Directory
Swift
https://swift.0x3d.site/
Swift Online Directory
Rust
https://rust.0x3d.site/
Rust Online Directory
Scala
https://scala.0x3d.site/
Scala Online Directory
Ruby
https://ruby.0x3d.site/
Ruby Online Directory
Clojure
https://clojure.0x3d.site/
Clojure Online Directory
Elixir
https://elixir.0x3d.site/
Elixir Online Directory
Elm
https://elm.0x3d.site/
Elm Online Directory
Lua
https://lua.0x3d.site/
Lua Online Directory
C Programming
https://c-programming.0x3d.site/
C Programming Online Directory
C++ Programming
https://cpp-programming.0x3d.site/
C++ Programming Online Directory
R Programming
https://r-programming.0x3d.site/
R Programming Online Directory
Perl
https://perl.0x3d.site/
Perl Online Directory
Java
https://java.0x3d.site/
Java Online Directory
Kotlin
https://kotlin.0x3d.site/
Kotlin Online Directory
PHP
https://php.0x3d.site/
PHP Online Directory
React JS
https://react.0x3d.site/
React JS Online Directory
Angular
https://angular.0x3d.site/
Angular JS Online Directory