visibility {{ user.email }}

Translation System

{{ authError }}

Your Projects

{{ p.meta.name }}

OWNER {{ getMyRole(p) }}
Created: {{ new Date(p.meta.createdAt).toLocaleDateString() }}
{{ (p.stats?.percent_completed || 0).toFixed(0) }}% Done

Admin Control Center

Global Dictionary Manager

Source Target Last User Actions
Loading dictionary...
No terms found.
{{ item.s }} {{ item.t }}
{{ (item.u && adminUsers[item.u] ? (adminUsers[item.u].display_name || adminUsers[item.u].username) : item.n) || 'Unknown' }}
{{ new Date(item.ts).toLocaleDateString() }}
Showing (up to) last {{ adminDictLimit }} items.
Email Username Role Created At Status Action
{{ u.email }}
{{ u.display_name || u.username || '---' }}
{{ u.username }}
{{ u.role }} {{ u.createdAt ? new Date(u.createdAt).toLocaleDateString() : '---' }} BANNED PENDING Active
Protected
Project Name Owner UID Progress Action
{{ p.meta.name }}
{{ adminUsers[p.meta.owner].display_name || adminUsers[p.meta.owner].username }}
{{ adminUsers[p.meta.owner].username }}
{{ p.meta.owner }}
{{ (p.stats?.percent_completed || 0).toFixed(0) }}%

{{ currentProject.meta.name }}

Overall Progress

{{ stats.percent_completed.toFixed(1) }}% Completed

Translation Stats

Translated {{ stats.percent_translated.toFixed(1) }}%
In-Review (Edited) {{ stats.percent_edited.toFixed(1) }}%

Files

File Name Contributors Progress Action
{{ file.name }}
{{ getFileStats(file).total }} lines
{{ c.name }}
{{ c.trans }} T | {{ c.edit }} E
No activity
{{ getFileStats(file).percent.toFixed(1) }}% Done

Team Members

No members added yet.
{{ adminUsers[currentProject.meta.owner]?.username || 'Owner' }}
PROJECT OWNER
verified_user
{{ role.username || adminUsers[uid]?.username || (adminUsers[uid]?.email ? adminUsers[uid].email.split('@')[0] : 'Unknown User') }} (BANNED)
{{ role.role || role }}
#
Source
Data
Link
Status
{{ effectiveSettings.useIds ? (getRowId(item.row.src) || item.id) : (sortedData.indexOf(item.id) + 1) }}
menu_book
sync {{ item.row.isSaving ? 'Saving...' : 'Saved' }}
{{ item.row.status === 'edited' ? 'Reviewed' : (item.row.status === 'translated' ? 'Trans' : '') }}
{{ getUsername(item.row.last_uid) || item.row.last_username }}
Page {{ currentPage }} / {{ totalPages }}

history Activity Logs

Last 50 changes
Filters:
# Action Time User Context Content Change Actions
{{ ((logPage - 1) * logLimit) + idx + 1 }} {{ log.action || 'Edited' }}
Glossary
{{ new Date(log.timestamp).toLocaleString() }} {{ log.uid ? getUsername(log.uid) : log.username }}
{{ log.message }}
{{ currentProject.files[log.fileId]?.name || 'Unknown File' }}
Line {{ getLogLineNumber(log) }}
Source: {{ log.details.source }}
Target: {{ log.details.target }}
Note: {{ log.details.note }}
{{ log.oldContent || '(empty)' }}
arrow_forward
{{ log.newContent || '(empty)' }}
No logs found matching filters.
Page {{ logPage }}

{{ editingFileId ? ('File Settings: ' + currentProject.files[editingFileId].name) : 'Project Settings' }}

Recommended when Use ID is on
Replace characters during export (e.g. á -> w)

Global Dictionary

Matches source text exactly against the global dictionary. Respects "Use ID" setting.

Manage Members

Add New Member

No members yet.
{{ (adminUsers[currentProject.meta.owner]?.username || 'OW').substring(0,2).toUpperCase() }}
{{ adminUsers[currentProject.meta.owner]?.username || 'Owner' }}
Project Owner
verified_user

Configure Character Map

Define characters to be automatically replaced when exporting the file (e.g., replace accented characters with non-accented ones).

arrow_forward
playlist_add No replacements defined.
{{ item.from }} arrow_forward {{ item.to }}
{{ ((role.username || adminUsers[uid]?.username) || 'U').substring(0,2) }}
{{ role.username || adminUsers[uid]?.username || 'Unknown User' }} (BANNED)
{{ role.role || role }}

Project Glossary

Source Target Note
{{ term.source }} {{ term.target }} {{ term.note || '-' }}
No terms yet.

Add New Term

warning Delete File?

Are you sure you want to delete "{{ fileToDeleteId && currentProject.files[fileToDeleteId] ? currentProject.files[fileToDeleteId].name : '' }}"?
This action cannot be undone.

Performance

Forced on (>1000 lines)

Minimum 50. Max {{ maxPageLimit }}.

Manage Members

Project Members

{{ m.username || 'Unknown' }} ({{ m.display_name }}) Blocked
{{ m.role }}
No members yet.

Add New Member

Translation History

No history available.
Date User Content
{{ new Date(h.ts).toLocaleString() }} {{ h.t }}

{{ deleteProjectStep === 2 ? 'error' : 'warning' }} {{ deleteProjectStep === 2 ? 'Final Warning' : 'Delete Project?' }}

You are about to delete "{{ projectToDeleteId && projects[projectToDeleteId] ? projects[projectToDeleteId].meta.name : 'Unknown' }}".
This project contains {{ Object.keys(projects[projectToDeleteId].files).length }} file(s). All data will be lost!

This is your last chance. Access to this project and ALL its files will be permanently removed immediately.

ARE YOU ABSOLUTELY SURE?

Create New Project

Delete Log Entry?

Are you sure you want to delete this log entry? This action cannot be undone.

person_remove Remove Member?

Are you sure you want to remove {{ memberToRemoveId && currentProject.meta.members[memberToRemoveId] ? (currentProject.meta.members[memberToRemoveId].username || adminUsers[memberToRemoveId]?.username || 'this user') : 'this user' }} ?
They will lose access to this project immediately.
{{ showRepetitiveBubble ? getRepetitiveSegments(activeFile.data[showRepetitiveBubble]).length : 0 }} Duplicate Lines
#{{ segment.lineNumber }} Current T
{{ segment.cleanSrc }}
→ {{ segment.tgt }}
Click to jump to line
info

Notice

{{ alertMessage }}

Edit Profile

person
photo_camera

Click to upload avatar (Max 5MB)

This name will be shown instead of your username.

{{ user.username }}
{{ user.email }}