Created Contributing (markdown)
parent
b81836d377
commit
143f08d399
|
@ -0,0 +1,50 @@
|
||||||
|
## Multilingual Interface
|
||||||
|
|
||||||
|
Ollama App does support multiple languages. Currently available are:
|
||||||
|
|
||||||
|
- [x] English (fallback)
|
||||||
|
- [x] German
|
||||||
|
- [ ] Chinese (simplified)
|
||||||
|
- [ ] Italian
|
||||||
|
- [ ] Turkish
|
||||||
|
|
||||||
|
The tick is set if the language is translated with 100%. This might not be up to date, check the project page to get the latest progress.
|
||||||
|
|
||||||
|
In case the language you're looking for isn't listed, you can check if the development is in progress on the [Crowdin project page](https://crowdin.com/project/ollama-app). If not, you can always contribute.
|
||||||
|
|
||||||
|
## Custom Builds
|
||||||
|
|
||||||
|
Now it's going to get interesting. The app is built in a way so you can easily create custom builds. Currently, there are these values that can be customized:
|
||||||
|
|
||||||
|
```
|
||||||
|
// use host or not, if false dialog is shown
|
||||||
|
const useHost = false;
|
||||||
|
// host of ollama, must be accessible from the client, without trailing slash, will always be accepted as valid
|
||||||
|
const fixedHost = "http://example.com:11434";
|
||||||
|
// use model or not, if false selector is shown
|
||||||
|
const useModel = false;
|
||||||
|
// model name as string, must be valid ollama model!
|
||||||
|
const fixedModel = "gemma";
|
||||||
|
// recommended models, shown with as star in model selector
|
||||||
|
const recommendedModels = ["gemma", "llama3"];
|
||||||
|
// allow opening of settings
|
||||||
|
const allowSettings = true;
|
||||||
|
// allow multiple chats
|
||||||
|
const allowMultipleChats = true;
|
||||||
|
```
|
||||||
|
|
||||||
|
They can be found at the top of `lib/main.dart`. `useHost` and `useModel` decide whether you want `fixedHost` and `fixedModel` to control anything. `fixedHost` and `fixedModel` decide about the value that has to be used. That can be practical in case you try to create an app specific to your instance.
|
||||||
|
|
||||||
|
`recommendedModels` is a list of models that will be listed as recommended in the [Model Selector](#model-selector). They are more like personal preferences. If empty, no model will be preferred.
|
||||||
|
|
||||||
|
`allowSettings` will disable the settings screen. But it will also disable the welcome dialog at first startup and the ability to rename chats.
|
||||||
|
|
||||||
|
`allowMultipleChats` simply removes the `New Chat` option in the [Side Menu](#side-menu). And will load up the only available chat on app startup.
|
||||||
|
|
||||||
|
### Actually Building
|
||||||
|
|
||||||
|
But how do you create a custom build?
|
||||||
|
|
||||||
|
First, follow [the Flutter installation guide](https://docs.flutter.dev/get-started/install) by selecting Android as the first app type. Then follow [these steps](https://docs.flutter.dev/deployment/android#signing-the-app) till you have your custom `key.properties`. Place it into the `android` folder at the root of the project.
|
||||||
|
|
||||||
|
Make sure dart is available as a command or added as the default program for `.dart`. Then execute `scripts/build.dart` and wait for it to finish processing. Then go to `build/.output`. There you'll find everything you need, the normal Android app and the experimental Windows build.
|
Loading…
Reference in New Issue