Skip to content

skyaltlabs/skyalt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SkyAlt

Build node-based, local-first, and LLM-powered apps.

Videos

Node-based

In Unix, everything is a file. In SkyAlt, everything is a node.

  • Node can be GUIs(button, slider, map, calendar, etc.) or programs(LLM, SQLite, Python, etc.).
  • Nodes are composed into graphs.
  • Graph can be put into other graphs.

LLM-powered

SkyAlt is not about AI research, but interface research and development. LLM is the new programming paradigm that can make human-computer interactions way more efficient, natural and frictionless. Building an app means only 2 things:

  • Put GUIs on layout
  • Write a list of features in natural language

Local-first

Most of today's apps run in a browser as Software as a Service. Here's the list of problems you may experience:

  • delay between client and server
  • none or simple export
  • hard to migrate between clouds
  • data disappear(music playlist, etc.)
  • data was tampered
  • new SaaS version was released and you wanna keep using the older one
  • no offline mode
  • SaaS shut down
  • price goes up
  • 3rd party can access your data

SkyAlt solves them with Local-first computing. The biggest advantages can be summarized as:

  • quick responses
  • works offline
  • ownership
  • privacy
  • works 'forever' + run any version

For endurance, SkyAlt uses only well-known and open formats SQLite and JSON.

Build

SkyAlt is written in Go language. You can install golang from here: https://go.dev/doc/install

Dependencies:

go get github.com/mattn/go-sqlite3
go get github.com/veandco/go-sdl2/sdl
go get github.com/veandco/go-sdl2/gfx
go get github.com/go-gl/gl/v2.1/gl
go get github.com/fogleman/gg
go get github.com/go-audio/audio
go get github.com/golang/freetype/truetype

SkyAlt:

git clone https://github.com/skyaltlabs/skyalt
cd skyalt
go build
./skyalt

Service LLama.cpp(~100MB):

cd services
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
make

Service Whisper.cpp(~30MB):

cd services
git clone https://github.com/ggerganov/whisper.cpp
cd whisper.cpp
make

Current State

  • Technical preview
  • No sandboxing - CHECK GENERATED CODE, BEFORE RUNNING IT!
  • Less than 20K lines of code
  • Developed on Linux

Inspiration

Acknowledgements

Author

Milan Suk

Email: milan@skyalt.com

Twitter: https://twitter.com/milansuk/

Sponsor: https://github.com/sponsors/MilanSuk

Feel free to follow or contact me with any idea, question or problem.

Contributing

Your feedback and code are welcome!

For bug report or question, please use GitHub's Issues

SkyAlt is licensed under Apache v2.0 license. This repository includes 100% of the code.