
Uplink
Converse and collaborate with an AI chat bot directly from your terminal.
Role - Independent Developer
Overview
Uplink is a terminal user interface designed to let you converse with a chatbot without having to navigate to a browser.
You're able to choose between different models depending on your needs.
Uplink is an early project that will feature, in the future, web search and the ability to interact with your computer.
Technologies Used
Challenges & Solutions
Gleam is a language that can target either a javascript runtime or the erlang virtual machine.
Most of the ecosystem, however, has been written for elixir.
When writing this project, I found that there was little tooling for dealing with asynchronous javascript promises in a nice way, and uplink targets a javascript runtime.
To solve this, I co-authored a library named Effect (https://hex.pm/packages/effect) for Gleam.
This library allowed me to write uplink while dealing with promises while keeping my code maintainable and leveraging Gleam's powerful type system.