Kahla

Kahla

Cross-platform business messaging app, completely open source and free.

KahlaLogo

Kahla

Build status

Welcome to Kahla. Kahla is a cross-platform business messaging app. Kahla also achieved one target to use one copy of code and target all platforms.

screenshot

Try it here: web.kahla.app

Or Get it on Google Play

Kahla currently targets Windows, Linux, macOS, Android, and iOS.

Kahla is built with Angular 8 and typescript. And Kahla Server is built with .NET Core.

For more document about Kahla project and Kahla API, please view document here.

For our official website, please view here.

How to develope

Before starting

To develope Kahla, you need to install the following components:

  • Git
  • Nodejs and npm

We strongly suggest using VSCodium to develope this project.

Using VSCodium to open the directory directly.

How to run

How to run in browser

Excute following command in the root directory of this repository to restore all dependencies.

npm install

Excute following command to run and start a debug server at localhost:8001.

npm start

How to run as desktop app

Currently we are using Electron to target Windows, Mac and Linux platform.

Supports Windows 7+, Linux and macOS 10.9+.

npm run electron

How to run as mobile app

Currently we are using Apache Cordova to target Android and iOS platform.

Before running, please prepare your Android development environment and an Android device.

Run the following commands to run on an Android device.

npx cordova platform add android
npx cordova run android

How to publish

How to publish to a web server

ng build --prod

If you want to create Chinese version, please use the following command instead.

ng build --prod --local zh --i18n-file ./src/message.zh.xlf

How to publish for electron production version

Please view here for Electron distribution document.

Please view here for Electron builder document.

Run:

./publish.sh

And you will publish the distributable version of Kahla desktop.

How to publish for Android production version

Run:

cordova build android --release -- --keystore=./android.jks --storePassword={KEY} --alias=key0 --password={PASSWORD}

Please view here for Cordova distribution document.

Document

For more info please view Kahla Wiki

How to contribute

There are many ways to contribute to the project: logging bugs, submitting pull requests, reporting issues, and creating suggestions.

Even if you have push rights on the repository, you should create a personal fork and create feature branches there when you need them. This keeps the main repository clean and your personal workflow cruft out of sight.

We're also interested in your feedback for the future of this project. You can submit a suggestion or feature request through the issue tracker. To make this process more effective, we're asking that these include more information to help define them more clearly.

not_used

Something missing? Edit this app.

Keyboard Shortcuts

Key Action
/ Focus the search bar
Esc Focus the search bar and cleans it
Select the next search result
Select the previous search result
Enter Open the selected search result
cmdEnter Ctrl+Enter Open the selected search result in a new tab