en.ts 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458
  1. export default {
  2. email_sent: "Email sent",
  3. cant_send_email: "Can't send email",
  4. logout: "Logout",
  5. verify_email: "Verify your email. ⚠️ Don't forget to check your spam folder.",
  6. verify_email_subtitle: "Please verify your email to continue.",
  7. resend_email: "Resend email",
  8. resend_email_countdown: "Resend email in {seconds} seconds",
  9. signin_error_subtitle: "Please check your credentials and try again.",
  10. register_title: "Create an account",
  11. register_description: "Enter your information below to create your account",
  12. register_terms: "By signing up, you agree to our",
  13. register_privacy: "Privacy Policy",
  14. register_privacy_link: "and our",
  15. register_privacy_link_2: "Privacy Policy",
  16. password_forgot_title: "Forgot password?",
  17. password_forgot_subtitle: "Enter your email to reset your password",
  18. new_password: "New password",
  19. new_password_placeholder: "Enter your new password",
  20. current_password: "Current password",
  21. current_password_placeholder: "Enter your current password",
  22. confirm_password: "Confirm password",
  23. confirm_password_placeholder: "Confirm your password",
  24. success: {
  25. feedback_sent: "Feedback sent",
  26. password_forgot_success: "Email sent",
  27. reset_password_success: "Password reset successfully",
  28. password_updated_successfully: "Password updated successfully",
  29. },
  30. error: {
  31. invalid_credentials: "Invalid credentials or account does not exist",
  32. upload_failed: "Upload failed",
  33. generic_error: "Error during operation",
  34. sending_email: "Error sending email",
  35. },
  36. backend_errors: {
  37. EMAIL_ALREADY_EXISTS: "Email already exists",
  38. INVALID_FILE_TYPE: "Invalid file type",
  39. FILE_TOO_LARGE: "File too large",
  40. NO_FILE_UPLOADED: "No file uploaded",
  41. IMAGE_PROCESSING_ERROR: "Image processing error",
  42. upload_failed: "Upload failed",
  43. },
  44. profile: {
  45. new_workout: "New Workout",
  46. alert: {
  47. title: "Your progress is stored in your browser.",
  48. create_account: "Create an account",
  49. log_in: "Log in",
  50. to_ensure_it_is_not_getting_lost: "to ensure it is not getting lost.",
  51. },
  52. },
  53. // Release Notes
  54. release_notes: {
  55. title: "What's New",
  56. release_notes: "Release Notes",
  57. notes: {
  58. note_2025_06_23: {
  59. title: "🇵🇹 Portuguese Support & Donation Banner",
  60. content:
  61. "The app now supports <strong>Portuguese</strong>! We've also added a <em>donation banner</em> to help support the ongoing costs of the project via <a href='https://github.com/sponsors/snouzy' target='_blank' rel='noopener' class='text-blue-500 hover:underline'>GitHub Sponsors</a> or <a href='https://ko-fi.com/workoutcool' target='_blank' rel='noopener' class='text-blue-500 hover:underline'>Ko-fi</a>. 🙏",
  62. },
  63. note_2025_06_22: {
  64. title: "🌍 New Languages & Performance Boost!",
  65. content:
  66. "The app is now available in Chinese and Russian! We've also improved drag'n'drop performance for a smoother experience. ⚡",
  67. },
  68. note_2025_06_19: {
  69. title: "📱 Now Available as a PWA!",
  70. content:
  71. "Workout.cool v1.2 is now a Progressive Web App! Install it on your phone for a native app experience with offline access. 🚀",
  72. },
  73. note_2025_06_18: {
  74. title:
  75. "🚀 Featured #1 on <a href='https://news.ycombinator.com/item?id=44309320' target='_blank' rel='noopener' class='text-blue-500 hover:underline'>Hacker News</a>!",
  76. content:
  77. "Workout.cool reached the top spot on Hacker News! Thanks to everyone for the amazing support and welcome to all the new users! 💪",
  78. },
  79. note_2025_06_01: {
  80. title: "🎉 New: Release Notes Dialog",
  81. content: "You can now view what's new directly from the header! Stay tuned for more updates.",
  82. },
  83. note_2025_05_20: {
  84. title: "UI Improvements",
  85. content: "Improved mobile responsiveness and added subtle hover effects to buttons.",
  86. },
  87. },
  88. },
  89. // Donation Alert
  90. donation_alert: {
  91. title: "Keep Workout.cool free. Support us via",
  92. or: "or",
  93. },
  94. // Donation Modal
  95. donation_modal: {
  96. support_via: "Support via...",
  97. title: "Support the project",
  98. congrats: "Congratulations on your workout! 🎉",
  99. subtitle: "This app helps you for free, but it has a real cost for me...",
  100. costs_title: "The reality of costs",
  101. costs_description: "Currently, donations don't even cover basic costs: servers, authentication, infrastructure, database, etc.",
  102. open_source_title: "100% Open Source",
  103. open_source_description:
  104. "This app is completely free, ads free and open source. No profit is generated - it's a passion project to help the community and help people exercise.",
  105. no_ads: "No ads",
  106. no_tracking: "No tracking",
  107. impact_title: "Your impact",
  108. impact_3_euros: "• Even €3 covers 1 week of server",
  109. impact_support: "• Your support keeps the app free for everyone",
  110. impact_footer: "Every donation, even small, makes a real difference! 🙏",
  111. later_button: "Later",
  112. support_button: "Support the project",
  113. },
  114. // Contact Support
  115. contact_support: "Contact Support",
  116. contact_support_subtitle: "Describe your issue and we'll help you as soon as possible. You can also write to us directly at",
  117. // Social Platforms
  118. social_platforms: {
  119. x: "X (Twitter)",
  120. facebook: "Facebook",
  121. email: "Email",
  122. whatsapp: "WhatsApp",
  123. website: "Website",
  124. phone: "Phone",
  125. youtube: "YouTube",
  126. linkedin: "LinkedIn",
  127. snapchat: "Snapchat",
  128. instagram: "Instagram",
  129. tiktok: "TikTok",
  130. threads: "Threads",
  131. },
  132. // Workout Builder
  133. workout_builder: {
  134. confirm_delete: "Are you sure you want to delete this workout session?",
  135. steps: {
  136. equipment: {
  137. title: "Equipment",
  138. description: "Select your equipment",
  139. },
  140. muscles: {
  141. title: "Muscles",
  142. description: "Choose your training",
  143. },
  144. exercises: {
  145. title: "Exercises",
  146. description: "Customize your workout",
  147. },
  148. },
  149. muscles: {
  150. back: "Back",
  151. abdominals: "Abdominals",
  152. biceps: "Biceps",
  153. triceps: "Triceps",
  154. chest: "Chest",
  155. shoulders: "Shoulders",
  156. quadriceps: "Quadriceps",
  157. hamstrings: "Hamstrings",
  158. glutes: "Glutes",
  159. calves: "Calves",
  160. forearms: "Forearms",
  161. traps: "Traps",
  162. obliques: "Obliques",
  163. },
  164. exercise: {
  165. watch_video: "Watch video",
  166. shuffle: "Shuffle",
  167. pick: "Pick",
  168. remove: "Remove",
  169. no_video_available: "No video available.",
  170. },
  171. loading: {
  172. exercises: "Loading exercises...",
  173. },
  174. error: {
  175. loading_exercises: "Error loading exercises",
  176. },
  177. no_exercises_found: "No exercises found. Try to change your equipment or muscles selection.",
  178. equipment: {
  179. bodyweight: {
  180. label: "Bodyweight",
  181. description: "Exercises using only your body weight",
  182. },
  183. dumbbell: {
  184. label: "Dumbbell",
  185. description: "Free weight exercises with dumbbells",
  186. },
  187. barbell: {
  188. label: "Barbell",
  189. description: "Compound movements with a barbell",
  190. },
  191. kettlebell: {
  192. label: "Kettlebell",
  193. description: "Dynamic exercises with kettlebells",
  194. },
  195. band: {
  196. label: "Band",
  197. description: "Resistance band exercises",
  198. },
  199. plate: {
  200. label: "Plate",
  201. description: "Exercises using weight plates",
  202. },
  203. pullup_bar: {
  204. label: "Pull-up bar",
  205. description: "Upper body exercises with a pull-up bar",
  206. },
  207. bench: {
  208. label: "Bench",
  209. description: "Bench exercises and support",
  210. },
  211. },
  212. navigation: {
  213. previous: "Previous",
  214. continue: "Continue",
  215. complete: "Complete",
  216. },
  217. stats: {
  218. "muscle_selected#zero": "0 muscle selected",
  219. "muscle_selected#one": "1 muscle selected",
  220. "muscle_selected#other": "{count} muscles selected",
  221. "equipment_selected#zero": "0 equipment selected",
  222. "equipment_selected#one": "1 equipment selected",
  223. "equipment_selected#other": "{count} equipments selected",
  224. selected: "Selected",
  225. total: "Total",
  226. equipment_ready: "equipment ready",
  227. equipment_ready_plural: "equipment ready",
  228. },
  229. selection: {
  230. choose_your_arsenal: "Choose Your Arsenal",
  231. select_equipment_description: "Select equipment to unlock personalized workouts",
  232. clear_all: "Clear all",
  233. muscle_selection_coming_soon: "Muscle Selection (Coming Soon)",
  234. muscle_selection_description: "Select the muscle(s) you want to train by clicking on them.",
  235. exercise_selection_coming_soon: "Exercise Selection (Coming Soon)",
  236. exercise_selection_description: "This step will show you personalized exercise recommendations.",
  237. },
  238. session: {
  239. back_to_workout: "Back to workout",
  240. congrats: "Congratulations, workout finished! 🎉",
  241. congrats_subtitle: "You've done it !",
  242. see_instructions: "See instructions",
  243. finish_set: "Finish Set",
  244. finish_session: "Finish Session",
  245. bodyweight: "Bodyweight",
  246. weight: "Weight",
  247. reps: "Reps",
  248. time: "Time",
  249. next_exercise: "Next Exercise",
  250. add_set: "Add set",
  251. add_column: "Add column",
  252. add_row: "Add row",
  253. remove_column: "Remove column",
  254. set_number: "Set {number}",
  255. set_number_plural: "Sets {number}",
  256. set_number_singular: "Set {number}",
  257. set_number_plural_singular: "Sets {number}",
  258. workout_in_progress: "Workout in Progress",
  259. started_at: "Started at",
  260. quit_workout: "Quit Workout",
  261. elapsed_time: "Elapsed Time",
  262. chronometer: "Chronometer",
  263. exercise_progress: "Exercise Progress",
  264. total_volume: "Total Volume",
  265. current_exercise: "Current Exercise",
  266. complete: "Complete",
  267. active: "Active",
  268. already_have_a_active_session: "You already have an active session. Impossible to repeat without finishing or quitting the workout.",
  269. no_exercise_selected: "No exercise selected",
  270. quit_workout_title: "Quit Workout?",
  271. progress: "Progress",
  272. quit_warning: "Are you sure you want to quit? You can save your progress or lose it completely.",
  273. save_and_quit: "Save & Quit",
  274. quit_without_save: "Quit Without Saving",
  275. continue_workout: "Continue Workout",
  276. history: "Workout History [{count}]",
  277. no_workout_yet: "No workout yet.",
  278. start: "start",
  279. end: "end",
  280. exercise: "EXERCISE",
  281. repeat: "Repeat",
  282. delete: "Delete",
  283. },
  284. attribute_value: {
  285. bodyweight: "Bodyweight",
  286. strength: "Strength",
  287. powerlifting: "Powerlifting",
  288. calisthenic: "Calisthenics",
  289. plyometrics: "Plyometrics",
  290. stretching: "Stretching",
  291. strongman: "Strongman",
  292. cardio: "Cardio",
  293. stabilization: "Stabilization",
  294. power: "Power",
  295. resistance: "Resistance",
  296. crossfit: "CrossFit",
  297. weightlifting: "Weightlifting",
  298. neck: "Neck",
  299. lats: "Lats",
  300. adductors: "Adductors",
  301. abductors: "Abductors",
  302. groin: "Groin",
  303. full_body: "Full body",
  304. rotator_cuff: "Rotator cuff",
  305. hip_flexor: "Hip flexor",
  306. achilles_tendon: "Achilles tendon",
  307. fingers: "Fingers",
  308. smith_machine: "Smith machine",
  309. other: "Other",
  310. ez_bar: "EZ bar",
  311. machine: "Machine",
  312. desk: "Desk",
  313. none: "None",
  314. cable: "Cable",
  315. medicine_ball: "Medicine ball",
  316. swiss_ball: "Swiss ball",
  317. foam_roll: "Foam roll",
  318. trx: "TRX",
  319. box: "Box",
  320. ropes: "Ropes",
  321. spin_bike: "Spin bike",
  322. step: "Step",
  323. bosu: "BOSU",
  324. tyre: "Tyre",
  325. sandbag: "Sandbag",
  326. pole: "Pole",
  327. wall: "Wall",
  328. bar: "Bar",
  329. rack: "Rack",
  330. car: "Car",
  331. sled: "Sled",
  332. chain: "Chain",
  333. skierg: "SkiErg",
  334. rope: "Rope",
  335. na: "N/A",
  336. isolation: "Isolation",
  337. compound: "Compound",
  338. },
  339. },
  340. commons: {
  341. signup_with: "Sign up with {provider}",
  342. signin_with: "Sign in with {provider}",
  343. signup: "Sign up",
  344. login: "Login",
  345. connecting: "Connecting...",
  346. login_to_your_account_title: "Login to your account",
  347. login_to_your_account_subtitle: "Enter your credentials below to login",
  348. password_forgot: "Forgot password?",
  349. password_reset_success: "Password reset successfully",
  350. dont_have_account: "Don't have an account?",
  351. already_have_account: "Already have an account?",
  352. or: "Or",
  353. add: "Add",
  354. your_feminine: "your",
  355. password: "Password",
  356. email: "Email",
  357. logout: "Logout",
  358. first_name: "First name",
  359. last_name: "Last name",
  360. verify_password: "Verify password",
  361. submit: "Submit",
  362. upload: "Upload",
  363. cancel: "Cancel",
  364. save_changes: "Save changes",
  365. change: "Change",
  366. subject: "Subject",
  367. message: "Message",
  368. saving: "Saving...",
  369. edit: "Edit",
  370. more_options: "More options",
  371. open_link: "Open link",
  372. hide: "Hide",
  373. make_visible: "Make visible",
  374. delete: "Delete",
  375. share: "Share",
  376. title: "Title",
  377. subtitle: "Subtitle",
  378. content: "Content",
  379. save: "Save",
  380. button: "Button",
  381. card: "Card",
  382. go_back: "Go back",
  383. next: "Next",
  384. choose_image: "Choose image",
  385. soon: "Soon",
  386. coming_soon_with_emoji: "Coming soon 🤫",
  387. no_image: "No image",
  388. description: "Description",
  389. price: "Price",
  390. duration: "Duration",
  391. location: "Location",
  392. schedule: "Schedule",
  393. participants_info: "Participants info",
  394. description_placeholder: "Enter the description",
  395. title_placeholder: "Enter the title",
  396. changes_saved: "Changes saved",
  397. replace: "Replace",
  398. loading: "Loading...",
  399. image_deleted: "The image has been deleted",
  400. discover_workoutcool: "Discover Workout Cool",
  401. received_just_now: "Received just now",
  402. copied: "Copied",
  403. url_copied: "The URL has been copied",
  404. copy_failed: "Copy failed",
  405. accordion: "Accordion",
  406. image: "Image",
  407. other: "Other",
  408. register: "Register",
  409. instantly: "instantly",
  410. immediately: "immediately",
  411. link: "Link",
  412. accept: "Accept",
  413. deny: "Deny",
  414. invalid_input: "Invalid input. Please check the errors.",
  415. copy_url: "Copy URL",
  416. page_url: "Page URL",
  417. saving_short: "Saving...",
  418. saved_short: "OK",
  419. looks_like_you_are_lost: "Looks like you are lost",
  420. the_page_you_are_looking_for_is_not_available: "The page you are looking for is not available",
  421. go_to_home: "Go to home",
  422. go_to_profile: "Go to profile",
  423. terms: "Terms of Service",
  424. privacy: "Privacy Policy",
  425. sales_terms: "Sales Terms",
  426. consent_banner: "We use cookies to improve your experience. By clicking Accept, you agree to our use of cookies.",
  427. about: "About us",
  428. profile: "Profile",
  429. donate: "Donate",
  430. my_account: "My account",
  431. dashboard: "Dashboard",
  432. home: "Home",
  433. changelog: "Changelog",
  434. stop_impersonation_button: "Stop impersonation",
  435. impersonating_user_label: "Impersonating user",
  436. re_hello: "Re Hello",
  437. back_to_login: "Back to login",
  438. sending: "Sending...",
  439. send_me_link: "Send me a link",
  440. extremely_dissatisfied: "Extremely dissatisfied",
  441. somewhat_dissatisfied: "Somewhat dissatisfied",
  442. neutral: "Neutral",
  443. satisfied: "Satisfied",
  444. support: "Support",
  445. change_language: "Change language",
  446. in_progress: "In progress",
  447. },
  448. } as const;