Skip to content
This repository was archived by the owner on Apr 24, 2026. It is now read-only.

imsudoer/OnlySqApp

Repository files navigation

OnlySq App

image AI chatbot features using OnlySq

Made by ~$ sudo++

code size repo stars repo stars

OnlySq AI Chat Client

A professional desktop application designed for interacting with artificial intelligence models via the OnlySq API. Built using Kotlin and Compose Multiplatform, this client provides a robust environment for managing AI-driven conversations with a focus on performance and clean user interface design.


Technical Overview

The application leverages Compose Multiplatform to provide a native desktop experience. It utilizes an asynchronous architecture powered by Kotlin Coroutines and Ktor to handle high-frequency data streaming and API communication without compromising UI responsiveness.

Key Functionalities

  • Dynamic Model Selection: Integration with the OnlySq model registry, allowing users to search and switch between various Large Language Models (LLMs) such as GPT and Qwen variants.
  • Asynchronous Streaming: Support for Server-Sent Events (SSE) to render AI responses in real-time, reducing perceived latency.
  • Automated Context Management: Features an automated titration system that generates concise chat titles based on the initial conversation context.
  • Persistent Storage: Local encryption and storage of chat history and API configurations to ensure data continuity across sessions.
  • Markdown Integration: Advanced rendering of structured text, including code blocks and mathematical notation within the chat interface.

Architecture and Stack

  • Framework: Compose Multiplatform (Material 3)
  • Networking: Ktor Client (ContentNegotiation, Logging, and Streaming)
  • Data Handling: Kotlinx Serialization (JSON)
  • Concurrency: Kotlin Coroutines and Flow
  • Styling: Adaptive Light/Dark color schemes based on system telemetry

Installation and Deployment

System Requirements

  • Java Development Kit (JDK) 17 or higher
  • Valid OnlySq API Credentials

Build Instructions

To compile and execute the application from source, utilize the Gradle wrapper:

./gradlew run

To package the application for distribution (MSI, DMG, or DEB):

./gradlew packageDistributionForCurrentOS

Configuration

Upon initial launch, navigation to the Options section is required to input the API key.

  1. Access Options via the sidebar.
  2. Provide the OnlySq API Key.
  3. Configure the Streaming toggle based on preference for real-time data transmission versus batch processing.

User Interface Features

  • Responsive Layout: The interface dynamically adjusts between a multi-pane desktop view and a collapsed mobile-style menu for narrower window dimensions.
  • Input Handling: Support for multi-line text entry with standard keyboard shortcuts (Shift + Enter for line breaks, Enter for submission).
  • Clipboard Integration: One-click copying of AI-generated content to the system clipboard.

About

An Kotlin app with OnlySq AI Chat features

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages