Skip to content

simongregorebner/ollama-ui

Repository files navigation

Overview

This is basic, all-in-one, chat ui for ollama. For simplicity it is bundled with a go server and packaged into a all-in-one binary. Simply build/download the binary and start chatting ...

Usage

  1. Start ollama
  2. Start ollama-ui binary

If you are on MacOS and you downloaded the binary from Github you might need to first make the binary executable and release the binary from Gatekeeper quarantine like this:

chmod +x ollama-ui_darwin
xattr -d com.apple.quarantine ollama-ui_darwin

Development

# install dependencies
npm install
# run development web server
npm run dev
# build project
npm run build

# run tests
npm run test:unit
# lint project
npm run lint

To build the all-in-one go server binary do:

go generate
go build

The resulting binary is a all-in-one bundle (i.e. webserver + website). All you need to do is to start the binary and point your browser to http://localhost:3000

(the only other prerequisite is that ollama is running on your machine as well)

TODO

  • ability to send system messages (pre set system messages for different tasks?)

    • e.g. a selector at the imput field
  • markdown support + highlighting

  • ability to easily copy/paste code

    • prune history (e.g only last x messages, automatically remove older ones? long history?)
  • save chat

  • indicator if message has an attachment

  • show indicator for attachment in input prompt (also need to be able to remove the image)

  • message - indication timestamp send/answered / progress indication

  • indicator when message is generated by ollama/model

  • abort current message/prompt

  • abort for model download / error message if model does not exist

  • ability to upload PDF/text file

  • font?

font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
    font-feature-settings: normal;
    font-variation-settings: normal;

code, kbd, pre, samp {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;

.font-mono {
    font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published