Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vsdudakov/up_your_english
LLM-based English Improvement App
https://github.com/vsdudakov/up_your_english
Last synced: about 2 months ago
JSON representation
LLM-based English Improvement App
- Host: GitHub
- URL: https://github.com/vsdudakov/up_your_english
- Owner: vsdudakov
- Created: 2024-05-10T11:03:53.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-05-13T06:15:16.000Z (7 months ago)
- Last Synced: 2024-05-14T02:36:13.595Z (7 months ago)
- Language: Python
- Size: 427 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Up Your English
Enhance your English proficiency with our comprehensive tool. This application combines the power of modern technologies and artificial intelligence to provide an interactive learning experience.## Screenshots
![Screenshot](https://github.com/vsdudakov/up_your_english/blob/main/screenshot.png)
## Quickstart
- Running the Project with Docker
- Execute the following command to build and run the project:```bash
export OPENAI_API_KEY=
docker compose up --build
```- Access the application by navigating to: http://localhost:5137
## Continuous Integration (CI)
### Overview
We utilize GitHub Actions to automate our testing and integration processes.### Backend
- Tools: Ruff (black, isort, flake8), Pytest
- Operations: Automated testing is performed on each push and pull request.
### Frontend
- Tools: Biome, ESLint, Jest
- Operations: Automated testing is performed on each push and pull request.## Architecture
### Backend
- Framework: FastAPI/Python, Redis
- Structure: MVC architecture (Endpoint -> Service -> Adapters)
- Features:
- REST API and Websockets for asynchronous chat functionalities.
- Redis queue with brpop to handle websocket messages.
- Session management using cookies.
- Libraries: Utilizes LangChain and OpenAI for AI-driven operations, streaming responses via websockets to the React client.
### Frontend
- Framework: Vite / React, TypeScript
- UI Components: Ant Design (Antd)
- Chat: react-chat-components library
- State Management: React Query, React Use Websocket, Context Providers## Roadmap
### Testing:
- Add unit tests for the backend with Pytest.
- Incorporate smoke tests for the frontend using Jest.
- Develop automated tests with Playwright for end-to-end testing.
### Deployment:
- Implement Continuous Deployment (CD) with GitHub Actions, enabling deployment via releases or manual triggers.
### Infrastructure:
- Decouple adapters and backend API logic into a microservice architecture, potentially utilizing Kafka or RabbitMQ.
- Implement authentication enhancements using HTTP-only cookies or JWT tokens for mobile.
- Integrate a database to persist chat history and other relevant data.
### AI Enhancements:
- Enhance AI functionalities to support multiple prompts within a single session.This revised README is designed to provide a clear, professional description of your project, its current capabilities, and future development plans. The sections are organized to guide readers easily from setup instructions to deeper technical details.