Evame is an open-source project aimed at facilitating knowledge and cultural exchange by providing translations, footnotes, and explanations for user-submitted texts in a beautiful layout.
The goal of this project is to open doors to stories and knowledge for people around the world.
- Article submission
- Translation using Large Language Models (LLMs)
- Saving translation results
- Voting on translation results
- User-submitted translations
- Reader mode
- Improved readable layout: Better positioning of parallel translations
- Addition of footnotes (planning stage)
- Highlighting feature (planning stage)
- Multi-format support: HTML, PDF, EPUB, plain text (planning stage)
- Chrome extension (planning stage)
- Integration of advanced natural language processing features (planning stage)
- Extracting important parts from text and searching for translations from dictionaries, etc.
- React (Remix SSR mode)
- Translation engine: Gemini (currently used exclusively due to its context length advantage)
-
Clone this repository:
git clone https://github.com/ttizze/eveeve.git
-
Install dependencies:
cd eveeve cd web bun i
-
Create and set up the environment variables file:
cp .env.example .env
Run the following command:
openssl rand -base64 32
Set the generated string as
SESSION_SECRET
in the.env
file. -
Start Docker:
docker compose up -d
-
Set up the database:
bunx prisma migrate dev
-
Run the seed:
bun run seed
-
Start the development server:
bun run dev
-
Access Evame at
http://localhost:5173
in your browser. -
For local development, authentication is simplified:
- Visit
http://localhost:5173/auth/login
and log in with [email protected] and devpassword.
Note: This simplified authentication works only in the development environment and is disabled in production. The normal Google authentication flow is used in production.
- Visit
We welcome contributions in all forms, including translation, programming, design, and documentation. We are particularly seeking contributions in the following areas:
- Implementation of multi-format input support (e.g., PDF)
- Features for changing font size and colors
Please read our CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
- Output formats are currently limited.
- There are restrictions on processing long texts.
This project is released under the MIT License. See the LICENSE file for details.
If you have questions or suggestions, please create an issue or join our project Discord: https://discord.gg/2JfhZdu9zW