Skip to content

Commit a5fd1f5

Browse files
authored
Improve README formatting and clarity with language annotations, better section headings, and additional information (#20)
1 parent 8446c2f commit a5fd1f5

File tree

1 file changed

+30
-25
lines changed

1 file changed

+30
-25
lines changed

README.md

Lines changed: 30 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Latest Features:
1+
# Latest Features
22

33
- Added ability to upload files for translation
44
- Added ability to download translations
@@ -11,49 +11,50 @@
1111

1212
# OmniPoly
1313

14-
Welcome to a solution for translation and language enhancement tool. This project integrates Libre Translate for accurate translations, LanguageTool for grammar and style checks, and AI Translation for modern touch of sentiment analysis and interesting sentences extraction.
14+
Welcome to **OmniPoly**! This project is a comprehensive solution for translation and language enhancement. It integrates:
1515

16-
Key features include:
16+
## Key Features
1717
- Translation: Text translation across multiple languages (see: [libretranslate](https://github.com/LibreTranslate/LibreTranslate)).
1818
- Grammar Checking: Ensures your text is not only translated but also reads well with proper grammar and style (see: [languagetool](https://github.com/languagetool-org/languagetool)).
1919
- AI-Powered Insights: Utilizes Large Language Models to analyze sentiments and extract interesting sentences, adding depth to your translations (see: [ollama](https://github.com/ollama/ollama)).
2020

21-
The project started with the fact that I didn't like the standard app coming with Libre Translate (i.e. it didn't remember my previous choices). So I've decided to make my own. Eventually I've found out about self-hosted LanguageTool, and then I've learned that it does not have any frontend...
21+
The project started because I wasn't satisfied with the standard app that comes with Libre Translate (it didn't remember my previous choices). I decided to create my own solution. Eventually, I discovered self-hosted LanguageTool and learned that it lacked a frontend interface.
2222

2323
<p align="center">
24-
<img src="docs/screenshot.png" alt="pole_translate" align="center">
24+
<img src="docs/screenshot.png" alt="OmniPoly main interface" align="center">
2525
</p>
2626

2727
<p align="center">
28-
<img src="docs/with_errors.png" alt="pole_translate" align="center">
28+
<img src="docs/with_errors.png" alt="Grammar checking with errors highlighted" align="center">
2929
</p>
3030
<p align="center">
31-
<img src="docs/without_errors.png" alt="pole_translate" align="center">
31+
<img src="docs/without_errors.png" alt="Grammar checking with corrections applied" align="center">
3232
</p>
3333

34-
## How to run: Docker
34+
## How to Run with Docker
3535

3636
The most recommended way to start it up is to use Docker.
3737

38-
Here's a sample docker compose:
38+
### Sample Docker Compose Configuration
3939

40-
```
41-
OmniPoly:
40+
```yaml
41+
services:
42+
omnipoly:
4243
restart: unless-stopped
4344
environment:
4445
LANGUAGE_TOOL: https://your.languagetool.instance
4546
LIBRETRANSLATE: https://your.libretranslate.instance
46-
LIBRETRANSLATE_API_KEY: 'your_API_key' # use if your instance requires API key.
47+
LIBRETRANSLATE_API_KEY: 'your_API_key' # use if your instance requires API key
4748
OLLAMA: https://your.ollama.instance
4849
OLLAMA_MODEL: model_name
4950
# pick one of: 'pole' | 'light' | 'dark'
5051
THEME: 'dark'
5152
# To limit language options for translations provide an array of ISO 639 language codes
52-
LIBRETRANSLATE_LANGUAGES=["pl","en"] # optional
53+
LIBRETRANSLATE_LANGUAGES: ["pl","en"] # optional
5354
# To limit language options for text check provide an array of long tags (ISO 639/ISO-3166) also known as language-Region code.
54-
LANGUAGE_TOOL_LANGUAGES=["pl-PL","en-GB"] # optional
55+
LANGUAGE_TOOL_LANGUAGES: ["pl-PL","en-GB"] # optional
5556
# To disable "add word" to dicationary
56-
DISABLE_DICTIONARY=true # optional
57+
DISABLE_DICTIONARY: true # optional
5758
ports:
5859
- 80:80
5960
image: kweg/omnipoly:latest
@@ -69,13 +70,13 @@ The project is designed in such a way that it will not display features that are
6970
7071
#### Libre translate
7172
72-
```
73+
```yaml
7374
services:
7475
libretranslate:
7576
tty: true
7677
stdin_open: true
7778
ports:
78-
- PORT:5000
79+
- "5000:5000"
7980
environment:
8081
- host=your.libretranslate.instance
8182
image: libretranslate/libretranslate
@@ -89,7 +90,7 @@ services:
8990
restart: unless-stopped
9091
image: elestio/languagetool:latest
9192
ports:
92-
- PORT:8010
93+
- "8010:8010"
9394
environment:
9495
- langtool_languageModel=/ngrams
9596
- Java_Xms=512m
@@ -98,15 +99,19 @@ services:
9899
- ~/ngramsDir:/ngrams
99100
```
100101
101-
# Running and building locally
102+
## Running and Building Locally
103+
104+
To run OmniPoly locally, follow these steps:
105+
106+
1. Copy `.env.sample` as `.env`
107+
2. Fill in all fields and add `DEV=true`
108+
3. Install dependencies: `npm i`
109+
4. Start development server: `npm run dev`
110+
5. The app should be served at [http://localhost:80](http://localhost:80)
102111

103-
- Copy `.env.sample` as `.env`
104-
- Fill in all fields and add `DEV=true`
105-
- `npm i`
106-
- `npm run dev`
107-
- voila! the app should be served at localhost:80
112+
> **Note**: The application can also be accessed at the ports mentioned in the runtime information: [http://localhost:54427](http://localhost:54427) or [http://localhost:57175](http://localhost:57175).
108113

109-
# Roadmap:
114+
## Roadmap
110115

111116
- Text workflow - The goal is to have a feeling of single text input across all modules. So we can translate and adjust the same text.
112117
- ability to switch between translated text and input text in language tool

0 commit comments

Comments
 (0)