{ "auth": { "signIn": "Sign In", "signUp": "Sign Up", "email": "Email", "password": "Password", "name": "Name", "emailPlaceholder": "Enter your email address", "passwordPlaceholder": "Enter your password", "namePlaceholder": "Enter your name", "passwordMinChars": "Enter password (min 6 chars)", "resetPassword": "Reset Password", "resetPasswordInstructions": "Enter your email to reset password", "forgotPassword": "Forgot password?", "noAccount": "Don't have an account?", "hasAccount": "Already have an account?", "signInToAccount": "Sign in to your account", "createAccount": "Create your account", "rememberMe": "Remember me", "orContinueWith": "Or continue with", "continueWithGoogle": "Continue with Google", "sessionExpired": "Your session has expired. Please sign in again.", "oauthAccountNotLinked": "This Google account does not match your existing account. Use the same email or sign in with your password.", "checkYourEmail": "Check your email", "resetEmailSent": "We have sent a password reset link to your email address if it exists in our system.", "returnToLogin": "Return to Login", "forgotPasswordTitle": "Forgot Password", "forgotPasswordDescription": "Enter your email address and we'll send you a link to reset your password.", "sending": "Sending...", "sendResetLink": "Send Reset Link", "backToLogin": "Back to login", "signOut": "Sign out", "confirmPassword": "Confirm Password", "confirmPasswordPlaceholder": "Confirm your password", "welcomeBack": "Welcome back", "welcomeBackSubtitle": "Sign in to find your notes, your connections, and what you forgot.", "createYourSpace": "Create your second brain", "createYourSpaceSubtitle": "It connects while you write — not just another notes app.", "forgot": "Forgot?", "backToSite": "Back to site", "privacyTerms": "© 2025 Memento Labs — Privacy · Terms", "checkEmailTitle": "Check your email", "checkEmailDescription": "We sent a confirmation link to {email}. Open it to activate your account before signing in.", "checkEmailDescriptionGeneric": "We sent a confirmation link to your email. Open it to activate your account before signing in.", "resendVerification": "Resend confirmation email", "verifyResent": "Confirmation email sent. Check your inbox.", "verifyResendFailed": "Could not send the confirmation email. Try again later.", "verifyMissingEmail": "Enter your email address.", "verifyLoading": "Confirming your email…", "verifySuccessTitle": "Email confirmed", "verifySuccessDescription": "Your account is ready. You can now sign in.", "verifyExpiredTitle": "Link expired", "verifyExpiredDescription": "This confirmation link has expired. Request a new one.", "verifyInvalidTitle": "Invalid link", "verifyInvalidDescription": "This confirmation link is invalid or already used.", "emailNotVerified": "Please confirm your email before signing in.", "emailVerifiedBanner": "Email confirmed. You can sign in now.", "invalidCredentials": "Invalid email or password." }, "sidebar": { "notes": "Notes", "recent": "Recent", "quickNav": "Quick navigation", "reminders": "Reminders", "labels": "Labels", "editLabels": "Edit labels", "newNoteTabs": "New Note", "newNoteTabsHint": "Create note in this notebook", "noLabelsInNotebook": "No labels in this notebook yet", "archive": "Archive", "trash": "Trash", "clearFilter": "Remove filter", "inbox": "Inbox", "sharedWithMe": "Shared with me", "sortNewest": "Newest first", "sortOldest": "Oldest first", "sortAlpha": "A → Z", "accountMenu": "Account menu", "profile": "Profile", "signOut": "Sign out", "sortOrder": "Sort order", "freezePinnedNotebook": "Pin notebook sidebar order", "unfreezePinnedNotebook": "Unpin notebook sidebar order", "newSubNotebook": "New sub-notebook", "aiBadge": "AI", "aiGeneratedNote": "AI-generated note", "aiGeneratedNotebook": "Notebook created with AI — recently", "recentNote": "Recently created", "notebookEmpty": "Empty", "renameNotebook": "Rename", "sharedNotebookBadge": "· Shared", "sortManual": "Custom order", "moveFailed": "Failed to move notebook", "dropToRoot": "Drop here to move to root", "noReminders": "No active reminders.", "documents": "Documents", "dashboardPanelBody": "An overview of your notes, next steps, and discoveries. Use the counters at the top of the page to act.", "searchNotebooksPlaceholder": "Search notebooks…", "clearSearch": "Clear search", "insightsPanelBody": "A map of how your notes connect: related themes, bridge notes, and links you can open.", "revisionPanelBody": "Review with cards. They come back at the right time. Sets come from your notes.", "backToNotebooks": "Back to notebooks", "backToHome": "Back to home", "resizeNotebooksPanel": "Resize notebooks panel", "resizeSidebar": "Resize sidebar width", "dailyNote": "Daily Note", "dailyNoteError": "Could not open today's note", "dailyNoteTooltip": "Open or create your personal daily journal note for today", "lightMode": "Light mode", "darkMode": "Dark mode", "searchShortcut": "Search (Ctrl+K)" }, "notes": { "title": "Notes", "newNote": "New note", "reorganize": "Reorganize notes", "untitled": "Untitled", "placeholder": "Take a note...", "markdownPlaceholder": "Take a note... (Markdown supported)", "titlePlaceholder": "Title", "noteTypes": { "richtext": "Rich Text", "markdown": "Markdown", "text": "Plain text", "checklist": "Checklist", "clip": "Web clip" }, "listItem": "List item", "addListItem": "+ List item", "newChecklist": "New checklist", "add": "Add", "adding": "Adding...", "close": "Close", "confirmDelete": "This note will go to the trash. You can restore it later.", "confirmLeaveShare": "Are you sure you want to leave this shared note?", "sharedBy": "Shared by", "sharedShort": "Shared", "leaveShare": "Leave", "delete": "Delete", "archive": "Archive", "unarchive": "Unarchive", "pin": "Pin", "unpin": "Unpin", "color": "Color", "changeColor": "Change color", "setReminder": "Set reminder", "setReminderButton": "Set Reminder", "date": "Date", "time": "Time", "reminderDateTimeRequired": "Please enter date and time", "invalidDateTime": "Invalid date or time", "reminderMustBeFuture": "Reminder must be in the future", "reminderSet": "Reminder set for {datetime}", "reminderPastError": "Reminder must be in the future", "reminderRemoved": "Reminder removed", "addImage": "Add image", "coverNoneHint": "No cover image — pick one from the note or leave empty.", "coverChoose": "Choose cover", "coverChange": "Change", "coverRemove": "Remove cover", "coverPickLabel": "Cover image", "addLink": "Add link", "linkAdded": "Link added", "linkMetadataFailed": "Could not fetch link metadata", "linkAddFailed": "Failed to add link", "invalidFileType": "Invalid file type: {fileName}. Only JPEG, PNG, GIF, and WebP allowed.", "fileTooLarge": "File too large: {fileName}. Maximum size is {maxSize}.", "uploadFailed": "Failed to upload {filename}", "contentOrMediaRequired": "Please enter some content or add a link/image", "itemOrMediaRequired": "Please add at least one item or media", "noteCreated": "Note created successfully", "noteCreateFailed": "Failed to create note", "deleted": "Note deleted", "deleteFailed": "Failed to delete note", "aiAssistant": "AI Assistant", "changeSize": "Change size", "backgroundOptions": "Background options", "moreOptions": "More options", "remindMe": "Remind me", "markdownMode": "Markdown", "addCollaborators": "Add collaborators", "duplicate": "Duplicate", "share": "Share", "showCollaborators": "Show collaborators", "pinned": "Pinned", "viewNotes": "Notes", "viewTasks": "Tasks", "layoutGridTitle": "Card / grid view", "layoutListTitle": "Editorial list view", "layoutTableTitle": "Structured table view", "tasksHeader": "Notebook tasks", "tasksSummary": "{count} tasks · {completed} completed", "tasksEmptyTitle": "No tasks in this notebook", "tasksEmptyHint": "Add lines like « - [ ] My task » in your notes to see them here.", "taskFromNote": "Note: {title}", "openSourceNote": "Open source note", "tableTitle": "Title", "tableNotebook": "Notebook", "tableLabels": "Labels", "tableTasks": "Tasks", "tableModified": "Modified", "others": "Others", "noNotes": "No notes", "noNotesFound": "No notes found", "createFirstNote": "Create your first note", "size": "Size", "small": "Small", "medium": "Medium", "large": "Large", "shareWithCollaborators": "Share with collaborators", "view": "View Note", "edit": "Edit", "readOnly": "Read Only", "preview": "Preview", "noContent": "No content", "takeNote": "Take a note...", "takeNoteMarkdown": "Take a note... (Markdown supported)", "addItem": "Add item", "sharedReadOnly": "This note is shared with you in read-only mode", "makeCopy": "Make a copy", "saving": "Saving...", "copySuccess": "Note copied successfully!", "copyFailed": "Failed to copy note", "copy": "Copy", "markdownOn": "Markdown ON", "markdownOff": "Markdown OFF", "undo": "Undo (Ctrl+Z)", "redo": "Redo (Ctrl+Y)", "pinnedNotes": "Pinned Notes", "recent": "Recent", "addNote": "Add Note", "readMore": "Read more", "remove": "Remove", "dragToReorder": "Drag to reorder", "more": "More options", "emptyState": "No notes yet. Create your first note!", "metadataPanel": "Details", "metadataNotebook": "Notebook", "emptyStateTabs": "No notes here yet. Use \"New note\" in the sidebar to add one (AI title suggestions appear in the composer).", "inNotebook": "In notebook", "moveFailed": "Failed to move note. Please try again.", "clarifyFailed": "Failed to clarify text", "shortenFailed": "Failed to shorten text", "improveFailed": "Failed to improve text", "transformFailed": "Failed to transform text", "markdown": "Markdown", "unpinned": "Unpinned", "redoShortcut": "Redo (Ctrl+Y)", "undoShortcut": "Undo (Ctrl+Z)", "reorderTabs": "Reorder tab", "modified": "Modified", "created": "Created", "loading": "Loading...", "exportPDF": "Export PDF", "savedStatus": "Saved", "saved": "Note saved", "dirtyStatus": "Modified", "completedLabel": "Completed", "notes.emptyNotebook": "Empty notebook", "notes.emptyNotebookDesc": "This notebook has no notes. Click + to create one.", "notes.noNoteSelected": "No note selected", "notes.selectOrCreateNote": "Select a note from the list or create a new one.", "commitVersion": "Save version", "versionSaved": "Version saved", "deleteVersion": "Delete this version", "versionDeleted": "Version deleted", "deleteVersionConfirm": "Delete this version?", "deleteVersionDesc": "This action cannot be undone. The version will be permanently deleted from the history.", "historyMode": "History mode", "historyModeManual": "Manual (commit button)", "historyModeAuto": "Automatic (smart)", "historyModeManualDesc": "Create snapshots manually with the commit button", "historyModeAutoDesc": "Automatic snapshots with smart detection", "history": "History", "historyRestored": "Version restored", "historyEnabled": "History enabled", "historyDisabledTitle": "Version history", "historyDisabledDesc": "Track changes to this note over time. Enable history to start recording versions.", "historyEnabledTitle": "History enabled!", "historyEnabledDesc": "Versions of this note will now be recorded.", "enableHistory": "Enable history", "historyEmpty": "No versions available", "historySelectVersion": "Select a version to preview its content", "currentVersion": "current", "compareVersions": "Compare", "diffTitle": "Comparison", "diffSelectHint": "Click on 2 versions in the list to compare them", "sortBy": "Sort by", "sortDateDesc": "Date (newest)", "sortDateAsc": "Date (oldest)", "sortTitleAsc": "Title A → Z", "sortTitleDesc": "Title Z → A", "suggestTitle": "AI title", "generateTitleFromImage": "Generate title from image", "titleGenerated": "Title generated", "content": "Content", "restore": "Restore", "createFailed": "Failed to create note", "updateFailed": "Failed to update note", "archived": "Note archived", "unarchivedSuccess": "Note removed from archive", "archiveFailed": "Failed to archive", "sort": "Sort", "confirmDeleteTitle": "Delete note", "leftShare": "Share removed", "ideaOrigin": "Origin of the idea", "noNoteLink": "Purely generative idea", "dismiss": "Not pertinent", "dismissed": "Note dismissed from recent", "generalNotes": "General Notes", "noteType": "Note type", "typeText": "Text", "typeMarkdown": "Markdown", "typeRichText": "Rich Text", "typeChecklist": "Checklist", "convertedToRichText": "Converted to rich text", "conversionFailed": "Conversion failed, staying in Markdown", "richTextPlaceholder": "Take a note...", "switchTypeTitle": "Switch note type?", "switchTypeWarning": "Some formatting may be lost when switching to {type}.", "switchTypeContentPreserved": "Your content will be preserved as plain text.", "switchType": "Switch to {type}", "saveNow": "Save now", "backToCollection": "Back to collection", "backToDashboard": "Back to dashboard", "markdownEditingTitle": "Return to editing", "markdownPreviewTitle": "Preview", "brainstormThisIdea": "Brainstorm this idea", "brainstormThisIdeaAria": "Brainstorm this idea", "shareNoteTitle": "Share note", "shareNoteAria": "Share note", "saveNoteAria": "Save note", "noChangesToSaveAria": "No changes to save", "optionsMenuAria": "Options menu", "deleteNoteConfirmItem": "Delete note", "noteDeletedToast": "Note deleted.", "undoDelete": "Undo", "deleteNoteFailedToast": "Could not delete.", "documentInfoAria": "Document information", "noModification": "No changes", "uploading": "Uploading...", "open": "Open", "illustrationGenerated": "Illustration generated", "attachments": "Attachments", "search": "Search", "generateIllustration": "Generate illustration", "regenerateIllustration": "Regenerate illustration", "deleteIllustration": "Delete illustration", "saveFailed": "Failed to save", "createFirst": "Create your first note", "unarchived": "Unarchived", "savedJustNow": "Saved", "unsaved": "Unsaved changes", "historyEnabledTooltip": "Version history enabled — changes are tracked", "heading1": "Heading 1", "heading2": "Heading 2", "heading3": "Heading 3", "importSuccess": "{{count}} notes imported!", "unpublished": "Note unpublished", "deleteError": "Failed to delete illustration", "uploadSuccess": "Image added" }, "pagination": { "previous": "←", "pageInfo": "Page {currentPage} / {totalPages}", "next": "→" }, "labels": { "title": "Labels", "filter": "Filter by Label", "manage": "Manage Labels", "manageTooltip": "Manage Labels", "changeColor": "Change Color", "changeColorTooltip": "Change color", "delete": "Delete", "deleteTooltip": "Delete label", "confirmDelete": "Are you sure you want to delete this label?", "newLabelPlaceholder": "Create new label", "namePlaceholder": "Enter label name", "addLabel": "Add label", "createLabel": "Create label", "labelName": "Label name", "labelColor": "Label color", "manageLabels": "Manage labels", "manageLabelsDescription": "Add or remove labels for this note. Click on a label to change its color.", "selectedLabels": "Selected Labels", "allLabels": "All Labels", "clearAll": "Clear all", "filterByLabel": "Filter by label", "tagAdded": "Tag \"{tag}\" added", "showLess": "Show less", "showMore": "Show more", "editLabels": "Edit Labels", "editLabelsDescription": "Create, edit colors, or delete labels.", "noLabelsFound": "No labels found.", "loading": "Loading...", "notebookRequired": "⚠️ Labels are only available in notebooks. Move this note to a notebook first.", "count": "{count} labels", "noLabels": "No labels", "confirmDeleteShort": "Confirm?", "labelRemoved": "Label \"{label}\" removed", "filterByTags": "Filter by tags", "searchTags": "Search tags", "activeCount": "{{count}} active", "showMoreCount": "+ {{count}} more" }, "search": { "placeholder": "Search", "searchPlaceholder": "Search your notes...", "semanticInProgress": "AI search in progress...", "semanticTooltip": "Search by meaning", "searching": "Searching...", "noResults": "No results found", "resultsFound": "{count} notes found", "exactMatch": "Exact match", "related": "Related", "disabledAdmin": "Search disabled in admin mode" }, "collaboration": { "emailPlaceholder": "Enter email address", "addCollaborator": "Add collaborator", "removeCollaborator": "Remove collaborator", "owner": "Owner", "canEdit": "Can edit", "canView": "Can view", "shareNote": "Share note", "shareWithCollaborators": "Share with collaborators", "addCollaboratorDescription": "Add people to collaborate on this note by their email address.", "viewerDescription": "You have access to this note. Only the owner can manage collaborators.", "emailAddress": "Email address", "enterEmailAddress": "Enter email address", "invite": "Invite", "peopleWithAccess": "People with access", "noCollaborators": "No collaborators yet. Add someone above!", "noCollaboratorsViewer": "No collaborators yet.", "pendingInvite": "Pending Invite", "pending": "Pending", "remove": "Remove", "unnamedUser": "Unnamed User", "done": "Done", "willBeAdded": "{email} will be added as collaborator when note is created", "alreadyInList": "This email is already in the list", "nowHasAccess": "{name} now has access to this note", "accessRevoked": "Access has been revoked", "errorLoading": "Error loading collaborators", "failedToAdd": "Failed to add collaborator", "failedToRemove": "Failed to remove collaborator", "shareCompactTitle": "Share", "inviteByEmailLabel": "Invite by email", "accessReadCompact": "View", "accessEditCompact": "Edit", "sendInvitation": "Send invitation", "invitationSentBadge": "Invitation sent", "sharedAccessLabel": "Shared access", "noCollaboratorsEmpty": "No collaborators yet.", "removeAccessTitle": "Remove access", "toastInviteSentTo": "Invitation sent to {email}", "toastAccessRemoved": "Access removed for {target}", "toastUserFallback": "the user", "toastSharingError": "Sharing error", "toastEmailNotFound": "No account found with this email.", "toastAlreadySharedUser": "This note is already shared with this user.", "toastRemoveAccessFailed": "Could not remove access.", "userFallback": "User" }, "ai": { "analyzing": "AI analyzing...", "clickToAddTag": "Click to add this tag", "ignoreSuggestion": "Ignore this suggestion", "generatingTitles": "Generating titles...", "generateTitlesTooltip": "Generate titles with AI", "poweredByAI": "Powered by AI", "languageDetected": "Language detected", "processing": "Processing...", "tagAdded": "Tag \"{tag}\" added", "titleGenerating": "Generating...", "titleGenerateWithAI": "Generate titles with AI", "titleGenerationMinWords": "Content must have at least 10 words to generate titles (current: {count} words)", "titleGenerationError": "Error generating titles", "titlesGenerated": "💡 {count} titles generated!", "titleGenerationFailed": "Failed to generate titles", "titleApplied": "Title applied!", "reformulationNoText": "Please select text or add content", "reformulationSelectionTooShort": "Selection too short, using full content", "reformulationMinWords": "Text must have at least 10 words (current: {count} words)", "reformulationMaxWords": "Text must have maximum 500 words", "reformulationError": "Error during reformulation", "reformulationFailed": "Failed to reformulate text", "reformulationApplied": "Reformulated text applied!", "transformMarkdown": "Transform to Markdown", "transforming": "Transforming...", "transformSuccess": "Text transformed to Markdown successfully!", "transformError": "Error during transformation", "convertToRichtext": "Convert to Rich Text", "convertingToRichtext": "Converting...", "assistant": "AI Note", "generating": "Generating...", "generateTitles": "Generate titles", "reformulateText": "Reformulate text", "reformulating": "Reformulating...", "clarify": "Clarify", "shorten": "Shorten", "improveStyle": "Improve style", "reformulationComparison": "Reformulation Comparison", "original": "Original", "reformulated": "Reformulated", "autoLabels": { "error": "Failed to fetch label suggestions", "noLabelsSelected": "No labels selected", "created": "{count} labels created successfully", "analyzing": "Analyzing your notes...", "title": "New Label Suggestions", "description": "I've detected recurring themes in \"{notebookName}\" ({totalNotes} notes). Create labels for them?", "note": "note", "notes": "notes", "typeContent": "Type content to get label suggestions...", "createNewLabel": "Create this new label and add it", "new": "(new)", "create": "Create", "creating": "Creating labels...", "notesCount": "{count} notes", "typeForSuggestions": "Type content to get label suggestions...", "noNotebook": "No notebook selected", "noSuggestions": "No suggestions", "regenerate": "Regenerate" }, "batchOrganization": { "title": "Organize with AI", "description": "AI will analyze your notes and suggest organizing them into notebooks.", "analyzing": "Analyzing your notes...", "noNotebooks": "No notebooks available. Create notebooks first to organize your notes.", "noSuggestions": "AI could not find a good way to organize these notes.", "apply": "Apply", "applying": "Applying...", "success": "{count} notes moved successfully", "error": "Failed to create organization plan", "noNotesSelected": "No notes selected", "applyFailed": "Failed to apply organization plan", "selectAllIn": "Select all notes in {notebook}", "selectNote": "Select note: {title}", "notesToOrganize": "Notes to organize", "selected": "Selected", "unorganized": "Unorganized" }, "notebookSummary": { "regenerate": "Regenerate Summary", "regenerating": "Regenerating summary...", "exportPDF": "Export as PDF" }, "clarifyDesc": "Make the text clearer and easier to understand", "shortenDesc": "Summarize the text and get to the point", "improve": "Improve writing", "improveDesc": "Fix grammar and enhance style", "toMarkdown": "Format as Markdown", "toMarkdownDesc": "Add headings, bullet points and structure the text", "translate": "Translate", "translateDesc": "Change the text language", "translateBack": "Back", "translationApplied": "Translation applied", "translationFailed": "Translation failed", "undo": "Undo AI", "undoAI": "Undo AI transformation", "undoApplied": "Original text restored", "minWordsError": "Note must contain at least 5 words to use AI actions.", "wordCountMin": "Minimum {min} words required ({current} current)", "wordCountMax": "Maximum {max} words allowed ({current} current)", "genericError": "AI error", "actionError": "Error during AI action", "appliedToNote": "Applied to note", "applyToNote": "Apply to note", "undoLastAction": "Undo last AI action", "selectContext": "Select context...", "selectNotebook": "Select notebook", "chatPlaceholder": "Ask AI to edit, summarize, or draft...", "assistantTitle": "AI Note", "currentNote": "Current note", "shrinkPanel": "Shrink panel", "expandPanel": "Expand panel", "chatTab": "Chat", "noteActions": "Note Actions", "askToStart": "Ask the Assistant something to get started.", "chatPanelContext": "Context", "chatPanelNotebookPlus": "+ Notebook", "chatPanelWritingTone": "Writing tone", "scopeAutoBadge": "Auto", "chatNoteQuestionPlaceholder": "Ask a question about this note...", "chatNotebookSelectPlaceholder": "Include a notebook...", "assistantTabActions": "Actions", "resourcePreviewAiTitle": "AI preview", "resourcePreviewInjectFromChat": "Inject from chat", "contextLabel": "Context", "thisNote": "This note", "contextSourceHeading": "Context source", "tones": { "professional": "Professional", "creative": "Creative", "academic": "Academic", "casual": "Casual" }, "allMyNotes": "All my notes", "notebookGeneric": "Notebook", "writingTone": "Writing Tone", "askAboutThisNote": "Ask AI something about this note...", "askAboutYourNotes": "Ask AI something about your notes...", "webSearchLabel": "Web Search", "newLineHint": "Shift+Enter = new line", "resultLabel": "Result", "discardAction": "Discard", "organization": "Organization", "transformationsDesc": "Transformations — applied directly to the note", "writeMinWordsAction": "Write at least 5 words to activate AI actions.", "processingAction": "Processing...", "noImagesError": "No images in this note", "overview": "Overview", "action": { "clarify": "Clarify", "shorten": "Shorten", "improve": "Improve", "toMarkdown": "To Markdown", "describeImages": "Describe images", "fixGrammar": "Fix Grammar", "translate": "Translate", "explain": "Explain", "toRichText": "Convert to rich text", "generateChart": "Generate chart", "customLang": "Custom language" }, "generate": { "slides": "Generate Slides", "sectionLabel": "Generation Tools", "theme": "Theme", "themeAuto": "Automatic (AI picks)", "themeArchitecturalMono": "Architectural Mono", "themeVibrantTech": "Vibrant Tech", "themeMinimalSilk": "Minimal Silk", "style": "Style", "styleProfessional": "Professional", "styleCreative": "Creative", "styleBrutalist": "Brutalist", "template": "Template", "templateAuto": "Auto (AI decides)", "templateBoard": "Board Update", "templateProject": "Project Status", "templateStrategy": "Strategy Review", "templateQuarterly": "Quarterly Results", "purpose": "Deck type", "purposeAuto": "Auto (from note)", "purposeCourse": "Lesson / course", "purposeBoard": "Board update", "purposeProject": "Project status", "purposeStrategy": "Strategy", "purposePitch": "Pitch", "purposeSummary": "Short summary", "audience": "Audience", "audienceAuto": "Auto", "audienceStudent": "Students", "audienceBoard": "Leadership", "audienceTeam": "Team", "audienceClient": "Client", "audienceGeneral": "General public", "slideCount": "Slide count", "slideCountAuto": "Auto (from length)", "creditCostEstimate": "Estimated cost: {cost} credits (1 outline + {slides} slides).", "diagram": "Generate Diagram", "diagramReadyHint": "Convert note into visual flow", "diagramType": "Diagram Type", "typeAuto": "Auto-detect", "typeFlowchart": "Flowchart", "typeMindMap": "Mind Map", "typeTimeline": "Timeline", "typeOrgChart": "Org Chart", "typeArchitecture": "Architecture", "typeProcessMap": "Process Map", "styleSketchy": "Sketchy", "styleSoft": "Soft", "styleMinimal": "Minimal", "styleDraft": "Draft", "stylePolished": "Polished", "styleHandwritten": "Handwritten", "diagramReady": "Diagram is ready!", "openInExcalidraw": "Open in Excalidraw Lab", "insertDiagramInNote": "Embed PNG in current note", "diagramImageAlt": "AI Generated Diagram", "insertedInNote": "Diagram inserted in note", "insertExportError": "Error exporting/uploading diagram", "noNoteId": "No note ID" }, "openAssistant": "Open AI Note", "poweredByMomento": "Powered by Memento AI", "welcomeMsg": "Hello! I'm your AI assistant. How can I help you with your notes today? I can help refine tone, expand messaging, or summarize content.", "summaryLast5": "Summary of your last 5 notes", "analyzingProgress": "Analyzing...", "generateInsightsBtn": "Generate Insights", "newDiscussion": "New discussion", "noRecentConversations": "No recent conversations.", "discussionContextLabel": "Discussion Context", "webSearchNotConfigured": "Web Search (Not configured)", "historyTab": "History", "insightsTab": "Insights", "aiCopilot": "AI Copilot", "suggestTitle": "AI title suggestion", "generateTitleFromImage": "Generate title from image", "titleGenerated": "Title generated from image", "resourceTab": "Resource", "aiNoteTitle": "AI Note", "injectReplace": "Replace", "injectReplaceTitle": "Replace note content with this message", "injectComplete": "Complete", "injectCompleteTitle": "Complete note with this message (AI)", "injectMerge": "Merge", "injectMergeTitle": "Merge with note (AI)", "imagesCount": "{count} images", "resource": { "failedToLoadUrl": "Failed to load this URL", "pageLoaded": "Page loaded: {title}", "pageLoadError": "Error loading the page", "pasteOrUrlFirst": "Paste text or load a URL first", "enrichError": "Enrichment error", "enrichErrorShort": "Enrichment error", "contentApplied": "Content applied to note ✓", "fromChat": "💬 From chat", "replacement": "↓ Replacement", "completedByAI": "✦ Completed by AI", "mergedByAI": "⟳ Merged by AI", "rendered": "Rendered", "cancel": "Cancel", "applyToNote": "Apply to note", "urlLabel": "URL (optional)", "resourceText": "Resource text", "resourcePlaceholder": "Paste your text here (markdown, HTML, plain text…)", "words": "words", "integrationMode": "Integration mode", "modeReplace": "Replace", "modeReplaceDesc": "Direct, no AI", "modeComplete": "Complete", "modeCompleteDesc": "Adds without rewriting", "modeMerge": "Merge", "modeMergeDesc": "Rewrites and integrates", "aiProcessing": "AI processing…", "preview": "Preview", "generatePreview": "Generate preview", "emptyNoteHint": "💡 The note is empty — the resource content will be integrated directly." }, "cancel": "Cancel", "copied": "Copied", "copy": "Copy", "transformations": "Transformations", "otherLanguage": "Another language", "translateNow": "Translate now", "generationTools": "Generation tools", "generateSlidesLoading": "⏳ Generating presentation...", "generateDiagramLoading": "⏳ Generating diagram...", "generateChartLoading": "⏳ Generating chart...", "chart": { "title": "Chart", "generate": "Generate chart", "generateDesc": "Create a visualization from data", "type": "Chart type", "typeBar": "Bar", "typeBarH": "Horizontal Bar", "typeLine": "Line", "typeArea": "Area", "typePie": "Pie", "typeRadar": "Radar", "typeFunnel": "Funnel", "typeGauge": "Gauge", "autoDetect": "Auto detect", "insertInNote": "Insert in note", "chartReady": "Chart ready!", "insertedMessage": "Chart inserted in note", "noDataError": "No data found to create chart", "invalidFormat": "Invalid data format" }, "errorShort": "Error", "readyToast": "Ready!", "downloadFailedToast": "Download failed", "viewSlidesButton": "View Presentation", "pptxDownloadButton": "Download .pptx", "presentationReadyBadge": "Presentation ready", "openInLabTitle": "Open in Lab", "inlineSummaryMarkdown": "**Summary:**", "networkErrorShort": "Network error.", "featureLocked": "This feature requires the PRO plan or higher.", "quotaExceeded": "Not enough AI credits. Upgrade your plan, or use your own API key.", "noHistory": "No history", "webSearchDisabled": "Web search disabled", "webSearchEnabled": "Web search enabled", "result": { "apply": "Apply", "original": "Original", "preview": "Preview", "suggestion": "Suggestion" } }, "titleSuggestions": { "available": "Title suggestions", "title": "AI suggestions", "generating": "Generating...", "selectTitle": "Select a title", "dismiss": "Dismiss" }, "semanticSearch": { "exactMatch": "Exact match", "related": "Related", "searching": "Searching..." }, "paragraphRefactor": { "title": "Text improvement", "shorten": "Shorten", "expand": "Expand", "improve": "Improve", "formal": "Formal", "casual": "Casual" }, "interactiveDemo": { "invalid": "Invalid interactive demo", "empty": "Interactive demo unavailable", "step": "step", "speed": "Playback speed", "needMoreText": "Select at least ~20 words (or write more content) to generate a demo", "generating": "Generating interactive demo…", "generateSuccess": "Interactive demo inserted", "generateFailed": "Demo generation failed", "insertFailed": "Could not insert the demo", "quotaExceeded": "Not enough AI quota" }, "memoryEcho": { "title": "I noticed something...", "description": "Proactive connections between your notes", "dailyInsight": "Daily insight from your notes", "insightReady": "Your insight is ready!", "viewConnection": "View Connection", "helpful": "Helpful", "notHelpful": "Not Helpful", "dismiss": "Dismiss for now", "thanksFeedback": "Thanks for your feedback!", "thanksFeedbackImproving": "Thanks! We'll use this to improve.", "connections": "Connections", "connection": "connection", "connectionsBadge": "{count} connection{plural}", "match": "{percentage}% match", "fused": "Fused", "clickToView": "Click to view note →", "defaultInsight": "These notes belong together.", "overlay": { "title": "Connected Notes", "searchPlaceholder": "Search connections...", "sortBy": "Sort by:", "sortSimilarity": "Similarity", "sortRecent": "Recent", "sortOldest": "Oldest", "viewAll": "View all side by side", "loading": "Loading...", "noConnections": "No connections found", "error": "Failed to load connections" }, "comparison": { "title": "Side-by-side comparison", "subtitle": "Review linked notes to decide what to keep or merge.", "similarityInfo": "These notes are connected by {similarity}% similarity", "highSimilarityInsight": "These notes deal with the same topic with a high degree of similarity. They could be merged or consolidated.", "stayOnCurrentNote": "You stay on your current note. Close this window to keep writing.", "untitled": "Untitled", "clickToView": "Click to view note", "helpfulQuestion": "Is this comparison helpful?", "helpful": "Helpful", "notHelpful": "Not Helpful" }, "preview": { "subtitle": "Preview of the linked note — you stay on the one you're editing.", "loadError": "Could not load this note's content." }, "editorSection": { "title": "Connected notes ({count})", "loading": "Loading…", "view": "View", "viewLinkedNote": "View linked note", "compare": "Compare", "merge": "Merge", "compareAll": "Compare all", "mergeAll": "Merge all", "close": "Close", "backToNote": "Back to my note", "openInEditor": "Open in editor", "badgeLabel": "Memory Echo", "affinityBadge": "{percentage}% closeness", "intro": "Memento found another note on the same topic. Preview it, insert a citation, or merge — without leaving this one.", "detectedIn": "Passage found in: {title}", "helpToggle": "How does this work?", "helpTitle": "What can you do with this connection?", "helpView": "Shows the other note in a window. You stay on your current note.", "helpCite": "Inserts a passage from the other note here, with a link to the source.", "helpCompare": "Shows both notes side by side in a window.", "helpMerge": "Combines both notes into one.", "embedPassage": "Citation", "embedding": "Inserting…", "embedSuccess": "Citation inserted in your note", "citationSuccess": "Citation inserted with link to source", "embedFallback": "Open the source note, make a small edit, then try again.", "embedFailed": "Could not insert the citation right now", "showAll": "View all connections ({count})", "hideAll": "Hide extra connections ({count})", "retroTitle": "Notes that cite this content", "retroDescription": "This passage is quoted in {count} other note(s):", "consentRequired": "Enable AI processing in Settings → AI to see this note’s links.", "bottomCueLoading": "Memory Echo is scanning below…", "bottomCueFound": "{count} related notes below", "bottomCueFoundOne": "1 related note below", "bottomCueRetro": "Cited in {count} note(s) below", "bottomCueConsent": "AI connections available below", "bottomCueScroll": "Scroll to Memory Echo", "bottomCueDismiss": "Dismiss" }, "fusion": { "title": "🔗 Intelligent Fusion", "mergeNotes": "Merge {count} note(s)", "notesToMerge": "📝 Notes to merge", "optionalPrompt": "💬 Fusion prompt (optional)", "promptPlaceholder": "Optional instructions for AI (e.g., 'Keep the formal style of note 1')...", "generateFusion": "Generate the fusion", "generating": "Generating...", "previewTitle": "📝 Preview of merged note", "edit": "Edit", "modify": "Modify", "finishEditing": "Finish editing", "optionsTitle": "Fusion options", "archiveOriginals": "Archive original notes", "keepAllTags": "Keep all tags", "useLatestTitle": "Use latest note as title", "createBacklinks": "Create backlink to original notes", "cancel": "Cancel", "confirmFusion": "Confirm fusion", "success": "Notes merged successfully!", "error": "Failed to merge notes", "generateError": "Failed to generate fusion", "noContentReturned": "No fusion content returned from API", "unknownDate": "Unknown date" } }, "notification": { "accept": "Accept", "accepted": "Share accepted", "decline": "Decline", "noNotifications": "No new notifications", "shared": "shared \"{title}\"", "untitled": "Untitled", "notifications": "Notifications", "declined": "Share declined", "removed": "Note removed from list", "slidesReady": "Presentation ready", "openSlides": "Open presentation", "canvasReady": "Diagram ready", "pptxReady": "Slides ready", "downloadPptx": "Download .pptx", "markAllRead": "Mark all read", "agentSuccess": "Agent finished", "agentFailed": "Agent failed", "brainstormInvite": "Brainstorm", "brainstormJoined": "Brainstorm", "systemNotification": "System", "clipSaved": "Web clip saved", "downloadFailed": "Download failed", "brainstormShared": "Brainstorm shared", "shareLabel": "Share" }, "clipper": { "webClipper": "Web Clipper", "connected": "Connected", "destinationNotebook": "Destination notebook", "selectNotebook": "Select a notebook", "activePage": "Active page", "selectionDetected": "Selection detected", "ignore": "ignore", "selectionHint": "Tip: highlight text on the page to clip a precise selection as a note.", "clipSelection": "Clip selection", "clipPage": "Clip this page", "analyzingSource": "Analyzing source", "processing": "Processing…", "processingDetail": "Generating tags, semantic summary and embeddings.", "successBadge": "Success", "sentToNotebook": "Note saved to notebook", "viewInMomento": "View in Memento", "clipAnother": "Clip another page", "captureFailed": "Capture failed", "genericError": "Something went wrong while sending to your instance.", "retry": "Retry", "footer": "Memento Companion v2.1.2 · Secured HTTPS TLS 1.3", "quitSimulator": "Close simulator", "simulatorBadge": "Capture simulator", "extensionActive": "Extension active on this page", "publishedOn": "Published on {domain}", "realtimeCapture": "Date: live capture", "selectTextHint": "Select text below to clip", "evalTipTitle": "Try it:", "evalTipBody": "Highlight any text in the article below to activate the Selection state in the extension. You can also click a paragraph to simulate it.", "clickParagraph": "Click to select this paragraph", "selectionSaved": "Selection saved ({count} words)", "clearSelection": "Clear selection", "toastTitle": "Clipped note —", "view": "View", "simulatedClipper": "Clipper simulator" }, "nav": { "home": "Home", "notes": "Notes", "notebooks": "Notebooks", "generalNotes": "General Notes", "archive": "Archive", "settings": "Settings", "profile": "Profile", "aiSettings": "AI Settings", "logout": "Logout", "login": "Login", "adminDashboard": "Admin Dashboard", "diagnostics": "Diagnostics", "trash": "Trash", "support": "Support Memento ☕", "reminders": "Reminders", "graphView": "Link map", "insights": "Connections", "revision": "Review", "dailyNotes": "Daily Notes", "dashboard": "Dashboard", "userManagement": "User Management", "accountSettings": "Account Settings", "manageAISettings": "Manage AI Settings", "configureAI": "Configure your AI-powered features, provider, and preferences", "supportDevelopment": "Support Memento Development ☕", "supportDescription": "Memento is 100% free and open-source. Your support helps keep it that way.", "buyMeACoffee": "Buy me a coffee", "donationDescription": "Make a one-time donation or become a monthly supporter.", "donateOnKofi": "Donate on Ko-fi", "donationNote": "No platform fees • Instant payouts • Secure", "sponsorOnGithub": "Sponsor on GitHub", "sponsorDescription": "Become a monthly sponsor and get recognition.", "workspace": "Workspace", "quickAccess": "Quick Access", "myLibrary": "My Library", "favorites": "Favorites", "recent": "Recent", "proPlan": "Pro Plan", "chat": "AI Chat", "lab": "The Workshop", "agents": "Agents", "sharedWithMe": "Shared with me" }, "settings": { "title": "Settings", "description": "Manage your settings and preferences", "account": "Account", "appearance": "Appearance", "theme": "Theme", "themeLight": "Light", "themeDark": "Dark", "themeSystem": "System", "themeBaseGroup": "Base", "themePalettesGroup": "Color palettes", "themeSepia": "Sepia", "themeMidnight": "Midnight", "themeRose": "Rose", "themeGreen": "Green", "themeLavender": "Lavender", "themeSand": "Sand", "themeOcean": "Ocean", "themeSunset": "Sunset", "themeBlue": "Blue", "notifications": "Notifications", "language": "Language", "selectLanguage": "Select language", "security": "Security", "about": "About", "version": "Version", "settingsSaved": "Settings saved", "cardSizeMode": "Note Size", "cardSizeModeDescription": "Choose between variable sizes or uniform size", "selectCardSizeMode": "Select display mode", "cardSizeVariable": "Variable sizes (small/medium/large)", "cardSizeUniform": "Uniform size", "settingsError": "Error saving settings", "maintenance": "Maintenance", "maintenanceDescription": "Tools to maintain your database health", "cleanTags": "Clean Orphan Tags", "cleanTagsDescription": "Remove tags that are no longer used by any notes", "cleanupDone": "Synced {created} label record(s), removed {deleted} orphan(s)", "cleanupNothing": "Nothing to do — labels already match your notes", "cleanupWithErrors": "some operations failed", "cleanupError": "Could not clean up labels", "indexingComplete": "Indexing complete: {count} note(s) processed", "indexingError": "Error during indexing", "semanticIndexing": "Semantic Indexing", "semanticIndexingDescription": "Generate vectors for all notes to enable intent-based search", "profile": "Profile", "searchNoResults": "No settings found", "languageAuto": "Language set to Auto", "emailNotifications": "Email notifications", "emailNotificationsDesc": "Receive important notifications by email", "desktopNotifications": "Desktop notifications", "desktopNotificationsDesc": "Receive notifications in your browser", "notificationsDesc": "Manage your notification preferences", "autoSave": "Auto-save", "autoSaveDesc": "Automatically save changes while typing", "autoSaveEnabled": "Auto-save enabled!", "autoSaveDisabled": "Auto-save disabled", "publishedTitle": "My Published Pages", "publishedDesc": "Manage notes you have published publicly.", "publishedEmpty": "No published notes yet.", "notesViewLabel": "Notes View", "notesViewDescription": "Choose how notes are displayed in the list.", "notesViewList": "List", "notesViewMasonry": "Masonry", "notesViewTable": "Table", "importExportHelp": "Import / Export — how does it work?", "aiConfigHelp": "How to configure your AI?", "integrationsTitle": "Integrations", "integrationsDesc": "Connect external services to Memento." }, "profile": { "title": "Profile", "description": "Update your personal information", "displayName": "Display Name", "email": "Email", "changePassword": "Change Password", "changePasswordDescription": "Update your password. You will need your current password.", "currentPassword": "Current Password", "newPassword": "New Password", "confirmPassword": "Confirm Password", "updatePassword": "Update Password", "passwordChangeSuccess": "Password changed successfully", "passwordChangeFailed": "Failed to change password", "passwordUpdated": "Password updated", "passwordError": "Error updating password", "languagePreferences": "Language Preferences", "languagePreferencesDescription": "Choose your preferred language for AI features and interface.", "preferredLanguage": "Preferred Language", "selectLanguage": "Select a language", "languageDescription": "This language will be used for AI-powered features, content analysis, and interface text.", "autoDetect": "Auto-detect", "updateSuccess": "Profile updated", "updateFailed": "Failed to update profile", "languageUpdateSuccess": "Language updated successfully", "languageUpdateFailed": "Failed to update language", "profileUpdated": "Profile updated", "profileError": "Error updating profile", "accountSettings": "Account Settings", "manageAISettings": "Manage AI Settings", "displaySettings": "Display Settings", "displaySettingsDescription": "Customize the appearance and font size.", "fontSize": "Font Size", "selectFontSize": "Select font size", "fontSizeSmall": "Small", "fontSizeMedium": "Medium", "fontSizeLarge": "Large", "fontSizeExtraLarge": "Extra Large", "fontSizeDescription": "Adjust the font size for better readability. This applies to all text in the interface.", "fontSizeUpdateSuccess": "Font size updated successfully", "fontSizeUpdateFailed": "Failed to update font size", "showRecentNotes": "Show Recent Notes Section", "showRecentNotesDescription": "Display recent notes (last 7 days) on the main page", "recentNotesUpdateSuccess": "Recent notes setting updated successfully", "recentNotesUpdateFailed": "Failed to update recent notes setting", "tab": "Profile", "preferences": "Account Preferences", "desktopNotifications": "Desktop notifications", "desktopNotificationsDesc": "Receive alerts for your reminders and AI activities." }, "aiSettings": { "title": "AI", "description": "Configure your AI-powered features and preferences", "features": "AI Features", "provider": "AI Provider", "providerAuto": "Auto (Recommended)", "providerOllama": "Ollama (Local)", "providerOpenAI": "OpenAI (Cloud)", "frequency": "Frequency", "frequencyDaily": "Daily", "frequencyWeekly": "Weekly", "saving": "Saving...", "saved": "Setting updated", "error": "Failed to update setting", "titleSuggestionsDesc": "Suggest titles for untitled notes after 50+ words", "paragraphRefactorDesc": "AI-powered text improvement options", "frequencyDesc": "How often to analyze note connections", "providerDesc": "Choose your preferred AI provider", "providerAutoDesc": "Ollama when available, OpenAI fallback", "providerOllamaDesc": "100% private, runs locally on your machine", "providerOpenAIDesc": "Most accurate, requires API key", "aiNote": "AI Note", "aiNoteDesc": "Enable AI chat button and text improvement tools", "languageDetection": "Language detection", "languageDetectionDesc": "Automatically detects the language of your notes", "autoLabeling": "Label suggestions", "autoLabelingDesc": "Automatically suggests and applies labels to your notes", "noteHistory": "Note history", "noteHistoryDesc": "Enable version snapshots and restoration from History", "titleSuggestions": "Title suggestions", "svgComplexity": "Illustration complexity", "svgComplexityDesc": "Controls the detail level and rendering richness of AI-generated note illustrations", "svgComplexitySimple": "Pictogram", "svgComplexitySimpleDesc": "Simple icon-style illustration — fast and clean", "svgComplexityIllustrated": "Illustrated", "svgComplexityIllustratedDesc": "Rich scene with gradients, layers and atmosphere", "svgComplexityRich": "Concept diagram", "svgComplexityRichDesc": "Structured knowledge map with nodes, connections and labels" }, "general": { "loading": "Loading...", "save": "Save", "cancel": "Cancel", "add": "Add", "edit": "Edit", "confirm": "Confirm", "close": "Close", "back": "Back", "next": "Next", "previous": "Previous", "submit": "Submit", "reset": "Reset", "apply": "Apply", "clear": "Clear", "select": "Select", "tryAgain": "Please try again", "error": "An error occurred", "operationSuccess": "Operation successful", "operationFailed": "Operation failed", "testConnection": "Test Connection", "clean": "Clean", "indexAll": "Index All", "preview": "Preview", "delete": "Delete", "continue": "Continue", "send": "Send" }, "colors": { "default": "Default", "red": "Red", "blue": "Blue", "green": "Green", "yellow": "Yellow", "purple": "Purple", "pink": "Pink", "orange": "Orange", "gray": "Gray" }, "reminder": { "title": "Reminder", "setReminder": "Set reminder", "removeReminder": "Remove reminder", "reminderDate": "Reminder date", "reminderTime": "Reminder time", "save": "Set reminder", "cancel": "Cancel", "changeReminder": "Change reminder" }, "reminders": { "title": "Reminders", "empty": "No reminders", "emptyDescription": "Add a reminder to a note to find it here.", "upcoming": "Upcoming", "overdue": "Overdue", "done": "Done", "markDone": "Mark as done", "markUndone": "Mark as undone", "todayAt": "Today at {time}", "tomorrowAt": "Tomorrow at {time}", "clearCompleted": "Clear completed", "viewAll": "View all reminders", "snooze1h": "Snooze 1 hour" }, "notebook": { "create": "Create Notebook", "createNew": "Create New Notebook", "createDescription": "Start a new collection to organize your notes, ideas, and projects efficiently.", "name": "Notebook Name", "namePlaceholder": "Notebook name", "myNotebook": "My Notebook", "saving": "Saving...", "selectIcon": "Icon", "selectColor": "Color", "cancel": "Cancel", "creating": "Creating...", "edit": "Edit Notebook", "editDescription": "Change the name, icon, and color of your notebook.", "delete": "Delete", "deleteWarning": "Are you sure you want to delete this notebook? Notes will be moved to General Notes.", "deleteConfirm": "Delete", "summary": "Notebook Summary", "summaryDescription": "Generate an AI-powered summary of all notes in this notebook.", "generating": "Generating summary...", "summaryError": "Error generating summary", "labels": "Labels:", "noLabels": "No labels", "pdfTitle": "Summary — {name}", "pdfNotesLabel": "Notes:", "pdfGeneratedOn": "Generated on:", "confidence": "confidence", "savingReminder": "Failed to save reminder", "removingReminder": "Failed to remove reminder", "generatingDescription": "Please wait...", "pinnedFrozenTooltip": "Pinned notebook — order frozen", "organizeNotebookWithAITooltip": "Organize this notebook with AI", "assistantRequiredForSummarize": "Turn on AI Assistant in settings to summarize", "createSubnotebook": "Add sub-notebook", "createSubNotebook": "Add sub-notebook", "rename": "Rename", "confirmRename": "Rename", "moveToTrash": "Move to trash", "noParent": "No parent", "parentNotebook": "Parent notebook", "under": "Under", "trashCascadeWarning": "This will also delete all notes and sub-notebooks.", "trashConfirm": "Move this notebook to trash?", "trashTitle": "Move to trash", "slides": "Presentation", "slidesDescription": "Generate a slide deck from all notes in this notebook. Images are automatically included.", "slidesGenerate": "Generate presentation", "slidesGenerating": "Generating presentation from notes...", "slidesGeneratingHint": "This may take 30-60 seconds (outline + per-slide writing)", "slidesReady": "Presentation generated", "slidesStatus1": "Analyzing notebook notes…", "slidesStatus2": "Building presentation outline…", "slidesStatus3": "Writing slides…", "slidesStatus4": "Finalizing layout…" }, "notebookSuggestion": { "title": "Move to {name}?", "description": "This note seems to belong to this notebook", "move": "Move", "dismiss": "Dismiss", "dismissIn": "Dismiss (closes in {timeLeft}s)", "moveToNotebook": "Move to notebook", "generalNotes": "General Notes", "movedToNotebook": "Moved to notebook", "filterNotebooks": "Filter notebooks…" }, "admin": { "title": "Admin Dashboard", "adminConsole": "Admin console", "navSection": "Navigation", "backToApp": "Back to Memento", "userManagement": "User Management", "chat": "AI Chat", "lab": "The Lab", "agents": "Agents", "workspace": "Workspace", "settings": "Admin Settings", "security": { "title": "Security Settings", "description": "Manage access control and registration policies.", "allowPublicRegistration": "Allow Public Registration", "allowPublicRegistrationDescription": "If disabled, new users can only be added by an Administrator via the User Management page.", "updateSuccess": "Security Settings updated", "updateFailed": "Failed to update security settings" }, "ai": { "title": "AI Configuration", "description": "Configure AI providers for auto-tagging and semantic search. Use different providers for optimal performance.", "tagsGenerationProvider": "Tags Generation Provider", "tagsGenerationDescription": "AI provider for automatic tag suggestions. Recommended: Ollama (free, local).", "embeddingsProvider": "Embeddings Provider", "embeddingsDescription": "AI provider for semantic search embeddings. Recommended: OpenAI (best quality).", "chatProvider": "Chat Provider", "chatDescription": "AI provider for the chat assistant. Falls back to Tags provider if not configured.", "slidesTab": "Slides", "slidesProvider": "Slides model", "slidesDescription": "Dedicated provider and model for presentation generation. If the model is empty, the Chat model is used. Model IDs are never renamed automatically. The multi-step pipeline uses several credits from the global AI balance (1 outline + 1 credit per slide).", "slidesQuotaNote": "Credit cost: 1 + slide count (e.g. 7 slides ≈ 8 credits), taken from the single balance (BASIC 100 · PRO 1,000 · BUSINESS 4,000 / month). Admin → Users to reset a user's balance.", "provider": "Provider", "baseUrl": "Base URL", "model": "Model", "apiKey": "API Key", "selectOllamaModel": "Select an Ollama model installed on your system", "openAIKeyDescription": "Your OpenAI API key from platform.openai.com", "modelRecommendations": "gpt-4o-mini = Best value • gpt-4o = Best quality", "commonModelsDescription": "Common models for OpenAI-compatible APIs", "selectEmbeddingModel": "Select an embedding model installed on your system", "commonEmbeddingModels": "Common embedding models for OpenAI-compatible APIs", "saving": "Saving...", "saveSettings": "Save AI Settings", "openTestPanel": "Open AI Test Panel", "updateSuccess": "AI Settings updated successfully", "updateFailed": "Failed to update AI settings", "providerTagsRequired": "AI_PROVIDER_TAGS is required", "providerEmbeddingRequired": "AI_PROVIDER_EMBEDDING is required", "providerOllamaOption": "🦙 Ollama (Local & Free)", "providerOpenAIOption": "🤖 OpenAI (GPT-5, GPT-4)", "providerAnthropicOption": "🧠 Anthropic (Claude API)", "providerAnthropicCustomOption": "🧩 Anthropic custom (Messages API — MiniMax, etc.)", "anthropicModelHint": "Pick a Claude model ID from the suggestions or enter one manually (no remote model list for the official API).", "anthropicCustomModelHint": "Anthropic-compatible Messages API (e.g. MiniMax): base URL https://api.minimax.io/anthropic (China: https://api.minimaxi.com/anthropic), model MiniMax-M2.7. Embeddings: use provider « Custom » + OpenAI URL https://api.minimax.io/v1.", "anthropicCustomNoModelList": "This gateway does not expose an OpenAI-style /models list — pick the model from the suggestions or type it (e.g. MiniMax-M2.7).", "providerCustomOption": "🔧 Custom OpenAI-Compatible", "providerDeepSeekOption": "🔍 DeepSeek", "providerOpenRouterOption": "🌐 OpenRouter", "providerMistralOption": "🌀 Mistral AI", "providerZAIOption": "✨ Z.AI", "providerLMStudioOption": "🖥️ LM Studio (Local)", "bestValue": "Best value", "bestQuality": "Best quality", "fallbackSectionTitle": "Fallback provider (optional)", "fallbackSectionDescription": "Used automatically on provider errors (429, 5xx). One retry within 1.5s.", "fallbackProvider": "Fallback provider", "fallbackModel": "Fallback model", "fallbackNone": "None (disabled)", "fallbackModelPlaceholder": "e.g. gpt-4o-mini", "saved": "(Saved)", "fetchModelsFailed": "Failed to fetch models", "refreshModels": "Refresh Models", "configured": "Configured", "fetchingModels": "Fetching models...", "clickToLoadModels": "Click ↺ to load models", "searchModel": "Search model...", "noModels": "No models. Click ↺", "modelsAvailable": "{count} model(s) available", "enterUrlToLoad": "Enter URL and click ↺ to load models", "currentProvider": "(Current: {provider})", "pageTitle": "AI Management", "pageDescription": "Monitor and configure AI features", "configure": "Configure", "features": "AI Features", "providerStatus": "AI Provider Status", "recentRequests": "Recent AI Requests", "comingSoon": "Coming soon", "activeFeatures": "Active features", "successRate": "Success rate", "avgResponseTime": "Avg response time", "configuredProviders": "Configured providers", "settingUpdated": "Setting updated", "updateFailedShort": "Update failed", "titleSuggestions": "Title suggestions", "titleSuggestionsDesc": "Suggests titles for notes after 50+ words", "aiAssistant": "AI Assistant", "aiAssistantDesc": "Enable AI chat and text improvement tools", "memoryEchoFeature": "I noticed something...", "memoryEchoFeatureDesc": "Daily analysis of connections between your notes", "languageDetection": "Language detection", "languageDetectionDesc": "Automatically detects the language of each note", "autoLabeling": "Auto labeling", "autoLabelingDesc": "Suggests and applies labels automatically", "dimensionMismatch": "Embedding dimension mismatch detected", "dimensionMismatchDetail": "Database column: vector({{dbDimension}}) — Model outputs: {{modelDimension}} dimensions", "dimensionMismatchAction": "Embeddings will not work until you migrate the column. This will clear all existing embeddings and re-index them.", "migrateButton": "Migrate & Re-index", "migrating": "Migrating..." }, "resend": { "title": "Resend (Recommended)", "description": "Send emails via Resend API. Takes priority over SMTP if configured.", "apiKey": "Resend API Key", "apiKeyHint": "Get your API key from resend.com. Used for agent notifications and password resets.", "saveSettings": "Save Resend Settings", "updateSuccess": "Resend settings updated", "updateFailed": "Failed to update Resend settings", "configured": "Resend is configured and active" }, "email": { "title": "Email Configuration", "description": "Configure email delivery for agent notifications and password resets.", "provider": "Email Provider", "saveSettings": "Save Email Settings", "status": "Service Status", "keySet": "key configured", "activeAuto": "Auto mode: Resend will be used first, SMTP as fallback.", "activeSmtp": "Auto mode: SMTP will be used (Resend not configured).", "noneConfigured": "No email service configured. Set up Resend or SMTP.", "activeProvider": "Active provider", "testOk": "test passed", "testFail": "test failed" }, "smtp": { "title": "SMTP Configuration", "description": "Configure email server for password resets. Fallback if Resend is not configured.", "host": "Host", "port": "Port", "username": "Username", "password": "Password", "fromEmail": "From Email", "forceSSL": "Force SSL/TLS (usually for port 465)", "ignoreCertErrors": "Ignore Certificate Errors (Self-hosted/Dev only)", "saveSettings": "Save SMTP Settings", "sending": "Sending...", "testEmail": "Test Email", "updateSuccess": "SMTP Settings updated", "updateFailed": "Failed to update SMTP settings", "testSuccess": "Test email sent successfully!", "testFailed": "Failed: {error}" }, "users": { "createUser": "Create User", "addUser": "Add User", "createUserDescription": "Add a new user to the system.", "name": "Name", "email": "Email", "password": "Password", "role": "Role", "createSuccess": "User created successfully", "createFailed": "Failed to create user", "deleteSuccess": "User deleted", "deleteFailed": "Failed to delete", "roleUpdateSuccess": "User role updated to {role}", "roleUpdateFailed": "Failed to update role", "tierUpdateSuccess": "Subscription updated to {tier}", "tierUpdateFailed": "Failed to update subscription", "resetQuotas": "Reset AI credits (current month)", "confirmResetQuotas": "Reset the AI credit balance to the plan allocation for {user} (BASIC 100 · PRO 1,000 · BUSINESS 4,000)? All AI features become available again within that balance.", "resetQuotasSuccess": "AI credits reset for period {period} ({count} counters).", "resetQuotasFailed": "Failed to reset credits", "demote": "Demote to User", "promote": "Promote to Admin", "confirmDelete": "Are you sure? This action cannot be undone.", "table": { "name": "Name", "email": "Email", "role": "Role", "subscription": "Subscription", "createdAt": "Created At", "actions": "Actions" }, "roles": { "user": "User", "admin": "Admin" }, "title": "Users", "description": "Manage application users and permissions" }, "aiTest": { "title": "AI Provider Testing", "description": "Test your AI providers for tag generation and semantic search embeddings", "tagsTestTitle": "Tags Generation Test", "tagsTestDescription": "Test the AI provider responsible for automatic tag suggestions", "embeddingsTestTitle": "Embeddings Test", "embeddingsTestDescription": "Test the AI provider responsible for semantic search embeddings", "howItWorksTitle": "How Testing Works", "tagsGenerationTest": "🏷️ Tags Generation Test:", "tagsStep1": "Sends a sample note to the AI provider", "tagsStep2": "Requests 3-5 relevant tags based on the content", "tagsStep3": "Displays the generated tags with confidence scores", "tagsStep4": "Measures response time", "embeddingsTestLabel": "🔍 Embeddings Test:", "embeddingsStep1": "Sends a sample text to the embedding provider", "embeddingsStep2": "Generates a vector representation (list of numbers)", "embeddingsStep3": "Displays embedding dimensions and sample values", "embeddingsStep4": "Verifies the vector is valid and properly formatted", "tipContent": "You can use different providers for tags and embeddings! For example, use Ollama (free) for tags and OpenAI (best quality) for embeddings to optimize costs and performance.", "provider": "Provider:", "model": "Model:", "testing": "Testing...", "runTest": "Run Test", "testPassed": "Test Passed", "testFailed": "Test Failed", "testSuccessToast": "{type} Test Successful!", "testFailedToast": "{type} Test Failed", "testingType": "Testing {type}...", "technicalDetails": "Technical details", "responseTime": "Response time: {time}ms", "generatedTags": "Generated Tags:", "embeddingDimensions": "Embedding Dimensions:", "vectorDimensions": "vector dimensions", "first5Values": "First 5 values:", "error": "Error:", "testError": "Test Error: {error}", "tipTitle": "Tip:", "tipDescription": "Use the AI Test Panel to diagnose configuration issues before testing.", "chatTestTitle": "Chat assistant test", "chatTestDescription": "Test the AI provider used by the chat assistant", "chatGenerationTest": "💬 Chat assistant test:", "chatStep1": "Sends a test message to the assistant", "chatStep2": "Asks for a concise answer about what the assistant does", "chatStep3": "Shows the model response", "chatStep4": "Checks responsiveness and latency" }, "sidebar": { "dashboard": "Dashboard", "users": "Users", "aiManagement": "AI Management", "billing": "Billing & Quotas", "published": "Published pages", "chat": "AI Chat", "lab": "The Lab (Ideas)", "agents": "Agents", "settings": "Settings" }, "metrics": { "vsLastPeriod": "vs last period" }, "tools": { "title": "Agent Tools", "description": "Configure external tools for agent tool-use: web search, web scraping, and API access.", "searchProvider": "Web Search Provider", "searxng": "SearXNG (Self-hosted)", "brave": "Brave Search API", "both": "Both (SearXNG primary, Brave fallback)", "searxngUrl": "SearXNG URL", "braveKey": "Brave Search API Key", "jinaKey": "Jina Reader API Key", "jinaKeyOptional": "Optional — works without but with rate limits", "jinaKeyDescription": "Used for web scraping. Works without a key but with rate limits.", "saveSettings": "Save Tools Settings", "updateSuccess": "Tools settings updated successfully", "updateFailed": "Failed to update tools settings", "testing": "Testing...", "testSearch": "Test web search" }, "settingsDescription": "Configure application-wide settings", "billing": { "title": "Billing & AI credits", "description": "Stripe settings, monthly credit allocations by tier, and advanced tools. User spend follows the single credit balance.", "stripeConfigTitle": "Stripe business config", "stripeConfigDescription": "Price IDs and billing toggle. Secret keys stay in server environment only.", "enableBilling": "Enable billing UI and checkout", "subscriptionPricesTitle": "Subscriptions (price IDs)", "STRIPE_PRICE_PRO_MONTHLY": "Pro — monthly price ID", "STRIPE_PRICE_PRO_ANNUAL": "Pro — annual price ID", "STRIPE_PRICE_BUSINESS_MONTHLY": "Business — monthly price ID", "STRIPE_PRICE_BUSINESS_ANNUAL": "Business — annual price ID", "packPricesTitle": "Credit packs (one-shot price IDs)", "packPricesDescription": "Stripe one-time payment products (payment mode). Purchased credits add to the balance and roll over across months.", "STRIPE_PRICE_CREDITS_S": "Pack S — 100 credits (price ID)", "STRIPE_PRICE_CREDITS_M": "Pack M — 500 credits (price ID)", "STRIPE_PRICE_CREDITS_L": "Pack L — 2,000 credits (price ID)", "packsCatalogTitle": "Pack catalogue (code)", "secretsNote": "STRIPE_SECRET_KEY and STRIPE_WEBHOOK_SECRET must remain in Docker/env secrets — never stored here.", "saveConfig": "Save billing config", "configSaved": "Billing configuration saved", "configFailed": "Failed to save billing configuration", "creditsTitle": "AI credits by tier (option M)", "creditsDescription": "Source of truth for billing usage: one balance for all AI actions. Values live in code (lib/credits.ts).", "creditsPerMonth": "credits / month", "creditsCostsNote": "Typical costs: search, chat, tags = 1 credit; diagram = 4; AI publish = 3; presentation = 1 + slide count (e.g. 7 slides ≈ 8 credits).", "creditsResetHint": "To refill a user: Admin → Users → reset AI credits button.", "modeUnlimited": "Unlimited", "usageTitle": "Usage overview", "usagePeriod": "Period {period}", "lastSync": "Last sync {date}", "notSynced": "Not synced yet (cron /api/cron/sync-usage)", "byFeature": "By feature (PostgreSQL)", "topUsers": "Top users", "noUsageData": "No usage data for this period yet", "healthTitle": "Stripe health check", "healthDescription": "Runtime status of keys, webhooks, price IDs and billing flag (secrets are never shown).", "healthSecret": "Secret key (server)", "healthPublishable": "Publishable key", "healthWebhook": "Webhook secret", "healthBillingFlag": "Billing enabled", "healthTrial": "Free trial", "trialDaysValue": "{days} days on first checkout", "modeTest": "Test mode (sk_test_…)", "modeLive": "Live mode (sk_live_…)", "modePlaceholder": "Placeholder / invalid key", "modeMissing": "Not configured", "configured": "Configured", "missing": "Missing", "enabled": "Enabled", "disabled": "Disabled", "priceStatusTitle": "Price IDs vs Stripe", "colKey": "Plan", "colPriceId": "Price ID", "colSource": "Source", "colStripe": "Stripe amount", "priceError": "Lookup failed", "inactive": "inactive", "notChecked": "Not checked (no Stripe key)", "subsTitle": "Subscriptions overview", "subsDescription": "Counts from the local database (synced via Stripe webhooks).", "statPaid": "Active + trial", "statTrialing": "On trial", "statPastDue": "Past due", "statCanceling": "Cancel at period end", "byTier": "By tier", "byStatus": "By status", "usersWithoutSub": "Users with no Subscription row", "noSubs": "No subscriptions yet", "recentSubs": "Recent paid / trial accounts", "colUser": "User", "colTier": "Tier", "colStatus": "Status", "colPeriod": "Period / trial end", "canceling": "canceling", "manualTier": "manual (no Stripe sub)", "trialUntil": "Trial until {date}", "testGuideTitle": "How to test Stripe locally", "testGuideDescription": "Checklist to validate checkout, webhooks and trial.", "testStep1": "Stripe Dashboard → Test mode ON. Create Pro/Business products + monthly/annual prices + credit packs.", "testStep2": "Put sk_test_…, pk_test_… in .env. Put price_… IDs in Admin → Billing (or env) and enable billing.", "testStep3": "Copy the whsec_… into STRIPE_WEBHOOK_SECRET and restart the app.", "testStep4": "npm run dev → open /settings/billing as a BASIC user.", "testStep5": "Start Pro checkout. Card: 4242 4242 4242 4242, any future expiry, any CVC. Expect a 7-day trial.", "testStep6": "Confirm Admin → Billing shows TRIALING, and /settings/billing shows the trial end date.", "testCardHint": "Other cards: 4000000000009995 = payment fails · 4000002500003155 = 3D Secure. Never use real cards in test mode." }, "dashboard": { "title": "Dashboard", "description": "Overview of your application metrics", "recentActivity": "Recent Activity", "recentActivityPlaceholder": "Recent activity will be displayed here." }, "error": { "title": "An error occurred in the admin panel", "description": "This page failed to render. You can retry without reloading.", "retry": "Retry" } }, "about": { "title": "About", "description": "Information about the application", "appName": "Memento", "appDescription": "A powerful note-taking application with AI-powered features", "version": "Version", "buildDate": "Build Date", "platform": "Platform", "platformWeb": "Web", "features": { "title": "Features", "description": "AI-powered capabilities", "titleSuggestions": "AI-powered title suggestions", "semanticSearch": "Semantic search with embeddings", "paragraphReformulation": "Paragraph reformulation", "memoryEcho": "Memory Echo daily insights", "notebookOrganization": "Notebook organization", "dragDrop": "Drag & drop note management", "labelSystem": "Label system", "multipleProviders": "Multiple AI providers (OpenAI, Ollama)" }, "technology": { "title": "Technology Stack", "description": "Built with modern technologies", "frontend": "Frontend", "backend": "Backend", "database": "Database", "authentication": "Authentication", "ai": "AI", "ui": "UI", "testing": "Testing" }, "support": { "title": "Support", "description": "Get help and feedback", "documentation": "Documentation", "reportIssues": "Report Issues", "feedback": "Feedback" }, "tab": "About" }, "support": { "title": "Support Memento Development", "description": "Memento is 100% free and open-source. Your support helps keep it that way.", "buyMeACoffee": "Buy me a coffee", "donationDescription": "Make a one-time donation or become a monthly supporter.", "donateOnKofi": "Donate on Ko-fi", "kofiDescription": "No platform fees • Instant payouts • Secure", "sponsorOnGithub": "Sponsor on GitHub", "sponsorDescription": "Become a monthly sponsor and get recognition.", "githubDescription": "Recurring support • Public recognition • Developer-focused", "howSupportHelps": "How Your Support Helps", "directImpact": "Direct Impact", "sponsorPerks": "Sponsor Perks", "transparency": "Transparency", "transparencyDescription": "I believe in complete transparency. Here's how donations are used:", "hostingServers": "Hosting & servers:", "domainSSL": "Domain & SSL:", "aiApiCosts": "AI API costs:", "totalExpenses": "Total expenses:", "otherWaysTitle": "Other Ways to Support", "starGithub": "Star on GitHub", "reportBug": "Report a bug", "contributeCode": "Contribute code", "shareTwitter": "Share on Twitter" }, "demoMode": { "title": "Demo Mode", "activated": "Demo Mode activated! Memory Echo will now work instantly.", "deactivated": "Demo Mode disabled. Normal parameters restored.", "toggleFailed": "Failed to toggle demo mode", "description": "Speeds up Memory Echo for testing. Connections appear instantly.", "parametersActive": "Demo parameters active:", "similarityThreshold": "50% similarity threshold (normally 75%)", "delayBetweenNotes": "0-day delay between notes (normally 7 days)", "unlimitedInsights": "Unlimited insights (no frequency limits)", "createNotesTip": "Create 2+ similar notes and see Memory Echo in action!" }, "resetPassword": { "title": "Reset Password", "description": "Enter your new password below.", "invalidLinkTitle": "Invalid Link", "invalidLinkDescription": "This password reset link is invalid or has expired.", "requestNewLink": "Request new link", "newPassword": "New Password", "confirmNewPassword": "Confirm New Password", "resetting": "Resetting...", "resetPassword": "Reset Password", "passwordMismatch": "Passwords don't match", "success": "Password reset successfully. You can now login.", "loading": "Loading..." }, "dataManagement": { "title": "Data", "toolsDescription": "Tools to maintain your database health", "exporting": "Exporting...", "importing": "Importing...", "deleting": "Deleting...", "dangerZone": "Danger Zone", "dangerZoneDescription": "Permanently delete your data", "indexingComplete": "Indexing complete: {count} notes processed", "indexingError": "Error during indexing", "cleanupComplete": "Cleanup complete: {created} created, {deleted} removed", "cleanupError": "Error during cleanup", "export": { "title": "Export All Notes", "description": "Download all your notes as a JSON file. This includes all content, labels, and metadata.", "button": "Export Notes", "success": "Notes exported successfully", "failed": "Failed to export notes" }, "import": { "title": "Import Notes", "description": "Upload a JSON file to import notes. This will add to your existing notes, not replace them.", "button": "Import Notes", "success": "Imported {count} notes", "failed": "Failed to import notes" }, "delete": { "title": "Delete All Notes", "description": "Permanently delete all your notes. This action cannot be undone.", "button": "Delete All Notes", "confirm": "Are you sure? This will permanently delete all your notes.", "success": "All notes deleted", "failed": "Failed to delete notes" }, "indexing": { "title": "Rebuild Search Index", "description": "Rebuild the index of all notes to improve search by meaning.", "button": "Rebuild Index", "success": "Indexing complete: {count} notes processed", "failed": "Error during indexing" }, "cleanup": { "title": "Cleanup Orphaned Data", "description": "Remove labels and connections that reference deleted notes.", "button": "Cleanup", "failed": "Error during cleanup", "success": "Cleanup successful" }, "zipExport": { "title": "GDPR Workspace Export (ZIP)", "description": "Download all notes, attachments, and brainstorm canvases as standard Markdown in a ZIP archive.", "button": "Export ZIP", "success": "Workspace exported successfully", "failed": "Export failed" }, "zipExporting": "Exporting..." }, "appearance": { "title": "Appearance", "description": "Customize the interface", "notesViewDescription": "Choose how notes are shown on home and in notebooks.", "notesViewLabel": "Notes layout", "notesViewTabs": "Tabs (OneNote-style)", "notesViewMasonry": "Cards (grid)", "notesViewList": "List (magazine)", "notesViewTable": "Structured table", "selectTheme": "Choose your preferred theme", "fontFamilyLabel": "Font", "fontFamilyDescription": "Choose the application's font", "selectFontFamily": "Inter is optimized for readability, System uses your OS native font", "fontSystem": "System", "fontInterDefault": "Inter (default)", "fontPlayfairDisplay": "Playfair Display", "fontJetBrainsMono": "JetBrains Mono", "tab": "Appearance", "accentColorTitle": "Accent Color", "accentColorDescription": "Set the main color of your workspace" }, "usageMeter": { "packName": "Basic plan", "packPro": "Pro plan", "packBusiness": "Business Pack", "packEnterprise": "Enterprise Pack", "featureSearch": "Search", "featureTags": "Tags", "featureTitles": "Titles", "unlimited": "Unlimited", "remaining": "{count} credits left", "upgradeTitle": "Upgrade to Pro", "upgradeDescription": "Your AI credit balance is empty. Upgrade for more monthly credits, or use your own key.", "proIncludes": "Pro includes:", "proSearch": "1,000 AI credits / month", "proTags": "Your own provider keys", "proTitles": "Agents (use credits)", "proReformulate": "Unlimited notes", "proChat": "Email support", "later": "Later", "upgradePricing": "Upgrade to Pro", "addApiKey": "Use your own key", "featureReformulate": "Reformulations", "featureChat": "AI Messages", "featureBrainstormCreate": "Brainstorm creations", "featureBrainstormSessions": "Brainstorm sessions", "featureCharts": "AI Charts", "featureInteractiveDemo": "Interactive demos", "featureInteractivePage": "Interactive pages", "featurePublishEnhance": "AI Publishing", "featureBrainstormExpand": "Brainstorm expansions", "featureBrainstormEnrich": "Brainstorm enrichments", "featureFlashcards": "Review cards", "featureVoice": "Voice transcription", "featureSlides": "Presentations", "featureDiagrams": "Diagrams", "creditsRemaining": "Credits remaining", "creditsWhereTitle": "Credit usage by feature", "creditsSummary": "{remaining} left · {spent} used of {granted} from plan", "creditsUsedLine": "{credits} cr. · {actions}×", "actionsOnly": "{actions} actions", "noCreditUsage": "No credit usage this month", "outOfCredits": "Out of credits — options" }, "generalSettings": { "title": "General", "description": "General application settings" }, "toast": { "saved": "Setting saved", "saveFailed": "Failed to save setting", "operationSuccess": "Operation successful", "operationFailed": "Operation failed", "openingConnection": "Opening connection...", "openConnectionFailed": "Failed to open connection", "thanksFeedback": "Thanks for your feedback!", "thanksFeedbackImproving": "Thanks! We'll use this to improve.", "feedbackFailed": "Failed to submit feedback", "notesFusionSuccess": "Notes merged successfully!" }, "testPages": { "titleSuggestions": { "title": "Test Title Suggestions", "contentLabel": "Content (need 50+ words):", "placeholder": "Type at least 50 words here...", "wordCount": "Word count:", "status": "Status:", "analyzing": "Analyzing...", "idle": "Idle", "error": "Error:", "suggestions": "Suggestions ({count}):", "noSuggestions": "No suggestions yet. Type 50+ words and wait 2 seconds." } }, "trash": { "title": "Trash", "empty": "Trash is empty", "emptyDescription": "Deleted items will appear here. They are kept for 30 days before permanent deletion.", "restore": "Restore", "deletePermanently": "Delete Permanently", "noteTrashed": "Note moved to trash", "noteRestored": "Note restored", "notePermanentlyDeleted": "Note permanently deleted", "emptyTrash": "Empty Trash", "emptyTrashConfirm": "Empty trash? This is irreversible.", "emptyTrashSuccess": "Trash emptied", "permanentDelete": "Delete permanently", "permanentDeleteConfirm": "This note will be permanently deleted. This action cannot be undone.", "restoreSuccess": "Restored successfully", "restoreError": "Failed to restore", "permanentDeleteSuccess": "Permanently deleted", "deleteError": "Failed to delete", "daysRemaining": "DAYS LEFT", "notebookContentPreserved": "Notebook content preserved", "notebookRestoreHint": "Restoring a notebook also restores all its notes.", "filterAll": "All", "autoDelete30": "Auto-delete after 30 days" }, "footer": { "privacy": "Privacy", "terms": "Terms", "openSource": "Open Source Clone" }, "connection": { "similarityInfo": "These notes are connected by {similarity}% similarity", "clickToView": "Click to view note", "isHelpful": "Is this connection helpful?", "helpful": "Helpful", "notHelpful": "Not Helpful", "memoryEchoDiscovery": "Memory Echo Discovery" }, "diagnostics": { "title": "Diagnostics", "description": "Check your AI provider connection status", "configuredProvider": "Configured Provider", "apiStatus": "API Status", "operational": "Operational", "errorStatus": "Error", "checking": "Checking...", "testDetails": "Test Details:", "troubleshootingTitle": "Troubleshooting Tips:", "tip1": "Make sure Ollama is running (ollama serve)", "tip2": "Check that the model is installed (ollama pull llama3)", "tip3": "Verify your API key for OpenAI", "tip4": "Check network connectivity" }, "batch": { "organizeWithAI": "Organize with AI", "organize": "Organize" }, "organizeNotebook": { "title": "Organize notebook", "unknownError": "Unknown error", "toastSuccess": "Notebook organized — {created} sub-notebook(s) created, {moved} note(s) moved", "intro": "AI will analyze the notes in this notebook and propose a plan to reorganize them into thematic sub-notebooks.", "bulletThemes": "Group notes by topic or theme", "bulletSubfolders": "Create missing sub-notebooks", "bulletPreview": "Full preview before any change", "analyzingTitle": "Analyzing…", "analyzingSubtitle": "AI is reading your notes and identifying themes", "previewSummary": "{groups} group(s) · {notes} notes · {newSubs} new sub-notebook(s)", "badgeNew": "New", "untitledNote": "Untitled note", "notesInGroup": "{count} notes", "executingTitle": "Organizing…", "executingSubtitle": "Creating sub-notebooks and moving notes", "doneTitle": "Notebook organized!", "doneStats": "{created} sub-notebook(s) created · {moved} note(s) moved", "analyzeButton": "Analyze with AI", "restart": "Start over", "confirm": "Apply", "closeButton": "Close" }, "documentInfo": { "tabInfo": "Info", "tabVersions": "Versions", "tabNetwork": "Network", "wordsLabel": "Words", "charactersLabel": "Characters", "linesLabel": "Lines", "equationsLabel": "Equations", "imagesLabel": "Images", "notebookLabel": "Notebook", "typeLabel": "Type", "sourceWebLabel": "Web source", "openSource": "Open original page", "createdLabel": "Created", "modifiedLabel": "Updated", "labelsSection": "Labels", "idLabel": "ID", "copyId": "Copy note ID", "historyDisabled": "History is not enabled for this note.", "enableHistory": "Enable history", "savedVersions": "Saved versions", "savingEllipsis": "Saving…", "versionSaved": "Version saved!", "saveThisVersion": "Save this version", "loading": "Loading…", "noVersion": "No versions yet", "restoreTooltip": "Restore", "deleteTooltip": "Delete", "comparisonMode": "Comparison mode", "comparisonSubtitle": "Compare versions side by side", "deleteVersionConfirm": "Delete this version?", "latestBadge": "Latest", "network": { "graphTitle": "Links around this note", "intro": "See what connects this note to others: similar notes (AI), links you created yourself, or citations elsewhere.", "helpToggle": "Understand this panel", "helpTitle": "How to read this panel", "helpGraph": "Center: the open note. Around it: linked notes. Violet dots closer to the center are more similar in content. Drag to rearrange, click to open.", "helpSemantic": "Similar notes: the AI only keeps matches above a threshold. The percentage and distance are scaled from that threshold (0%) to a strongest match (100%).", "helpWiki": "Links you create: type [[ in a note, pick another note, or write [[Exact title]] then save.", "helpEmbed": "Citations: other notes quote a passage from this one as a synced citation.", "empty": "No links yet. Write [[Note title]] in the text to link notes, or let the AI find similar ones.", "consentHint": "Enable AI consent in settings to show similar notes detected by the AI.", "dragHint": "Hover for details. Drag to reposition. Click to open the note.", "clickToOpen": "Open in a new tab", "legendCenter": "This note", "legendSemantic": "Similar (AI)", "legendWiki": "Link to a note", "semanticShort": "Similar", "inboundShort": "Inbound", "outboundShort": "Outbound", "embedShort": "Citation", "mentionShort": "Mention", "affinityLine": "Similarity: {percentage}%", "semanticListTitle": "Similar notes", "semanticListHelp": "These notes cover related topics. The percentage is relative proximity (0% = minimum detection threshold, 100% = very strong match).", "showMoreSemantic": "Show {count} more similar note(s)", "showLess": "Show less", "embedListTitle": "Notes citing this content", "embedSnippetOne": "Quotes a passage from this note", "wikiSectionTitle": "Links to other notes", "inboundHelp": "Notes that link to this one using [[…]] in their text.", "outboundHelp": "Notes this one links to using [[…]] in its text.", "unlinkedListTitle": "Unlinked mentions", "unlinkedHelp": "[[Bracketed]] text found here, but with no matching note or saved link.", "noWikiYet": "No links to other notes yet.", "unknownNotebook": "Notebook", "untitled": "Untitled", "unlinkedLabel": "Unlinked", "moreNodes": "+{count} on map", "inboundList": "To this note ({count})", "outboundList": "From this note ({count})", "unlinkedList": "Unlinked mentions ({count})", "noInbound": "No inbound wiki links point to this note.", "noOutbound": "This note does not link to other notes yet.", "refBadge": "In", "toBadge": "Out" } }, "languages": { "targets": { "french": "French", "english": "English", "spanish": "Spanish", "german": "German", "persian": "Persian", "portuguese": "Portuguese", "italian": "Italian", "chinese": "Chinese", "japanese": "Japanese" }, "customPlaceholder": "e.g. Arabic, Russian…", "autoDetect": "Auto-detect", "en": "English", "fr": "Français", "es": "Español", "de": "Deutsch", "fa": "فارسی", "it": "Italiano", "pt": "Português", "ru": "Русский", "zh": "中文", "ja": "日本語", "ko": "한국어", "ar": "العربية", "hi": "हिन्दी", "nl": "Nederlands", "pl": "Polski" }, "common": { "on": "On", "off": "Off", "unknown": "Unknown", "notAvailable": "N/A", "loading": "Loading…", "error": "Error", "success": "Success", "confirm": "Confirm", "cancel": "Cancel", "close": "Close", "save": "Save", "delete": "Delete", "edit": "Edit", "add": "Add", "remove": "Remove", "search": "Search...", "noResults": "No notes found", "required": "Required", "optional": "Optional", "notes": "notes", "openMenu": "Open menu", "openNav": "Open navigation", "linkCopied": "Link copied!", "copyLink": "Copy link", "untitled": "Untitled", "selectPlaceholder": "Select…" }, "time": { "justNow": "just now", "minutesAgo": "{count}m ago", "hoursAgo": "{count}h ago", "daysAgo": "{count}d ago", "yesterday": "Yesterday", "today": "Today", "tomorrow": "Tomorrow" }, "favorites": { "title": "Favorites", "toggleSection": "Toggle pinned notes section", "noFavorites": "No pinned notes yet", "pinToFavorite": "Pin a note to add it to favorites" }, "notebooks": { "create": "Create notebook", "allNotebooks": "All Notebooks", "noNotebooks": "No notebooks yet", "createFirst": "Create your first notebook" }, "ui": { "close": "Close", "open": "Open", "expand": "Expand", "collapse": "Collapse" }, "mcpSettings": { "title": "External tools", "description": "Connect Cursor, Claude, and other tools to your notes", "tierRequired": "Pro plan or higher", "upgradeHint": "Connecting a tool like Cursor to your notes requires a Pro plan or higher. Upgrade in Billing.", "whatIsMcp": { "title": "What this is for", "description": "You can open, search, and organize your notes from another tool — Cursor, Claude, n8n — without sharing your password. An access key links the tool to your account.", "learnMore": "Learn more" }, "serverStatus": { "title": "Server Status", "running": "Running", "stopped": "Stopped", "mode": "Mode", "url": "URL" }, "apiKeys": { "title": "Access keys", "description": "A key lets an external tool read and write your notes. Do not share it.", "generate": "New key", "empty": "No keys yet. Create one to get started.", "active": "Active", "revoked": "Revoked", "revoke": "Revoke", "delete": "Delete", "createdAt": "Created", "lastUsed": "Last used", "never": "Never", "confirmRevoke": "Are you sure you want to revoke this key? Tools using it will lose access.", "confirmDelete": "Are you sure you want to permanently delete this key?", "errors": { "generate": "Failed to generate key", "revoke": "Failed to revoke key", "delete": "Failed to delete key" } }, "createDialog": { "title": "New access key", "description": "Give it a name so you remember which tool it belongs to.", "nameLabel": "Key name", "namePlaceholder": "e.g. Cursor, Claude, n8n", "generating": "Creating…", "generate": "Create", "successTitle": "Key created", "successDescription": "Copy it now. You will not be able to see it again.", "copy": "Copy", "copied": "Copied!", "done": "Done" }, "configInstructions": { "title": "How to connect a tool", "description": "Paste your key into the tool, with the address shown beside it.", "claudeCode": { "title": "Claude Code", "description": "Paste this into your Claude Code configuration file:" }, "cursor": { "title": "Cursor", "description": "Paste this into Cursor’s tools settings:" }, "n8n": { "title": "n8n", "description": "Use these details in the n8n connection node:" } }, "helpBox": { "title": "How do I connect a tool?", "step1": "A tool like Cursor or Claude can open, search, and organize your notes, as if you were doing it here.", "step2": "You create an access key on this page. It works as a password for that tool only.", "step3": "In the tool, enter the server address (shown here) and paste the key.", "step4": "The tool then sends your requests here, so you do not have to copy everything by hand.", "step4Link": "Official help", "step5": "Example: ask Cursor to write a note in Memento, or to search your notebooks." } }, "agents": { "title": "Agents", "subtitle": "Automate your monitoring and research tasks", "newAgent": "New Agent", "myAgents": "My Agents", "searchPlaceholder": "Search agents...", "filterAll": "All", "newBadge": "New", "noResults": "No agents match your search.", "noAgents": "No agents", "noAgentsDescription": "Create your first agent or install a template below to automate your monitoring tasks.", "types": { "scraper": "Monitor", "researcher": "Researcher", "monitor": "Observer", "slideGenerator": "Slides", "excalidrawGenerator": "Diagram", "taskExtractor": "Tasks", "custom": "Custom" }, "typeDescriptions": { "scraper": "Scrapes multiple sites and creates a summary", "researcher": "Searches for information on a topic", "monitor": "Watches a notebook and analyzes notes", "slideGenerator": "Creates a PowerPoint presentation from notes", "excalidrawGenerator": "Creates an Excalidraw diagram from notes", "taskExtractor": "Finds tasks in your notes and gathers them", "custom": "Free agent with your own prompt" }, "form": { "agentType": "Agent type", "name": "Name", "namePlaceholder": "e.g. Tuesday AI Watch", "description": "Description (optional)", "descriptionPlaceholder": "Weekly AI news summary", "urlsLabel": "URLs to scrape", "urlsOptional": "(optional)", "sourceNotebook": "Notebook to watch", "selectNotebook": "Select a notebook...", "selectNotes": "Notes to analyze", "notesSelected": "{{count}} note(s) selected", "slideTheme": "Presentation theme", "slideThemeDefault": "Automatic", "slideThemes": { "modern_wellness": "Modern & Wellness", "business_authority": "Business & Authority", "nature_outdoors": "Nature & Outdoors", "vintage_academic": "Vintage & Academic", "soft_creative": "Soft & Creative", "bohemian": "Bohemian", "vibrant_tech": "Vibrant & Tech", "craft_artisan": "Craft & Artisan", "tech_night": "Tech & Night (dark)", "education_charts": "Education & Charts", "forest_eco": "Forest & Eco", "elegant_fashion": "Elegant & Fashion", "art_food": "Art & Food", "luxury_mystery": "Luxury & Mystery", "pure_tech_blue": "Pure Tech Blue", "coastal_coral": "Coastal Coral", "vibrant_orange_mint": "Vibrant Orange Mint", "platinum_white_gold": "Platinum White Gold" }, "slideStyle": "Visual style", "slideStyleSoft": "Soft (recommended)", "slideStyleSharp": "Sharp & dense", "slideStyleRounded": "Rounded & spacious", "slideStylePill": "Premium / Pill", "excalidrawDiagramType": "Diagram type", "excalidrawDiagramTypeAuto": "Auto (domain detection)", "excalidrawDiagramTypeFlowchart": "Flowchart (process)", "excalidrawDiagramTypeMindmap": "Mindmap (ideas)", "excalidrawDiagramTypeOrgChart": "Org chart (teams)", "excalidrawDiagramTypeTimeline": "Timeline / roadmap", "excalidrawDiagramTypeProcessMap": "Process map (operations)", "excalidrawDiagramTypeArchitectureCloud": "Cloud architecture (zones/RG)", "excalidrawDiagramStyle": "Excalidraw diagram style", "excalidrawDiagramStyleDefault": "Colored (Excalidraw)", "excalidrawDiagramStyleSketchPlus": "Sketch+ (enhanced Excalidraw)", "excalidrawDiagramStyleAustere": "Austere (minimal)", "targetNotebook": "Target notebook", "inbox": "Inbox", "instructions": "AI Instructions", "instructionsPlaceholder": "Describe the agent's behavior...", "frequency": "Frequency", "cancel": "Cancel", "saving": "Saving...", "save": "Save", "create": "Create agent", "editTitle": "Edit agent", "createTitle": "New agent", "nameRequired": "Name is required", "addUrl": "Add URL", "advancedMode": "Advanced mode", "instructionsHint": "replaces automatic prompt", "researchTopic": "Research topic", "researchTopicPlaceholder": "e.g. Latest advances in quantum computing", "notifyEmail": "Email notification", "notifyEmailHint": "Receive an email with the agent's results after each run", "includeImages": "Include images", "includeImagesHint": "Extract images from scraped pages and attach them to the generated note", "back": "Back", "configuration": "Configuration", "options": "Options" }, "frequencies": { "manual": "Manual", "hourly": "Hourly", "daily": "Daily", "weekly": "Weekly", "monthly": "Monthly" }, "schedule": { "nextRun": "Next run", "pending": "Pending trigger", "time": "Time", "dayOfWeek": "Day of week", "dayOfMonth": "Day of month", "days": { "mon": "Monday", "tue": "Tuesday", "wed": "Wednesday", "thu": "Thursday", "fri": "Friday", "sat": "Saturday", "sun": "Sunday" } }, "status": { "success": "Succeeded", "failure": "Failed", "running": "Running", "pending": "Pending", "nextRun": "Next run", "lastStatus": "Last status" }, "actions": { "edit": "Edit", "run": "Run", "delete": "Delete", "deleteConfirm": "Delete agent \"{name}\"?", "toggleOn": "Agent enabled", "toggleOff": "Agent disabled" }, "toasts": { "created": "Agent created", "updated": "Agent updated", "deleted": "\"{name}\" deleted", "deleteError": "Error deleting", "running": "Generation in progress…", "runningDesc": "Generation may take a few minutes. You can navigate freely.", "runSuccess": "\"{name}\" executed successfully", "runError": "Error: {error}", "runFailed": "Execution failed", "runGenericError": "Error during execution", "toggleError": "Error toggling agent", "installSuccess": "\"{name}\" installed", "installError": "Error during installation", "saveError": "Error saving", "autoRunSuccess": "Agent \"{name}\" executed automatically with success", "autoRunError": "Agent \"{name}\" failed during automatic execution" }, "templates": { "title": "Templates", "install": "Install", "installing": "Installing...", "seeAll": "See all", "showLess": "Show less", "categoryAll": "All", "categoryWatch": "News watch", "categoryDigest": "Summaries", "categoryTools": "Tools", "categoryGenerate": "Create", "taskExtractor": { "name": "Tasks from notes", "description": "Finds tasks in your notes and gathers them in one place." }, "veilleAI": { "name": "AI Watch", "description": "Scrapes RSS feeds from 6 AI sites (The Verge, TechCrunch, Ars Technica, MIT Tech Review, WIRED, Korben) and generates a weekly summary." }, "veilleTech": { "name": "Tech Watch", "description": "Scrapes tech RSS feeds (Hacker News, DEV, Product Hunt) and creates a daily news summary." }, "veilleDev": { "name": "Dev Watch", "description": "Scrapes dev RSS feeds (JavaScript, TypeScript, React) and summarizes new tech and frameworks." }, "surveillant": { "name": "Note Observer", "description": "Analyzes recent notes from a notebook and suggests complements, references and links." }, "chercheur": { "name": "Topic Researcher", "description": "Searches for in-depth information on a topic and creates a structured note with references." }, "slideGenerator": { "name": "Slide Generator", "description": "Reads notes from a notebook and generates a structured presentation automatically." }, "excalidrawGenerator": { "name": "Diagram Generator", "description": "Reads a note and generates a visual diagram in the Excalidraw Lab." }, "dailyDigest": { "name": "Daily Digest", "description": "Summarizes your notes from the day and creates a daily recap in your main notebook." }, "weeklyRecap": { "name": "Weekly Recap", "description": "Analyzes your weekly notes and produces a summary of key themes, decisions and tasks." }, "autoTagger": { "name": "Auto-Tagger", "description": "Scans your notes without labels and automatically suggests relevant tags based on content." }, "knowledgeSynthesis": { "name": "Knowledge Synthesis", "description": "Groups related notes by theme and creates a synthesis note with identified connections." } }, "runLog": { "title": "History", "noHistory": "No executions yet", "toolTrace": "{count} tool calls", "step": "Step {num}", "clearConfirm": "Are you sure you want to delete all history for this agent?", "cleared": "History deleted", "clearHistory": "Clear history" }, "tools": { "title": "Agent Tools", "webSearch": "Web Search", "webScrape": "Web Scrape", "noteSearch": "Note Search", "noteRead": "Read Note", "noteCreate": "Create Note", "urlFetch": "Fetch URL", "memorySearch": "Memory", "generatePptx": "PPTX Slides", "generateSlides": "HTML Slides", "generateExcalidraw": "Excalidraw Diagram", "configNeeded": "config", "selected": "{count} selected", "maxSteps": "Max iterations" }, "metadata": { "executions": "{count} exec." }, "defaultRoles": { "scraper": "You are a monitoring assistant. Your role is to synthesize articles from different websites into a clear, structured and useful summary. Use section headings, bullet points and concise sentences.", "researcher": "You are a rigorous researcher. For the requested topic, produce a research note with: context, key points, debates, references.", "monitor": "You are an analytical assistant. Your role is to analyze provided notes and for each detected theme, suggest: leads to explore, references or articles to read, connections between notes.", "custom": "You are a helpful assistant.", "slideGenerator": "You are a presentation creator. Read the provided content and create structured slides with titles, key points and summaries.", "excalidrawGenerator": "You are a diagram creator. Analyze the provided content and create a clear, organized visual diagram." }, "help": { "title": "Agents Guide", "btnLabel": "Help", "close": "Close", "whatIsAgent": "What is an agent?", "whatIsAgentContent": "An **agent** is an AI assistant that runs automatically to perform tasks for you. It has access to **tools** (web search, web scraping, note reading...) and produces a **note** with its results.\n\nThink of it as a small autonomous worker: you give it a mission, it researches or scrapes information, then writes a structured note you can read later.\n\nAgents respond in your language (French or English) based on your settings.", "howToUse": "How to use an agent?", "howToUseContent": "1. Click **\"New Agent\"** (or start from a **Template** at the bottom of the page)\n2. Choose an **agent type** (Researcher, Monitor, Observer, Custom)\n3. Give it a **name** and fill in the type-specific fields\n4. Optionally pick a **target notebook** where results will be saved\n5. Choose a **frequency** (Manual = you trigger it yourself)\n6. Click **Create**, then hit the **Run** button on the agent card\n7. Once finished, a new note appears in your target notebook", "types": "Agent types", "typesContent": "### Researcher\nSearches the web on a **topic you define** and creates a structured note with sources and references.\n\n- **Fields:** name, research topic (e.g. \"Latest advances in quantum computing\")\n- **Default tools:** web search, web scraping, note search, note creation\n- **Requirements:** a web search provider must be configured (SearXNG or Brave Search)\n\n### Monitor (Scraper)\nScrapes a **list of URLs** you specify and produces a summary of their content.\n\n- **Fields:** name, list of URLs (websites or RSS feeds)\n- **Default tools:** web scraping, note creation\n- **RSS tip:** Use RSS feed URLs (e.g. `site.com/feed`) to automatically scrape individual articles instead of listing pages\n- **Use case:** weekly tech watch, competitor monitoring, blog roundups\n\n### Observer (Notebook Monitor)\nReads notes from a **notebook you select** and produces analysis, connections, and suggestions.\n\n- **Fields:** name, source notebook (the one to analyze)\n- **Default tools:** note search, note read, note creation\n- **Use case:** find connections between your notes, get reading suggestions, detect recurring themes\n\n### Custom\nA blank canvas: you write your own **prompt** and pick your own **tools**.\n\n- **Fields:** name, description, custom instructions (in Advanced mode)\n- **No default tools** — you choose exactly what the agent needs\n- **Use case:** anything creative or specific that doesn't fit the other types", "advanced": "Advanced mode (AI Instructions, Max iterations)", "advancedContent": "Click **\"Advanced mode\"** at the bottom of the form to access additional settings.\n\n### AI Instructions\n\nThis field lets you **replace the default system prompt** for the agent. If left empty, the agent uses an automatic prompt adapted to its type.\n\n**Why use it?** You want to control exactly how the agent behaves. For example:\n- \"Write the summary in English, even if sources are in French\"\n- \"Structure the note with sections: Context, Key Points, Personal Opinion\"\n- \"Ignore articles older than 30 days and focus on recent news\"\n- \"For each detected theme, suggest 3 follow-up leads with links\"\n\n> **Note:** Your instructions replace the defaults, they don't add to them.\n\n### Max iterations\n\nThis is the **maximum number of cycles** the agent can perform. One cycle = the agent thinks, calls a tool, reads the result, then decides the next action.\n\n- **3-5 iterations:** for simple tasks (scraping a single page)\n- **10 iterations (default):** good balance for most cases\n- **15-25 iterations:** for deep research where the agent needs to explore multiple leads\n\n> **Warning:** More iterations = more time and potentially higher API costs.", "tools": "Available tools (full details)", "toolsContent": "When advanced mode is enabled, you can choose exactly which tools the agent can use.\n\n### Web Search\nAllows the agent to **search the internet** via SearXNG or Brave Search.\n\n- **What it does:** The agent formulates a query, gets search results, and can then scrape the most relevant pages.\n- **When to enable:** When the agent needs to find information on a topic (Researcher or Custom type).\n- **Configuration required:** SearXNG (with JSON format enabled) or a Brave Search API key. Configurable in **Admin > Agent Tools**.\n- **Example:** The agent searches \"React Server Components best practices 2025\", gets 10 results, then scrapes the top 3.\n\n### Web Scrape\nAllows the agent to **extract text content from a web page** given its URL.\n\n- **What it does:** The agent visits a URL and retrieves the structured text (headings, paragraphs, lists). Ads, menus and footers are typically filtered out.\n- **RSS/Atom support:** If the URL is an RSS feed, the tool automatically detects it, parses the feed and scrapes the 5 latest articles individually. Use RSS feed URLs for much richer content than listing pages.\n- **When to enable:** For the Monitor type (mandatory), or any agent that needs to read web pages.\n- **Configuration:** Works out of the box, but a **Jina Reader API key** improves quality and removes rate limits. Configurable in **Admin > Agent Tools**.\n- **Example:** The agent scrapes the RSS feed at `techcrunch.com/feed/` and gets the 5 latest full articles.\n\n### Note Search\nAllows the agent to **search your existing notes**.\n\n- **What it does:** The agent performs a text search across all your notes (or a specific notebook).\n- **When to enable:** For Observer-type agents, or any agent that needs to cross-reference information with your notes.\n- **Configuration:** None — works immediately.\n- **Example:** The agent searches all notes containing \"machine learning\" to see what you've already written on the topic.\n\n### Read Note\nAllows the agent to **read the full content of a specific note**.\n\n- **What it does:** After finding a note (via Note Search), the agent can read its entire content to analyze or use it.\n- **When to enable:** As a companion to Note Search. Enable both together so the agent can search AND read.\n- **Configuration:** None.\n- **Example:** The agent finds 5 notes about \"productivity\", reads them all, and writes a synthesis.\n\n### Create Note\nAllows the agent to **write a new note** in your target notebook.\n\n- **What it does:** The agent creates a note with a title and content. This is how results end up in your notebooks.\n- **When to enable:** Almost always — without this tool, the agent cannot save its results. **Leave it enabled by default.**\n- **Configuration:** None.\n- **Example:** The agent creates a note \"Tech Watch - Week 16\" with a summary of 5 articles.\n\n### Fetch URL\nAllows the agent to **download the raw content of a URL** (HTML, JSON, text...).\n\n- **What it does:** Unlike scraping which extracts clean text, Fetch URL retrieves raw content. Useful for APIs, JSON files, or non-standard pages.\n- **When to enable:** When the agent needs to query REST APIs, read RSS feeds, or access raw data.\n- **Configuration:** None.\n- **Example:** The agent queries the GitHub API to list the latest commits of a project.\n\n### Memory\nAllows the agent to **access its previous execution history**.\n\n- **What it does:** The agent can search through results from past runs. This lets it compare, track changes, or avoid repeating the same information.\n- **When to enable:** For agents that run regularly and need to maintain continuity between executions.\n- **Configuration:** None.\n- **Example:** The agent compares this week's news with last week's and highlights what's new.", "frequency": "Frequency & scheduling", "frequencyContent": "| Frequency | Behavior\n|-----------|----------\n| **Manual** | You click \"Run\" yourself — no automatic scheduling\n| **Hourly** | Runs every hour\n| **Daily** | Runs once per day\n| **Weekly** | Runs once per week\n| **Monthly** | Runs once per month\n\n> **Tip:** Start with \"Manual\" to test your agent, then switch to an automatic frequency once you're satisfied with the results.", "targetNotebook": "Target notebook", "targetNotebookContent": "When an agent finishes its task, it **creates a note**. The **target notebook** determines where that note goes:\n\n- **Inbox** (default) — the note goes to your general notes\n- **Specific notebook** — choose a notebook to keep agent results organized\n\n> **Tip:** Create a dedicated notebook like \"Agent Reports\" to keep all automated content in one place.", "templates": "Templates", "templatesContent": "Templates are pre-configured agents ready to install in one click. You'll find them at the **bottom of the Agents page**.\n\nAvailable templates:\n\n- **AI Watch** — weekly roundup via RSS feeds from 6 AI sites (The Verge, TechCrunch, Ars Technica, MIT Tech Review, WIRED, Korben)\n- **Tech Watch** — daily summary via RSS feeds from Hacker News, DEV Community, Product Hunt\n- **Dev Watch** — developer news via RSS feeds from DEV (JavaScript, TypeScript, React)\n- **Note Observer** — analyzes a notebook and suggests connections\n- **Topic Researcher** — deep research on a specific topic\n\nTemplates come with the right tools pre-configured. You can customize them after installation.", "tips": "Tips & troubleshooting", "tipsContent": "- **Start with a template** and customize it — it's the fastest way to get a working agent\n- **Test with \"Manual\"** frequency before enabling automatic scheduling\n- **Use RSS feed URLs** instead of listing pages for much richer content (e.g. `techcrunch.com/feed/` instead of `techcrunch.com/category/ai/`)\n- **A \"Researcher\" agent requires a web search provider** — configure SearXNG (JSON format) or Brave Search in **Admin > Agent Tools**\n- **If an agent fails**, click on its card then **History** to see the execution log and tool traces\n- **The \"Enabled/Disabled\" toggle** lets you pause an agent without deleting it\n- **Web scraping quality** improves with a Jina Reader API key (optional, in Admin > Agent Tools)\n- **Combine \"Note Search\" + \"Read Note\"** so the agent can find AND analyze your notes' content\n- **Enable \"Memory\"** if your agent runs regularly — it will avoid repeating the same information across runs\n- **Agents respond in your language** — switch between French and English in settings", "tooltips": { "agentType": "Choose the type of task the agent will perform. Each type has different capabilities and fields.", "researchTopic": "The subject the agent will research on the web. Be specific for better results.", "description": "A short description of what this agent does. Helps you remember its purpose.", "urls": "List of URLs to scrape. Supports RSS feeds — use feed URLs for richer content (e.g. site.com/feed).", "sourceNotebook": "The notebook the agent will analyze. It reads notes from this notebook to find connections and themes.", "targetNotebook": "Where the agent's result note will be saved. Choose Inbox or a specific notebook.", "frequency": "How often the agent runs automatically. Start with Manual to test.", "instructions": "Custom instructions that replace the default AI prompt. Leave empty to use the automatic prompt.", "tools": "Select which tools the agent can use. Each tool gives the agent a specific capability.", "maxSteps": "Maximum number of reasoning cycles. More steps = deeper analysis but takes longer.", "selectNotes": "Select specific notes to analyze. If none selected, the agent will use all notes from the notebook.", "slideTheme": "Choose a color palette for the presentation. Automatic lets the AI decide.", "slideStyle": "Visual style affects corner radius, spacing, and information density." } }, "intelligenceOS": "Agents" }, "chat": { "title": "AI Chat", "subtitle": "Chat with your notes and AI agents", "newConversation": "New conversation", "noHistory": "No history", "untitled": "Untitled conversation", "deleteConfirm": "Delete this conversation?", "yes": "Yes", "placeholder": "Send a message to the assistant...", "allNotebooks": "All notebooks", "inAllNotebooks": "In all notebooks", "active": "ACTIVE", "disclaimer": "AI can make mistakes. Verify important information.", "assistantError": "Assistant error", "loadError": "Error loading conversation", "createError": "Error creating conversation", "deleteError": "Error deleting", "renamed": "Conversation renamed", "renameError": "Error renaming", "welcome": "I'm here to help you synthesize your notes, generate new ideas, or discuss your notebooks.", "searching": "Searching...", "noNotesFoundForContext": "No relevant notes found for this question. Answer with your general knowledge.", "webSearch": "Web Search", "timeoutWarning": "Response is taking longer than expected...", "quotaExceededBasic": "AI chat requires the PRO plan or higher (or use your own API key).", "quotaExceededTier": "AI credit balance empty on the {tier} plan. Upgrade or use your own API key." }, "labHeader": { "title": "The Workshop", "live": "Live", "currentProject": "Current Project", "choose": "Choose...", "yourSpaces": "Your Spaces", "updated": "Updated", "newSpace": "New Thought Space", "new": "New", "renamed": "Space renamed", "renameError": "Error renaming", "created": "New space created", "createFailed": "Creation failed", "deleteSpace": "Delete space", "deleted": "Space deleted", "deleteError": "Error deleting", "rename": "Rename" }, "lab": { "initializing": "Initializing workspace", "loadingIdeas": "Loading your ideas...", "loadingSlides": "Loading slides…", "downloadFailed": "Failed to download presentation", "exportPpt": "Export to PowerPoint", "downloadHtml": "Download HTML", "openFullscreen": "Open in fullscreen", "loadingPresentation": "Loading presentation…", "previousSlide": "Previous slide", "nextSlide": "Next slide", "hideNotes": "Hide notes", "toggleNotes": "Toggle presentation notes (Shortcut: N)", "notes": "Notes", "previous": "Previous", "next": "Next" }, "richTextEditor": { "slashHint": "↑↓ navigate · Enter insert · Tab switch section", "slashLoading": "AI thinking...", "slashTabAll": "All", "slashCatBasic": "Basic blocks", "slashCatText": "Text", "slashCatMedia": "Media", "slashCatData": "Data", "slashCatEmbed": "Embed", "slashCatFormatting": "Formatting", "slashCatAi": "AI Note", "placeholderH1": "Main heading...", "placeholderH2": "Section heading...", "placeholderH3": "Subsection heading...", "placeholderTodo": "Add a task...", "placeholderCode": "Write code...", "placeholderQuote": "Capture a quote...", "placeholderText": "Type '/' to insert a block...", "smartPasteUrlTitle": "Link or Media Detected", "smartPasteUrlHint": "What would you like to do with this link?", "smartPasteUrlLink": "Paste as hyperlink", "smartPasteUrlImage": "Insert as image", "smartPasteUrlVideo": "Insert as video player", "smartPastePlain": "Paste as plain text", "smartPasteCodeTitle": "Source Code Detected", "smartPasteCodeHint": "Source code was detected. Would you like to insert it as a code block?", "smartPasteCodeBlock": "Insert as code block", "insertImage": "Insert image", "imageUrlPlaceholder": "https://example.com/image.png", "preview": "Preview", "cancel": "Cancel", "insert": "Insert", "slashText": "Text", "slashTextDesc": "Simple paragraph", "slashH1": "Heading 1", "slashH1Desc": "Large section heading", "slashH2": "Heading 2", "slashH2Desc": "Medium section heading", "slashH3": "Heading 3", "slashH3Desc": "Small section heading", "slashBullet": "Bullet List", "slashBulletDesc": "Unordered list", "slashNumbered": "Numbered List", "slashNumberedDesc": "Ordered numbered list", "slashTodo": "Task List", "slashTodoDesc": "Checkbox tasks", "slashQuote": "Quote", "slashQuoteDesc": "Capture a quote", "slashCode": "Code Block", "slashCodeDesc": "Code snippet", "slashDivider": "Divider", "slashDividerDesc": "Horizontal separator", "slashTable": "Table", "slashTableDesc": "Insert a simple grid", "slashDatabase": "Structured View", "slashDatabaseDesc": "Embed your notebook's structured data", "slashInteractiveDemo": "Step-by-step demo", "slashInteractiveDemoDesc": "A guided walkthrough inside the note", "slashToggle": "Collapsible section", "slashToggleDesc": "Create a section you can fold away", "slashCallout": "Highlighted box", "slashCalloutDesc": "Highlight text (info, warning, tip)", "slashOutline": "Table of Contents", "slashOutlineDesc": "Auto-generated outline from your headings", "outlineTitle": "Outline", "outlineEmpty": "Add headings (H1, H2, H3) to generate the outline", "outlineDelete": "Delete outline", "findReplaceTitle": "Find", "findPlaceholder": "Find in note...", "replacePlaceholder": "Replace with...", "replace": "Replace", "replaceAll": "Replace all", "findNext": "Next match", "findPrev": "Previous match", "findCaseSensitive": "Case sensitive", "findWholeWord": "Whole word", "findRegex": "Regular expression", "findReplaceToggle": "Show/Hide replace", "slashLinkPreview": "Link Preview", "slashLinkPreviewDesc": "Turn a URL into a visual card", "linkPreviewLoading": "Loading preview...", "linkPreviewModalTitle": "Paste a link", "linkPreviewModalInsert": "Create preview", "linkPreviewUnwrap": "Revert to simple link", "linkPreviewDelete": "Delete preview", "smartPasteUrlPreview": "Paste as preview card", "slashMath": "Equation", "slashMathDesc": "Mathematical formula in LaTeX notation", "mathLatex": "LaTeX notation", "mathPlaceholder": "\\frac{1}{2} + \\sum_{i=1}^{n} x_i", "mathConfirm": "Confirm", "mathEdit": "Edit", "mathDelete": "Delete", "mathCancel": "Cancel", "mathAi": "Write with AI", "mathAiPlaceholder": "Describe the equation in words... (e.g: quadratic formula)", "slashColumns": "Columns", "slashColumnsDesc": "Put content side by side", "columnsRemove": "Remove a column", "columnsAdd": "Add a column", "columnsDelete": "Delete columns", "columnsLabel": "columns", "calloutDelete": "Delete callout", "calloutUnwrap": "Disable callout", "calloutInfo": "Information", "calloutWarning": "Warning", "calloutTip": "Tip", "calloutSuccess": "Success", "calloutDanger": "Danger", "blockActionInsertCallout": "Turn into callout", "toggleOpened": "Expanded section — click to collapse", "toggleClosed": "Collapsed section — click to expand", "toggleDelete": "Delete section", "toggleUnwrap": "Disable toggle section", "blockActionInsertToggle": "Turn into toggle section", "slashDiagram": "Diagram", "slashDiagramDesc": "Generate a flow or mindmap", "slashSlides": "Presentation", "slashSlidesDesc": "Generate a beautiful slide deck", "slashImage": "Image", "slashImageDesc": "Embed an image from URL", "slashAlignLeft": "Align Left", "slashAlignLeftDesc": "Align text to the left", "slashAlignCenter": "Center", "slashAlignCenterDesc": "Center the text", "slashAlignRight": "Align Right", "slashAlignRightDesc": "Align text to the right", "slashSuperscript": "Superscript", "slashSuperscriptDesc": "Text above the baseline", "slashSubscript": "Subscript", "slashSubscriptDesc": "Text below the baseline", "slashClarify": "Clarify", "slashClarifyDesc": "Make the text clearer", "slashShorten": "Shorten", "slashShortenDesc": "Condense the text", "slashImprove": "Improve", "slashImproveDesc": "Enhance the style", "slashExpand": "Expand", "slashExpandDesc": "Elaborate and enrich the text", "imageModalTitle": "Insert image", "imageModalPreview": "Preview", "imageModalCancel": "Cancel", "imageModalInsert": "Insert", "imageModalInvalidUrl": "Please enter a valid URL", "imageModalLoadFailed": "Failed to load image", "linkPlaceholder": "Paste or type a link...", "noteLinkPickerTitle": "Link to another note", "noteLinkPickerHint": "Pick a note. Memento inserts [[Title]] in the text and creates the link when you save.", "noteLinkPickerSearch": "Search notes…", "noteLinkPickerEmpty": "No notes found. Check the title or create the target note first.", "slashNoteLink": "Link to a note", "slashNoteLinkDesc": "Create a link to another note ([[…]])", "bold": "Bold", "italic": "Italic", "underline": "Underline", "strike": "Strikethrough", "code": "Code", "highlight": "Highlight", "superscript": "Superscript", "subscript": "Subscript", "addBlock": "Add block", "placeholder": "Type '/' for commands...", "aiReformulateFailed": "The AI assistant could not process this text. Try again.", "translateTargets": { "Francais": "French", "English": "English", "Espanol": "Spanish", "Deutsch": "German", "Persan": "Persian", "Portugais": "Portuguese", "Italiano": "Italian", "Chinois": "Chinese", "Japonais": "Japanese" }, "exportMarkdown": "Export as Markdown", "exportPdf": "Export as PDF", "pdfExportBlocked": "Popup blocked — allow popups to export as PDF", "pdfExportLoading": "Generating PDF...", "pdfExportSuccess": "PDF ready!", "generateExercises": "Generate exercises", "generateExercisesHint": "5 exercises + answers", "slashAiWriter": "Write with AI", "slashAiWriterDesc": "Generate content at cursor", "aiWriterPlaceholder": "Describe what you want to write...", "publishTitle": "Public publishing", "publishDesc": "Publish this note on a public URL. Anyone with the link can read it.", "publish": "Publish", "publishSuccess": "Note published!", "publishLive": "Live", "settingsPublishedTitle": "My published pages", "settingsPublishedDesc": "Manage your publicly published notes.", "settingsPublishedEmpty": "No published notes yet.", "unpublish": "Unpublish", "unpublishSuccess": "Note unpublished", "publishBlocked": "Publication refused", "publishSimple": "Publish as-is", "publishSimpleHint": "Free — your note content as-is", "publishWithAi": "Publish with AI", "publishWithAiHint": "Enhanced layout · {count} credits left", "publishWithAiCostHint": "Estimated cost: 3 AI credits", "publishWithAiLocked": "Available on Pro plan", "publishWithAiGenerating": "Generating layout…", "publishTemplateMagazine": "Magazine article", "publishTemplateBrief": "Expert brief", "publishTemplateEssay": "Essay", "publishTemplateInteractivePage": "Interactive page", "publishInteractivePage": "Interactive page", "publishInteractivePageHint": "AI-generated page: hero, sections, Play/Step demos — 20 credits", "publishInteractivePageGenerating": "Building interactive page…", "publishInteractivePageGeneratingWait": "Almost ready…", "publishInteractivePageGeneratingLong": "Still working…", "publishInteractivePagePlanning": "Analyzing content — planning the page…", "publishInteractivePageSectionProgress": "Section {current}/{total}: {title}", "publishInteractivePageFallback": "AI generation unavailable — showing simplified page", "publishInteractivePagePartialFallback": "Some sections were generated in simplified mode", "publishInteractivePageTooShort": "Note too short — add more content and try again", "publishInteractivePageSuccess": "Interactive page published!", "publishInteractivePageFailed": "Interactive page generation failed", "publishInteractivePagePreviewHint": "Preview — review, then publish to the public URL", "publishInteractivePageConfirm": "Publish page", "publishAiSuccess": "AI-enhanced page published!", "publishRewriteLabel": "Rewrite for the web", "publishRewriteOnHint": "Structures your editor blocks (exercises, toggles, callouts) for the web — AI writes only the intro", "publishRewriteOffHint": "Your original text is kept; AI only adds editorial framing", "copyPublicLink": "Copy link", "openPublicPage": "Open public page", "slashSubPage": "Sub-page", "slashSubPageDesc": "Create a linked note inside this note", "slashCharts": "Suggest charts", "slashChartsDesc": "Suggest charts from this note", "slashLivingBlock": "Linked block", "slashLivingBlockDesc": "Open a passage from another note beside this one", "frequentCommands": "★ Frequent", "mobileBlockActions": "Block Actions", "mobileSelectAll": "Select All", "mobileDuplicate": "Duplicate", "mobileDelete": "Delete", "mobileAiNote": "AI Note", "mobileConvertFormat": "Convert Format", "mobileParagraph": "Paragraph", "mobileQuote": "Quote", "editorBacklinks": "Incoming Links", "editorClickToEdit": "Click to edit", "exercisesLoading": "Generating exercises...", "exercisesGenerated": "exercises created!", "aiGenerateExercises": "Generate exercises", "aiGenerateExercisesHint": "5 exercises with answers", "aiGenerateExercisesDesc": "AI creates 5 exercises based on this note, with varied difficulty levels and detailed answers.", "aiGenerateExercisesCreated": "exercises created!", "aiGenerateGenerateExercises": "Generate", "structuredViewsImportCsv": "Import CSV file", "structuredViewsExportCsv": "Export as CSV", "structuredViewsOrganizer": "Organize", "generalContinue": "Continue", "structuredViewsTagApplied": "applied", "wizard": { "title": "Create a notebook with AI", "chooseProfile": "What's your profile?", "profileStudent": "Student", "profileStudentDesc": "AI creates a structured course notebook with summaries, formulas and key takeaways", "profileTeacher": "Teacher", "profileTeacherDesc": "AI generates a course structure with chapters, exercises and learning objectives", "profileEngineer": "Engineer / Professional", "profileEngineerDesc": "AI creates organized technical documentation with specs and references", "topicStudentPlaceholder": "e.g: Thermodynamics, Calculus, French Revolution...", "topicTeacherPlaceholder": "e.g: Math 101, AP Physics, Algorithms...", "topicEngineerPlaceholder": "e.g: Microservices architecture, Network security, ISO 27001...", "topic": "Topic", "level": "Level", "levelBeginner": "Beginner", "levelIntermediate": "Intermediate", "levelAdvanced": "Advanced", "levelExpert": "Expert", "noteCount": "Number of notes", "notes": "notes", "confirmHint": "AI will create a notebook with rich notes: callouts, collapsible sections, math formulas, comparison columns, outlines and links.", "generate": "Generate notebook", "loading": "AI is creating your notebook with structured notes...", "progressGenerating": "Generating content with AI...", "progressCalling": "Calling AI...", "progressParsing": "Parsing AI response...", "progressCreating": "Creating notebook and notes...", "success": "Notebook created successfully!", "created": "Notebook created:", "notesCreated": "notes created", "openNotebook": "Open notebook", "openingNotebook": "Opening…", "autoOpenHint": "Opening the notebook and refreshing the sidebar…", "createdToast": "Notebook « {name} » ready — AI notes available", "studyPlanner": "Study Plan", "studyPlannerDesc": "AI creates a revision plan based on spaced repetition.", "examDate": "Exam date", "generatePlan": "Generate plan", "studyPlanLoading": "Creating plan...", "studyPlanSuccess": "Plan created! Reminders have been added to your notes.", "daysPlanned": "days planned", "studyPlanReminders": "Reminders have been automatically added to your notes.", "organizer": "Organize with AI", "organizerDesc": "AI analyzes your notes and suggests tags, groupings and duplicate detection.", "analyze": "Analyze notebook", "organizing": "Analyzing notes...", "suggestedTags": "Suggested tags", "categories": "Suggested groupings", "duplicates": "Duplicates detected", "apply": "Apply", "tagApplied": "applied", "noSuggestions": "No suggestions — notebook looks well organized." }, "importMarkdown": "Import Markdown", "markdownExportSuccess": "Note exported as Markdown", "markdownExportError": "Failed to export note", "markdownImportSuccess": "Markdown imported successfully", "previewChartsTip": "Generate an interactive chart from your text.", "previewCodeTip": "Add code with syntax highlighting.", "previewDatabaseTip": "Add columns and structured Kanban views.", "previewDiagramTip": "Sketch concepts or generate diagrams via AI.", "previewLivingBlockTip": "Sync content between multiple notes.", "previewSlidesTip": "Create interactive exportable presentations.", "previewTableTip": "Organize your data in rows and columns.", "aiActionStarted": "AI Note invoked…", "blockDeleted": "Block deleted", "blockDuplicated": "Block duplicated", "blockSelected": "Entire block selected", "slashVideo": "Video", "startVoice": "Start voice input", "stopVoice": "Stop voice input", "collapsibleSection": "Collapsible section", "deleteImage": "Delete image" }, "flashcards": { "generateTitle": "Create review cards", "generateAction": "Generate with AI", "confirmSave": "Save to this set", "generateFailed": "Could not create the cards", "saveFailed": "Could not save the cards", "schemaMissing": "Review cards are not available yet on this server.", "savedCount": "{count} cards saved", "cardCount": "Number of cards", "styleLabel": "Card style", "style": { "qa": "Q&A", "cloze": "Cloze", "concept": "Concept" }, "previewHint": "Edit cards before saving", "frontPlaceholder": "Question / front", "backPlaceholder": "Answer / back", "toolbarGenerate": "Create review cards", "tabDecks": "Sets", "tabProgress": "Progress", "emptyDecks": "No review cards yet", "emptyDecksHint": "Open a note, then the review-cards button at the top of the page.", "createDeck": "New set", "newDeckPlaceholder": "Set name…", "deckCreated": "Set created", "dueCount": "{count} due today", "upToDate": "Up to date", "cardCountLabel": "{count} cards", "masteredShort": "mastered", "viewDeck": "Details", "hideDeck": "Hide", "deckCardsEmpty": "This set has no cards yet.", "dueBadge": "Due", "masteredBadge": "Mastered", "review": "Review", "startReview": "Start review", "activeDeck": "Current set", "statTotal": "Total: {count}", "statDue": "Due: {count}", "statMastered": "Mastered: {count}", "exitSession": "Exit session", "previous": "Previous", "next": "Next", "front": "Front", "back": "Back", "tapToFlip": "Space or tap to flip", "gradeSelected": "Saved — {label}", "ratePrompt": "How well did you remember this card?", "grade": { "hard": "Hard (1)", "difficult": "Difficult (2)", "good": "Good (3)", "easy": "Easy (4)" }, "sessionComplete": "Session complete", "backToDecks": "Back to sets", "loadDeckFailed": "Could not load this set", "reviewFailed": "Could not save review", "heatmapTitle": "Review activity", "heatmapLast90": "Last 90 days", "heatmapTotal": "{count} reviews · 90 days", "heatmapDay": "{count} reviews", "heatmapDayOne": "1 review", "heatmapDayNone": "No reviews", "heatmapHint": "Hover or click a square for details", "heatmapSelected": "selected", "heatmapClear": "Clear selection", "heatmapLess": "Less", "heatmapMore": "More", "retentionRate": "Retention rate", "masteredLabel": "{count}/{total} mastered", "retentionCurve": "Weekly success rate", "retentionCurveHint": "Based on reviews with grade ≥ Good (3 or 4)", "retentionNoDataYet": "Review more cards across multiple weeks to see your retention curve.", "streak": "Current streak", "streakDays": "days", "totalReviewsLabel": "Total reviews", "totalCardsLabel": "Total cards", "nextReviewLabel": "Next", "dueToday": "Due today", "nextReviewIn": "In {days}d", "difficultCards": "Hardest cards", "notebookBadge": "Notebook", "reviewMode": "Mode", "reviewModeAll": "All cards", "reviewModeDue": "Due only", "sessionStats": "Session summary", "sessionReviewed": "Cards reviewed", "sessionNewMastered": "Newly mastered", "sessionDuration": "Duration", "editCard": "Edit", "deleteCard": "Delete card", "deleteCardConfirm": "Delete this card?", "deleteDeck": "Delete this set", "deleteDeckConfirm": "Delete this set and all its cards?", "deckDeleted": "Set deleted", "cardDeleted": "Card deleted", "cardSaved": "Card saved", "cardTypeBadge": "{type}", "reviewNow": "Review now", "deleteFailed": "Could not delete", "toolbarGenerateHint": "They come back at the right time" }, "structuredViews": { "enableTitle": "Organize this notebook (table, kanban, gallery…)", "enableLabel": "Organize", "enabledHint": "Organized mode enabled", "enabledHintDetail": "Fields show up in each note's Info panel.", "enableFailed": "Could not enable organized view", "viewList": "List", "viewTable": "Table", "viewTableHint": "Structured table — one row per note, one column per field (status, date…)", "viewKanban": "Kanban", "viewGallery": "Gallery", "viewKanbanHint": "Columns — like Trello to track your notes", "viewCalendarHint": "Calendar — your notes organized by date", "calendarNoDateProperty": "Add a date property to use the calendar view", "viewGalleryHint": "Visual cards — browse your notes at a glance", "intro": { "databaseTitle": "Organized notebook", "databaseBody": "Add shared fields (Status, Due date, Priority…) to every note in this notebook. Your note content stays the same — these are shared metadata, like a lightweight Notion database.", "tableTitle": "Table view", "tableBody": "All notes as rows, your fields as columns. Edit status or dates inline in the grid.", "kanbanTitle": "Kanban view", "kanbanBody": "The same notes as cards grouped in columns (e.g. To do → In progress → Done). Drag and drop to update status.", "activateTableHint": "We create a default “Status” field. Add more fields anytime with the + button.", "activateKanbanHint": "We create a “Status” field with three columns. You can rename options or add fields later.", "enableTable": "Enable table", "enableKanban": "Enable Kanban", "enabling": "Enabling…", "enabledSuccess": "Organized notebook enabled for this notebook" }, "helpBanner": { "table": "Table view: one row per note, one column per field. Click a cell to edit. Hover a column header to delete it (trash icon).", "kanban": "Kanban view: drag a card to change its status. Use + in a column to create a note already classified.", "dismiss": "Got it" }, "addPropertyTitle": "Add field", "addProperty": "Add field", "addPropertyHint": "The column appears on every note in this notebook, but each note keeps its own value (empty until you fill it in).", "deleteProperty": "Delete field", "deletePropertyTitle": "Delete this field?", "deletePropertyConfirm": "The field \"{name}\" and all its values on notes in this notebook will be removed. This cannot be undone.", "calculations": "Calculations", "calcClickToChange": "Click to change calculation type (Sum, Average, Min, Max, Count, None)", "deletePropertySuccess": "Field deleted", "cellEmpty": "—", "multiselectPick": "Choose…", "propertyName": "Field name", "propertyType": "Data type", "selectOptions": "Options (one per line)", "selectOptionsPlaceholder": "To do\nIn progress\nDone", "propertiesSection": "Notebook fields", "noPropertiesYet": "No fields yet.", "noFilter": "No filter", "filterContains": "Contains", "filterEquals": "Equals", "filterEmpty": "Is empty", "filterValue": "Filter value…", "noMatchingNotes": "No notes match this filter.", "kanbanGroupBy": "Group by", "kanbanUnassigned": "Unassigned", "kanbanAllNotes": "All notes", "kanbanSingleColumnHint": "Your notes are here. For multiple columns (To do, In progress, Done), one click.", "kanbanAddStatusColumns": "Add Status columns", "chooseGroupProperty": "Choose grouping field", "newNoteInColumn": "New note", "propertyTypes": { "text": "Text", "number": "Number", "date": "Date", "select": "Single choice", "multiselect": "Multi-choice", "checkbox": "Yes/no" }, "wizard": { "title": "Organize this notebook", "subtitle": "Like a light spreadsheet: extra info on each note, without changing the text.", "stepGoal": "What is this notebook for?", "stepFields": "Which fields to add?", "stepView": "How should notes appear?", "fieldsHint": "A field = a shared column (status, date…). Fill it per note when you want.", "kanbanNeedsStatus": "Check a single-choice field (e.g. Status) to use Kanban.", "doneHint": "You can fill fields later — or leave them empty.", "back": "Back", "next": "Next", "finish": "Finish", "readyToast": "Ready — fill in fields whenever you like.", "openFromKanban": "Set up with assistant", "goals": { "tasks": { "title": "Track tasks", "desc": "Status, due date — great for Kanban." }, "learning": { "title": "Learn / review", "desc": "Level, last review — works well as gallery." }, "reading": { "title": "Read and collect", "desc": "Read flag, source — for articles and references." }, "simple": { "title": "Just organize", "desc": "Change views without required fields." } }, "fields": { "status": { "name": "Status", "options": "To do\nIn progress\nDone" }, "dueDate": { "name": "Due date" }, "level": { "name": "Level", "options": "Beginner\nIntermediate\nAdvanced" }, "lastReview": { "name": "Last review" }, "read": { "name": "Read" }, "source": { "name": "Source" } } }, "tagApplied": "applied", "filterDone": "Done", "filterTodo": "To do", "propertyStatus": "Status", "exportCsv": "Export CSV", "importCsv": "Import CSV", "relationEmpty": "Link a note…", "relationNoResults": "No note found", "relationSearch": "Search a note…", "semanticResonances": "Notes that meet", "insertLink": "Insert link in editor" }, "brainstorm": { "title": "Waves of Thought", "subtitle": "Unfold dimensions of potentiality", "placeholder": "Enter a concept to unfold...", "generating": "AI is harvesting seeds of thought...", "newBrainstorm": "New Brainstorm", "noSessions": "No brainstorms yet", "startOne": "Start one", "sessions": "Brainstorms", "seedLabel": "Seed Idea", "ideaPromptDetailed": "Enter your idea, question, or topic to brainstorm...", "brainstormThisIdea": "Brainstorm this idea", "startBrainstorm": "Start Brainstorm", "spatialMode": "Spatial Exploration Mode", "wave1": "Wave 1", "wave2": "Wave 2", "wave3": "Wave 3", "export": "Export", "exporting": "Exporting...", "wave": "Wave", "novelty": "Novelty", "originConnection": "Origin connection", "linkedNotes": "Linked notes", "deepen": "Deepen", "deepening": "Generating...", "extract": "Create Note", "converting": "Converting...", "dismiss": "Not pertinent", "noteCreated": "Note Created", "ideas": "ideas", "cancel": "Cancel", "delete": "Delete", "ideaOrigin": "Origin of the idea", "noNoteLink": "Purely generative idea", "derived_from": "Derived from", "opposes": "In opposition with", "extends": "Extends", "synthesizes": "Synthesizes", "transposes": "Transposes", "none_found": "No note link", "viewNote": "View note", "addIdea": "Add idea", "manualIdeaPrompt": "Title of your idea:", "invite": "Invite", "linkCopied": "Invite link copied!", "activityTitle": "Activity", "noActivity": "No activity yet", "justNow": "just now", "humanIdea": "Human", "aiIdea": "AI", "respondsTo": "Responds to", "adding": "Adding...", "manualIdeaDesc": "Share your idea with the brainstorm canvas", "manualIdeaTitle": "Title", "manualIdeaTitlePlaceholder": "Your idea in a few words...", "manualIdeaDescLabel": "Description (optional)", "manualIdeaDescPlaceholder": "Elaborate on your idea...", "activity": { "manual_idea": "added an idea", "wave_generated": "generated a wave", "joined": "joined the session", "idea_dismissed": "dismissed an idea", "invite_created": "created an invite" }, "shareDialogTitle": "Share brainstorm", "shareSearchLabel": "Find someone", "shareNameOrEmailPlaceholder": "Name or email…", "shareSubmit": "Share", "shareSubmitting": "Sending…", "shareFooterHint": "They will get a notification to accept or decline.", "sharePublicLink": "Public link", "shareGuestsCanEdit": "Allow guests to edit", "feedbackInviteSent": "Invitation sent!", "feedbackInviteResent": "Invitation resent!", "feedbackAlreadyShared": "This person already has access to this brainstorm.", "feedbackAlreadyPending": "An invitation is already pending for this person.", "feedbackGenericError": "Error", "unnamedPerson": "No name", "canvasEditTitleReply": "Reply", "canvasEditTitleNewIdea": "New idea", "canvasPlaceholderReply": "Your reply…", "canvasPlaceholderIdea": "Your idea…", "canvasShortcutSave": "save", "canvasShortcutCancel": "cancel", "canvasChildBranch": "Child", "canvasDoubleClickHint": "Double-click to add an idea", "ideaDetailDescription": "Description", "ideaDetailConnection": "Connection", "ideaDetailNovelty": "Novelty", "ideaDetailWave": "Wave", "waveFlavorVariation": "Variation", "waveFlavorAnalogy": "Analogy", "waveFlavorDisruption": "Disruption", "liveCollaborationTitle": "Live collaboration", "liveStatus": "Live", "liveYouMarker": "(You)", "liveOtherParticipants": "{count} other participants", "guestReadOnlyNotice": "You're viewing this brainstorm as a guest. Sign in to edit.", "impactNotesEnriched": "{count} note(s) enriched", "impactNotesMarkedDry": "{count} note(s) marked dry", "impactSeparator": " · ", "exportNotebookPrefix": "Notebook:", "playbackStep": "Step {current}/{total}", "playbackStepsCount": "{count} steps", "playbackReturnToLive": "Return to live", "canvasWaitingHint": "The canvas is waiting for your spark...", "seedNodeBadge": "SEED", "originalSeedDescription": "Original seed idea", "convertedToNoteStatus": "Converted to note", "quotaGuest": "The session host has no AI credits left. Ask them to upgrade or use their own API key.", "quotaHost": "No AI credits left for this brainstorm. Upgrade your plan or use your own API key to continue.", "toastExpandSuccess": "Ideas expanded!", "toastExpandFailed": "Failed to expand", "toastDismissSuccess": "Idea dismissed", "toastDismissFailed": "Failed to dismiss", "toastConvertSuccess": "Idea converted to note!", "toastConvertFailed": "Failed to convert", "toastExportNoteSuccess": "Exported as note!", "toastExportFailed": "Failed to export", "legendSeed": "Seed", "legendVariations": "Variations", "legendAnalogies": "Analogies", "legendDisruptions": "Disruptions", "exportFailedMessage": "Export failed", "exportDefaultNotebookName": "Brainstorm", "exportDefaultNoteTitle": "Synthesis", "exportOpening": "Opening…", "ownerBadge": "Owner", "waveBadge": "Wave {wave}", "exampleSeed1": "Simplify my morning routine", "exampleSeed2": "Ideas for a creative project this weekend", "exampleSeed3": "Systems to manage my energy better", "exampleSeed4": "What I learned this week", "summarize": "AI Synthesis", "summaryError": "Could not generate synthesis", "regenerateSummary": "Regenerate", "exportAsNote": "Export as note", "exportModalTitle": "Session summary", "viewCanvas": "Canvas", "viewList": "List", "ideasCount": "ideas", "star": "Star idea", "unstar": "Unstar idea", "renameSession": "Rename session", "downloadPptx": "PPTX", "downloadPptxDesc": "Download as PowerPoint", "pptxSuccess": "PPTX downloaded", "pptxError": "PPTX export failed", "fitToScreen": "Re-center", "legendWave1": "Variations", "legendWave2": "Analogies", "legendWave3": "Disruptions", "legendConverted": "Converted" }, "byokSettings": { "title": "Your provider keys", "description": "Connect your own provider keys. Usage with your key typically does not consume your Memento credits. Keys are encrypted at rest.", "badgeActive": "Keys active", "tierRequired": "This option requires a Pro plan or higher.", "provider": "Provider", "providerPlaceholder": "Select a provider", "alias": "Label (optional)", "aliasPlaceholder": "e.g. Work OpenAI", "apiKey": "API key", "apiKeyPlaceholder": "sk-...", "save": "Save key", "saved": "API key saved", "deleted": "API key removed", "error": "Could not save API key", "loadError": "Could not load API keys", "loading": "Loading keys...", "empty": "No API keys configured yet.", "confirmDelete": "Remove this API key permanently?", "toggleActive": "Active", "providers": { "openai": "OpenAI", "anthropic": "Anthropic", "deepseek": "DeepSeek", "openrouter": "OpenRouter", "minimax": "MiniMax", "zai": "Z.ai", "google": "Google", "mistral": "Mistral", "glm": "GLM" } }, "billing": { "title": "Billing", "disabledByAdmin": "Billing and upgrades are currently disabled. Contact your administrator if you need access.", "currentPlan": "Current Plan", "upgradePlan": "Upgrade Plan", "manageBilling": "Manage Billing", "manageDescription": "Update payment method, view invoices, or cancel.", "openPortal": "Open Billing Portal", "renewsOn": "Renews on", "expiresOn": "Expires on", "canceledAt": "Canceled — access until", "freePlan": "Free Plan", "proPlan": "Pro Plan", "businessPlan": "Business Plan", "enterprisePlan": "Enterprise Plan", "perMonth": "/mo", "perYear": "/yr", "monthly": "Monthly", "annual": "Annual", "save": "Save", "upgradeTitle": "Choose a Plan", "proPrice": "€9.90", "businessPrice": "€29.90", "proAnnualPrice": "€99", "businessAnnualPrice": "€299", "proFeature1": "Unlimited notes", "proFeature2": "1,000 AI credits / month", "proFeature3": "Your own provider keys", "proFeature4": "Agents (use credits)", "businessFeature1": "10 collaborators included", "businessFeature2": "4,000 AI credits / month", "businessFeature3": "Your own keys · {count} providers", "businessFeature4": "Agents & brainstorm (credits)", "enterpriseTitle": "Enterprise", "enterpriseDescription": "Unlimited credits or dedicated pool, single sign-on for the team, priority support.", "contactSales": "Contact us", "startCheckout": "Get Started", "checkoutLoading": "Loading checkout…", "checkoutSuccess": "Subscription activated! Welcome to {tier}.", "checkoutCanceled": "Checkout canceled.", "active": "Active", "trialing": "Trialing", "pastDue": "Past Due", "canceled": "Canceled", "inactive": "Inactive", "billingEnabled": "Billing enabled", "billingDisabled": "Billing is not enabled on this instance.", "usageThisPeriod": "Usage this period", "periodRange": "Period", "unlimited": "Unlimited", "noUsage": "No usage data", "creditsRemaining": "Credits remaining", "creditsSpent": "Credits used this month", "creditsFromPacks": "Pack credits", "packsTitle": "Buy credits", "packsDescription": "One-time packs. Purchased credits add to your balance and roll over across months (unlike the subscription allocation).", "packSName": "Starter pack", "packMName": "Standard pack", "packLName": "Power pack", "buyPack": "Buy", "packNotConfigured": "Stripe config required", "packCheckoutSuccess": "Credit pack added to your balance!", "packCheckoutFailed": "Could not start pack purchase. Check Stripe config or try again.", "creditsWhereTitle": "Credit usage by feature", "creditsUsageLegend": "Every AI action draws from the same credit balance (search, chat, tags, slides, diagrams, etc.).", "billingHistory": "Billing History", "viewInvoices": "Manage invoices in portal", "cancelSubscription": "Cancel subscription", "changeOffer": "Change plan", "downgradeToFree": "Switch to the free plan", "cancellingNotice": "Cancellation scheduled — access until {date}", "nextBillingDate": "Next billing date", "billingPeriod": "Billing period", "planSince": "Member since", "checkoutSuccessTitle": "Subscription activated!", "checkoutSuccessBody": "Welcome to {tier}. Your features are now unlocked.", "subscriptionType": "subscriptionType", "renewalDate": "renewalDate", "noRenewalDate": "—", "tab": "Billing", "currentUsage": "Current usage", "currentPeriod": "Current period", "aiCredits": "AI credits", "used": "used", "billing": "Billing", "renewal": "Renewal", "paidPlanDesc": "Your subscription renews automatically.", "businessDescription": "For teams and product leaders.", "enterpriseFeature1": "Unlimited AI credits or dedicated pool", "enterpriseFeature2": "Single sign-on for the whole team", "enterpriseFeature3": "Dedicated support", "enterpriseFeature4": "Custom invoicing", "enterpriseFeature5": "Guaranteed response time", "subtitle": "Choose the plan that suits you", "freeDescription": "To discover Memento", "freeF1": "Up to 100 notes", "freeF2": "3 notebooks", "freeF3": "100 AI credits / month", "freeF4": "Search, chat, tags (via credits)", "freeF5": "7-day history", "freePlanDesc": "Perfect to discover Memento", "freePrice": "Free", "proDescription": "For consultants and freelancers", "proFeature5": "30-day history", "proFeature6": "Email support", "proCta": "Upgrade to Pro", "businessFeature5": "External tools", "businessFeature6": "Priority support", "businessCta": "Upgrade to Business", "recommended": "Recommended", "instantActivation": "Instant activation", "secureDesc": "Secure payments by Stripe", "secureTransactions": "Secure transactions", "satisfactionGuarantee": "30-day satisfaction guarantee", "cancelConfirm": "Are you sure you want to cancel your subscription? You will keep your Pro/Business access until the end of the current billing period.", "cancelSuccess": "Your subscription has been successfully cancelled. It will end at the end of the current billing period.", "invoices": "Invoices & Receipts", "invoiceAmount": "Amount", "invoiceDate": "Date", "invoiceNumber": "Number", "invoiceStatus": "Status", "noInvoices": "No invoices available.", "checkoutFailed": "Failed to start checkout. Please try again.", "portalFailed": "Failed to open billing portal.", "cancelFailed": "Failed to cancel subscription.", "downloadPdf": "Download PDF", "fetchStatusFailed": "Failed to fetch billing status", "fetchQuotasFailed": "Failed to load credit usage", "fetchInvoicesFailed": "Failed to load billing history.", "savePercent": "Save ~17%", "startTrialCta": "Start {days}-day free trial", "trialFeature": "{days}-day free trial (card required)", "trialEndsOn": "Your free trial ends on {date}. You will then be billed automatically.", "trialEndsLabel": "Trial ends" }, "quotaPaywall": { "title": "Out of AI credits", "description": "Your credit balance is too low for this action ({feature}). All AI actions share the same balance. Upgrade your plan or use your own API key.", "descriptionWithCost": "You have {remaining} credit(s) left; this action ({feature}) costs {cost}. Upgrade your plan or use your own API key.", "upgrade": "View plans", "useOwnKey": "Use my own key", "later": "Later", "closingIn": "Closing in {n}s" }, "landing": { "nav": { "products": "Product", "secondBrain": "Second Brain", "echo": "Memory Echo", "agents": "Agents", "pricing": "Pricing", "login": "Log in", "cta": "Start free", "openMenu": "Open menu", "closeMenu": "Close menu", "language": "Language" }, "hero": { "badge": "Second Brain", "eyebrow": "Not another notes app — a living second brain", "headline": "Your second brain.", "headlineAccent": "It remembers what you forgot.", "subtitle": "Memento is your Second Brain: it connects ideas across months, surfaces hidden links, and turns notebooks into a system you can search, brief, and act on every morning.", "cta": "Build my second brain", "ctaHint": "Free to start · Google sign-in · No credit card", "imageAlt": "Memento Second Brain workspace", "echoLive": "Memory Echo", "echo0": "\"Linked to your March design brief — same constraint, new angle.\"", "echo1": "\"This echoes a research note from 8 months ago. Want to open it?\"", "echo2": "\"Three notebooks touch this idea. Here's the bridge note.\"" }, "trust": { "trust0": "Your Second Brain, not a folder dump", "trust1": "Bring your own AI keys", "trust2": "15 languages, including Persian RTL", "trust3": "Agents that write into your notebooks" }, "pain": { "label": "The real problem", "title": "You don't need more notes. You need a second brain.", "desc": "Folders fill up. Search fails. Ideas die in silence. A Second Brain finds the threads between what you capture — so yesterday's thinking powers tomorrow's decisions.", "secondBrain": "That's Memento: a Second Brain that connects itself while you write." }, "moments": { "echo": { "eyebrow": "Memory Echo", "title": "The moment your Second Brain talks back.", "desc": "While you write, Memento finds links across your notebooks — not just matching words, real connections. You can open both notes side by side.", "card0Label": "Just detected", "card0": "\"Your note on prices echoes last autumn's competitor analysis.\"", "card1Label": "Bridge", "card1": "Shared theme: positioning under constraint", "card2Label": "Action", "card2": "Open both notes side by side — keep writing" }, "dashboard": { "eyebrow": "This morning", "title": "A morning that tells you what matters.", "desc": "Your morning briefing: next paths, today's list, discoveries, reviews — cards you arrange.", "w0Label": "Next paths", "w0": "3 actions from your last note", "w1Label": "Daily review", "w1": "Inbox · Discoveries · Cards", "w2Label": "Memory Echo", "w2": "2 new connections overnight", "w3Label": "Agents", "w3": "1 suggestion ready to run" }, "insights": { "eyebrow": "Connections", "title": "See how your notes connect.", "desc": "Related themes and bridge notes — a living map of your links.", "chip": "Map of links" }, "revision": { "eyebrow": "Revision", "title": "Remember on purpose.", "desc": "Create review cards from any note. They come back at the right time.", "card": "What connects Memory Echo to your notes?", "badge": "At the right time" } }, "how": { "title": "Three steps. Then it builds on itself.", "s0": { "title": "Capture freely", "desc": "Write like in a notebook: titles, lists, tables. Save a web page when you need it." }, "s1": { "title": "Let it connect", "desc": "Memory Echo and search weave links you didn't plan. Your past work becomes fuel." }, "s2": { "title": "Act every morning", "desc": "Morning paths, agents, and review cards turn a pile of notes into momentum." } }, "agents": { "label": "AI agents", "title": "Delegate the heavy lifting.", "desc": "Research, monitoring, presentations, diagrams — agents that write into your notebooks, not another chat you'll forget.", "scraper": { "title": "Monitor", "desc": "Addresses and feeds become notes, with the useful images." }, "researcher": { "title": "Researcher", "desc": "Deep questions, sources, structured notes." }, "slideGen": { "title": "Slides", "desc": "Your notes become a presentation, or a page to walk through." }, "monitor": { "title": "Observer", "desc": "It watches your notebooks: trends and new ideas." }, "diagramGen": { "title": "Diagram", "desc": "Your ideas become mind maps and flows." }, "custom": { "title": "Custom", "desc": "Your roles, sources, and schedules." } }, "byok": { "label": "Free to switch", "title": "Your keys. Your models. Your Second Brain.", "desc": "Memento credits, or your own provider. Switch in a click — the product stays yours.", "pointCredits": "Memento credits, if you want it simple", "pointProvider": "Or connect your own provider", "pointYours": "Your key stays with you — it is never shown here" }, "pricing": { "label": "Pricing", "title": "Start free. Grow your Second Brain when it clicks.", "desc": "Clear tiers — from first notes to organizational memory.", "monthly": "Monthly", "annual": "Annual", "perMonth": "/mo", "perMonthAnnual": "/mo, billed yearly", "perUser": "+ €3.90/user", "perUserAnnual": "+ €2.90/user, yearly", "savePercent": "Save ~17%", "proMonthly": "€9.90", "proAnnualMonthly": "€8.25", "businessMonthly": "€29.90", "businessAnnualMonthly": "€24.92", "enterprisePrice": "Custom", "popular": "Most chosen", "basic": { "name": "Basic", "desc": "Start your Second Brain.", "cta": "Start free", "feature0": "Up to 100 notes", "feature1": "3 notebooks", "feature2": "100 AI credits / month", "feature3": "Search, chat, tags (via credits)", "feature4": "7-day history" }, "pro": { "name": "Pro", "desc": "For serious thinkers.", "cta": "Go Pro", "feature0": "Unlimited notes", "feature1": "1,000 AI credits / month", "feature2": "Your own provider keys", "feature3": "Agents (use credits)", "feature4": "30-day history", "feature5": "Email support" }, "business": { "name": "Business", "desc": "Team Second Brain.", "cta": "Choose Business", "feature0": "10 collaborators", "feature1": "4,000 AI credits / month", "feature2": "Your own keys · {count} providers", "feature3": "Agents & brainstorm (credits)", "feature4": "External tools", "feature5": "Priority support" }, "enterprise": { "name": "Enterprise", "desc": "Org-wide Second Brain.", "cta": "Talk to us", "feature0": "Unlimited AI credits or dedicated pool", "feature1": "Everything in Business", "feature2": "Single sign-on for the whole team", "feature3": "Activity log and guaranteed response time", "feature4": "Dedicated support", "feature5": "Guided setup" }, "basicPrice": "Free", "trialBadge": "{days}-day free trial", "trialFeature": "{days}-day free trial (card required)", "trialCta": "Start {days}-day free trial" }, "cta": { "title": "Stop losing your best ideas.", "desc": "Open Memento. Write one note. Watch your Second Brain find the ones you forgot.", "button": "Create my free Second Brain" }, "footer": { "desc": "Your AI-amplified Second Brain — it connects itself.", "rights": "All rights reserved.", "product": { "title": "Product", "link0": "Second Brain", "link1": "Pricing", "link2": "Agents", "link0Href": "#product", "link1Href": "#pricing", "link2Href": "#agents" }, "community": { "title": "Account", "link0": "Log in", "link1": "Sign up", "link0Href": "/login", "link1Href": "/register" }, "legal": { "title": "Legal", "link0": "Privacy", "link1": "Terms", "link2": "Cookies", "link0Href": "/privacy", "link1Href": "/privacy", "link2Href": "/privacy" } } }, "noteHistory": { "title": "Title", "content": "Content", "untitled": "Untitled", "emptyState": "No versions available", "selectVersion": "Select a version to preview its content", "currentVersion": "current" }, "graphView": { "title": "Graph View", "notesCount": "{count} notes", "connectionsCount": "{count} connections", "visibleConnections": "{count} visible", "globalView": "Fit to View", "searchPlaceholder": "Filter...", "noNotesFound": "No notes found", "notebooks": "Notebooks", "resetFilter": "Reset", "resetFocus": "Full graph", "exploreFromNode": "Explore from this note", "linkFilters": "Link filters", "semanticThreshold": "Semantic threshold", "edgeTypes": { "explicitLink": "Note links (manual)", "semanticEcho": "Memory Echo (AI)", "titleMention": "Title mention", "sharedLabel": "Shared tags", "jaccard": "Keyword similarity" }, "relationshipTypes": "Relationship Types", "connections": "{count} connection", "connectionsPlural": "{count} connections", "preview": { "openNote": "Open note", "emptyNote": "Empty note", "tags": "Tags", "noTags": "No tags", "words": "{count} words", "chars": "{count} chars", "created": "Created on", "updated": "Updated on" } }, "insightsView": { "title": "Connections", "toggleMenu": "Show or hide the menu", "subtitle": "See how your notes connect", "resync": "Update", "mapping": "Mapping…", "loading": "Loading your notes…", "mappingTitle": "Mapping your knowledge…", "mappingHint": "This can take one to three minutes. You can keep browsing; the page will update when it's done.", "analyzeNow": "Update themes", "emptyNeedMoreNotes": "Add {count} more notes to group your themes (minimum 10).", "embeddingsHint": "Only {indexed} of {total} notes are indexed for AI. Analysis will prepare them first (this may take several minutes).", "vsGraphHint": "This is not the same as “Link map” (network icon in the sidebar): here, AI groups your notes by theme.", "openGraphMap": "Open link map", "analysisFailed": "Analysis failed. Check your AI settings or try again.", "analysisSuccess": "Analysis complete: {count} themes detected.", "analysisNoClusters": "No themes detected yet.", "staleResults": "Showing results from the last analysis. Many notes have changed since then — click Update.", "semanticGraphLegend": "Detected themes overview (not the link map)", "fitGraphView": "Fit view", "legendFilterPlaceholder": "Filter themes…", "legendShowMore": "+{count} more", "legendShowLess": "Show less", "dashboardFilterPlaceholder": "Filter bridge notes, themes…", "graphPreviewHint": "Theme overview: the number is how many notes belong here. Hover a dot for the title, click to open. Full list on the right.", "graphMoreNotes": "+{count} more in this theme", "graphNotesLabel": "notes", "clusterFallback": "Theme {index}", "unclusteredNotes": "{count} notes not assigned to a theme (hidden from graph).", "emptyTitle": "Discover your knowledge clusters", "emptyDescription": "Click Update to analyze your notes and find hidden connections", "stats": { "clusters": "Themes", "bridgeNotes": "Bridge notes", "themesSubtitle": "detected themes", "bridgesSubtitle": "cross-theme notes" }, "clusters": { "title": "Semantic clusters", "notesCount": "{count} notes", "centralNotes": "Central notes", "emptyCluster": "No notes in this cluster" }, "bridgeNotes": { "title": "Bridge notes", "score": "Score: {score}%", "affinity": "Affinity {score}%", "scoreHint": "Mean semantic affinity to the two themes this note bridges (cosine similarity).", "moreThemes": "+{count}", "needsResync": "Click Update to refresh theme pairs.", "empty": "No significant bridge notes yet. Deepen your research to find new connections." }, "suggestions": { "title": "Missing links", "bridging": "Link {clusterA} & {clusterB}", "emptyTitle": "No connection suggestions yet", "emptyDescription": "No strong near-miss theme pairs right now — or click Update.", "createNote": "Create bridge note", "created": "Bridge note created", "createError": "Could not create the bridge note", "dismiss": "Dismiss", "dismissError": "Could not dismiss this suggestion" }, "unknownNote": "Untitled note", "viewSplit": "Split", "viewGraph": "Graph", "viewDashboard": "Dashboard", "isolatedClusters": { "title": "Isolated clusters ({count})", "badge": "Not connected", "empty": "All your semantic clusters are interconnected!" }, "focusCluster": { "title": "Cluster Focus Active", "description": "This thematic cluster gathers {count} complementary notes. Click on a note to access it directly:", "close": "Close" }, "badgeDominant": "Dominant", "bridgeCount": "bridge(s)", "echoTitle": "You keep returning to this idea", "tipClusters": "AI grouped your notes by semantic affinity — regardless of which notebook they're in. Each theme represents a subject your mind keeps returning to.", "tipClustersAction": "Click a theme to see its notes. Click a note to open it.", "tipBridgeNotes": "A bridge note sits at the crossing of two themes (semantic brokerage). We keep the strongest pair — not every weak theme touch.", "tipBridgeNotesAction": "Click a note to open it and understand the connection.", "tipEcho": "Memory Echo detects two notes written at very different times that cover the same idea. Your mind revisited a thought without realising it.", "tipEchoAction": "Two notes, same idea, different moments. Click to explore.", "tipSuggestions": "Suggested only for near-miss theme pairs (link prediction): related enough to deserve a bridge, not forced metaphors. Create the note if the shared object or method is real.", "tipSuggestionsAction": "Click 'Create bridge note' to write the note and open it immediately.", "tipIsolated": "These themes are isolated: no note connects them to the others. Maybe you're exploring a fragile idea? One synthesis note would be enough to create the link.", "tipIsolatedAction": "These themes have no note connecting them to the rest of your thinking.", "recalcSystem": { "title": "Recalculation system", "statusSynced": "Synced", "scheduledCron": "Scheduled", "lastSync": "Last sync" }, "resetFocus": "Reset focus", "listView": "List", "listFilterPlaceholder": "Filter themes or notes…", "listFilterEmpty": "No theme or note matches this filter.", "listFilterMatch": "matches", "listSortLabel": "Sort", "listSortSize": "By size", "listSortBridges": "By bridges", "listSortAlpha": "A–Z", "graphAriaLabel": "Semantic network: {clusters} clusters, {notes} notes, {bridges} bridge notes. Switch to List view for accessible navigation.", "listAriaLabel": "Accessible cluster list with notes and bridge connections" }, "consent": { "banner": { "title": "Cookie Preferences", "description": "We use cookies to improve your experience. Strictly necessary cookies are always active, but you can opt-in to anonymous analytics.", "acceptEssentials": "Accept Essentials Only", "rejectNonEssential": "Reject Non-Essential", "manage": "Manage Preferences", "acceptAll": "Accept All" }, "preferences": { "title": "Consent Settings", "description": "Customize your data privacy preferences. We respect your choice and store no tracking cookies without your consent.", "necessaryTitle": "Strictly Necessary Cookies", "necessaryDesc": "These cookies are required to authenticate your session, save your language and theme preferences. They cannot be turned off.", "alwaysOn": "Always On", "analyticsTitle": "Anonymous Analytics", "analyticsDesc": "Help us improve Memento by sending completely anonymous usage statistics. No personal data is ever tracked.", "cancel": "Cancel", "save": "Save Preferences", "saved": "Preferences updated successfully." }, "ai": { "modalTitle": "AI Processing Consent Required", "modalDescription": "To analyze your notes, PDFs, or brainstorm sessions, Memento securely transmits this data to third-party AI APIs (OpenAI, Gemini, DeepSeek). We enforce a strict zero-data-retention policy. By accepting, you authorize this processing.", "zeroRetentionTitle": "Zero Data Retention", "zeroRetentionDesc": "All outbound requests enforce zero-data-retention flags to safeguard your intellectual property.", "rememberMe": "Remember my choice (do not ask again)", "acceptButton": "Approve and continue", "rejectButton": "Reject", "aborted": "AI processing cancelled (consent rejected).", "revocationTitle": "GDPR AI Processing Consent", "revocationDescription": "Optional permission to send note content to third-party AI providers when you explicitly use AI features.", "revokeButton": "Revoke Consent", "grantButton": "Grant consent", "statusActive": "Active", "statusInactive": "Not granted", "helpAriaLabel": "What does AI consent mean?", "helpTooltip": "Memento does not sell your data. This consent only applies when you trigger an AI action (titles, tags, chat, reformulation). Without it, the rest of the app works normally.", "whatItMeansTitle": "What does this mean?", "inactiveHint": "Without consent, only AI-powered features are disabled. You can still create, edit, and organize notes as usual.", "noCommercialUse": "Memento does not sell or monetize your personal data.", "affectedFeatures": "AI features affected: title suggestions, tags, assistant chat, reformulation, Memory Echo, and similar tools.", "dataPortabilityHint": "You can export or delete all your data at any time (Settings → Data).", "dataPortabilityLink": "Export my data", "revoked": "Consent not granted", "revokedToast": "AI processing consent successfully revoked.", "complianceBadge": "GDPR compliance", "auditFailed": "Could not record your consent. Please try again.", "requiredToast": "Enable AI processing in Settings → AI to use this feature.", "settingsBanner": "To use this feature, enable AI processing below and click « Grant consent »." } }, "account": { "deleteAccount": { "sectionTitle": "Right to be Forgotten (GDPR)", "sectionDescription": "Permanently and irreversibly delete your account and all associated data.", "whatWillBeDeleted": "The following will be permanently deleted:", "item1": "All notes, notebooks, and attachments", "item2": "All pgvector semantic embeddings", "item3": "All your provider keys", "item4": "All AI conversations and brainstorm sessions", "item5": "Quota and usage history", "item6": "Your Stripe subscription (if active)", "item7": "Your account and login credentials", "buttonLabel": "Delete My Account", "dialogTitle": "Confirm Account Deletion", "dialogDescription": "This action is irreversible. Type your email address to confirm.", "emailPlaceholder": "Your email address", "confirmButton": "Permanently Delete Account", "cancelButton": "Cancel", "deleting": "Deleting...", "successRedirect": "Your account has been successfully deleted.", "errorFailed": "Deletion failed. Please try again." } }, "attachments": { "title": "Attachments", "addToNote": "Add to note", "analyzing": "Analyzing...", "askPlaceholder": "Ask a question about this document...", "askQuestions": "Ask questions", "deleted": "Attachment deleted", "docExpert": "Document expert", "docQaWelcome": "Ask questions about this document", "maxSize": "Max size", "onlyPdf": "PDF only", "processingFailed": "Processing failed", "remove": "Remove", "thinking": "Thinking...", "uploaded": "Uploaded", "uploadError": "Upload error", "uploadFailed": "Upload failed", "uploading": "Uploading..." }, "blockAction": { "delete": "Delete", "duplicate": "Duplicate", "moveUp": "Move block up", "moveDown": "Move block down", "moveUpFirst": "This is already the first block", "moveDownLast": "This is already the last block", "copyContent": "Copy content", "contentCopied": "Content copied!", "emptyBlock": "This block is empty", "turnInto": "Turn into", "turnInto_paragraph": "Text", "turnInto_heading1": "Heading 1", "turnInto_heading2": "Heading 2", "turnInto_heading3": "Heading 3", "turnInto_bulletList": "Bullet List", "turnInto_orderedList": "Numbered List", "turnInto_taskList": "Task List", "turnInto_blockquote": "Quote", "turnInto_codeBlock": "Code Block", "turnInto_database": "Inline database", "copyRef": "Copy block reference", "copied": "Reference copied!", "copyRefFailed": "Could not copy block reference", "copyRefNoNote": "Save the note before copying a block reference", "copyRefUnsupported": "This block type cannot be referenced yet", "createDiagram": "Create diagram", "createDiagramDesc": "Create an Excalidraw diagram from this block", "createDiagramCostHint": "≈ 4 AI credits", "createDiagramLoading": "Generating Excalidraw diagram by AI...", "createDiagramSuccess": "Diagram generated and inserted successfully!", "createDiagramEmpty": "The block text is empty or too short to generate a diagram." }, "smartPaste": { "prompt": "Paste this block reference as:", "liveBlock": "Connected block (live)", "plainLink": "Plain text / link", "unknownNote": "Untitled note" }, "liveBlock": { "connectedNote": "Connected note", "sourceDisconnected": "Source disconnected", "statusLive": "LIVE", "statusOffline": "OFFLINE", "statusDisconnected": "DISCONNECTED", "detachLink": "Unlink block", "detachHelp": "Convert this block to normal text in this note", "openSource": "Open", "removeBlock": "Remove block", "emptyContent": "(empty block)" }, "notePeek": { "label": "Linked note", "panelLabel": "Source note preview", "close": "Close preview", "openFully": "Open full screen", "openFullyHelp": "Replace the current note with this one", "readOnlyHint": "Read-only preview — open full screen to edit.", "loadFailed": "Could not open the linked note preview.", "loading": "Loading…", "untitled": "Untitled" }, "structuredViewBlock": { "insertLabel": "Structured View", "insertDesc": "Embed your notebook's structured data", "noSchema": "This notebook has no structured view yet. Set one up from the notebook header.", "noNotebook": "This block requires a notebook. Move this note to a notebook first.", "openInNotebook": "Open in notebook", "displayModeTable": "Table", "displayModeGallery": "Gallery", "loadError": "Failed to load structured data.", "retry": "Retry", "deprecatedBlock": "Outdated block removed.", "selectNotebook": "Link to a notebook", "noNotebookDesc": "This block displays the structured view of a notebook. Choose the notebook to link:", "chooseNotebook": "Choose a notebook", "changeNotebook": "Change notebook", "change": "Change", "localDbTitle": "Standalone Database", "echoPopoverTitle": "Semantic Resonances 🔮", "noEchoFound": "No nearby notes found.", "echoUpgradeText": "Convert this table to a notebook to activate Memento's neural analysis.", "echoLoading": "Looking for nearby notes…", "analyticsTitle": "Analytics & Insights", "analyticsNoData": "No analysis data available.", "analyticsCompletion": "Completion Rate", "analyticsDistribution": "Distribution", "analyticsTotalRows": "Total Rows", "analyticsShort": "Analytics", "turnIntoLabel": "Inline database", "columnAdded": "Column added!", "columnRemoved": "Column removed", "propertyName": "Property {{index}}", "convertNotebookNameRequired": "Please enter a name for the notebook.", "convertNotebookError": "Could not create the notebook.", "convertSchemaError": "Could not enable structured view.", "convertPropertyError": "Could not add property.", "convertNoteError": "Could not create note.", "convertSuccess": "Conversion complete! Linked notebook created.", "convertGenericError": "Something went wrong.", "echoNameRequired": "Enter a name for this row first to look for nearby notes.", "echoSearchError": "An error occurred while searching.", "echoNoMatch": "No matching notes containing \"{{query}}\" were found in your workspace.", "convertToNotebook": "Convert to notebook", "linkToNotebook": "Link to a notebook", "convertModalTitle": "Convert to structured notebook", "convertModalDesc": "This local table will become a real notebook. Each row becomes a note and your columns become reusable properties.", "convertNotebookNameLabel": "New notebook name", "convertNotebookNamePlaceholder": "e.g. My reading list, Project tracker", "cancel": "Cancel", "converting": "Converting…", "createNotebook": "Create notebook", "deleteColumn": "Delete column", "addColumn": "Add column", "deleteRow": "Delete row", "semanticEcho": "Notes that meet", "close": "Close", "insertCitation": "Insert link in editor", "keywordMatch": "Keyword", "emptyTable": "No rows in the table.", "addRow": "Add row", "colTypeText": "Text", "colTypeCheckbox": "Checkbox", "colTypeSelect": "Select", "selectOptionsPlaceholder": "Options separated by commas", "namePlaceholder": "Enter a name…", "or": "or", "createLocalDb": "Create a standalone local database", "switchToLocalDb": "Switch to local database", "untitled": "Untitled", "citationInserted": "Link inserted in the editor!", "notesLoadError": "Error loading notes", "defaultOption1": "Option 1", "defaultOption2": "Option 2" }, "onboarding": { "welcome_title": "Your AI-augmented memory", "welcome_subtitle": "Memento remembers what you forget.", "welcome_cta": "Get started", "skip": "Skip", "step_notes_title": "Your notes", "step_notes_empty": "You have no notes yet. Import yours or start with examples.", "step_notes_import": "Import my notes", "step_notes_demo": "Create 5 example notes", "step_notes_has_notes": "You already have {count} notes. Let's discover the magic.", "step_notes_cta": "My notes are ready", "step_aha_title": "Find what you forgot", "step_aha_subtitle": "Type a question. Find a note you forgot.", "step_aha_placeholder": "notes about productivity...", "step_aha_cta": "Explore Memento", "progress": "{current} of {total}", "creating_demo_notes": "Creating example notes...", "demo_notes_ready": "5 example notes created!", "badge_credits": "⚡ {count} credits left", "badge_upgrade": "Upgrade to Pro →", "no_results": "No results — try another query.", "search_credit_used": "1 credit used (search)", "quota_exceeded": "Out of AI credits — upgrade your plan or use your own API key.", "step_aha_search_button": "Search", "step_aha_search_aria": "Search your notes", "step_notes_hint": "💡 These notes will power the AI search demo in the next step.", "step_features_title": "Your AI superpowers", "step_features_subtitle": "Choose where to start.", "step_features_cta": "Let's go!", "feature_search_title": "Search by meaning", "feature_search_desc": "Find any note by meaning, not just keywords.", "feature_flashcards_title": "Review cards", "feature_flashcards_desc": "Create review cards from your notes, in one click.", "feature_brainstorm_title": "AI Brainstorm", "feature_brainstorm_desc": "AI-powered collaborative brainstorming sessions.", "feature_chat_title": "Chat with your notes", "feature_chat_desc": "Ask questions to your personal knowledge base.", "feature_insights_title": "Connections", "feature_insights_desc": "Discover hidden connections between your ideas.", "feature_export_title": "Markdown export", "feature_export_desc": "Import and export your notes in standard Markdown format.", "welcome_title_name": "Hello {name} 👋", "import_formats": "Accepted formats: .md, .txt", "import_error": "Could not import some files. Please try again.", "import_notes_ready": "{count} note(s) imported!", "action_write_title": "Write your first real note", "action_write_desc": "Create a note and start capturing your ideas.", "action_flashcards_title": "Create your first review cards", "action_flashcards_desc": "Open a note, then the review-cards button at the top of the page.", "action_brainstorm_title": "Start an AI brainstorm", "action_brainstorm_desc": "Explore your ideas with a dedicated AI agent.", "action_try": "Try", "step_features_cta_all": "All done — let's dive in!", "action_write_where": "Close this → click \"+ New note\" in the sidebar", "action_flashcards_where": "Close this, open a note, then the review-cards button at the top of the page.", "action_brainstorm_where": "Close this → \"Canvas\" section in the sidebar", "pill_resume": "✨ Resume tour", "action_done": "Tried!", "editor_hints_title": "Editor tips", "editor_hints_got_it": "Got it!", "hint_slash_title": "\"/\" command — insert blocks", "hint_slash_desc": "In the editor, type \"/\" to open the block menu: heading, list, code block, table, to-do list, and AI commands (Clarify, Shorten, Improve, Expand).", "hint_ai_title": "Built-in AI assistant", "hint_ai_desc": "Click the ✨ button in the toolbar to open the AI panel — ask questions, summarize, rewrite, or brainstorm directly in your note.", "hint_version_title": "Version history", "hint_version_desc": "Click the ⓘ button in the toolbar → \"Versions\" tab. Enable versioning, then save and restore snapshots of your note at any time.", "hint_flashcards_title": "Create review cards", "hint_flashcards_desc": "At the top of the note, click the review-cards button. They come back at the right time.", "hint_links_title": "Links between notes", "hint_links_desc": "Type \"[[\" in the editor to search and link to another note. Linked notes appear as backlinks at the bottom of the note.", "hint_create_note_title": "Create a note", "hint_create_note_desc": "Click the \"+\" button in the sidebar or press Ctrl+N to create a new note. Then start writing.", "hint_flip_title": "Flip the card", "hint_flip_desc": "Press Space (or click the card) to flip it and reveal the answer.", "hint_rate_keys_title": "Rate with keyboard", "hint_rate_keys_desc": "After flipping, press 1 (Hard), 2 (Difficult), 3 (Good) or 4 (Easy). The next review is scheduled at the right time.", "hint_generate_from_note_title": "Generate from a note", "hint_generate_from_note_desc": "Open a note, then the review-cards button at the top of the page.", "hint_brainstorm_start_title": "Start with an idea", "hint_brainstorm_start_desc": "Type any concept or question in the input field and press Enter. The AI will generate a set of ideas around it.", "hint_brainstorm_deepen_title": "Deepen an idea", "hint_brainstorm_deepen_desc": "Click on any idea card to expand it with sub-ideas and explore it further.", "hint_brainstorm_export_title": "Export your session", "hint_brainstorm_export_desc": "When done, export the entire brainstorm session as a structured note saved to your notebook.", "hint_insights_clusters_title": "Note clusters", "hint_insights_clusters_desc": "Your notes are automatically grouped into thematic clusters. Click a cluster to explore the notes it contains.", "hint_insights_bridge_title": "Bridge notes", "hint_insights_bridge_desc": "Bridge notes connect multiple clusters. They are highlighted because they hold your knowledge graph together.", "hint_insights_refresh_title": "Refresh clusters", "hint_insights_refresh_desc": "If you've added new notes, click the refresh button to recalculate the clusters with the latest content." }, "integrations": { "title": "Integrations", "gmail": { "title": "Gmail", "description": "Automatically capture flights, packages and subscriptions from your emails", "connect": "Connect Gmail", "disconnect": "Disconnect", "scanNow": "Scan now", "connected": "Gmail connected!", "disconnected": "Gmail disconnected", "scanDone": "{created} note(s) created from emails", "recentCaptures": "{count} capture(s) this week", "helpTitle": "How does Gmail work?", "helpStep1": "Connect Gmail — you'll be redirected to Google to authorize read-only access.", "helpStep2": "Memento scans recent emails for flights, packages and subscription renewals.", "helpStep3": "Each match becomes a note with an automatic reminder when relevant.", "helpStep4": "Scan runs daily in the background; you can also trigger a manual scan here." }, "calendarConnected": "Google Calendar connected!", "errorWith": "Error: {{error}}", "readwiseError": "Readwise error", "readwiseConnected": "Readwise connected — {{created}} notes created, {{updated}} updated", "readwiseConnectError": "Readwise connection error", "syncError": "Sync error", "readwiseSynced": "Readwise sync — {{created}} created, {{updated}} updated", "syncFailed": "Synchronization failed", "readwiseDisconnected": "Readwise disconnected", "noEvents": "No events today", "eventsLoadError": "Failed to load events", "meetingNoteCreated": "Meeting note created: {{summary}}", "createNoteError": "Failed to create note", "calendarDisconnected": "Google Calendar disconnected", "gmailScanError": "Gmail scan error", "calendarInfo": "How does Google Calendar work?", "readwiseInfo": "How does Readwise work?", "readwiseTokenPlaceholder": "Readwise token…", "connected": "Connected", "notConnected": "Not connected", "connectCalendar": "Connect Google Calendar", "todayEvents": "Today's events", "disconnect": "Disconnect", "connect": "Connect", "syncNow": "Sync now", "addNote": "+ Note", "open": "Open", "moreComing": "More integrations coming soon — Zapier, GitHub, Notion import…", "calendarDesc": "Access your events and create meeting notes", "readwiseDesc": "Import highlights from books, articles, and Kindle", "lastSync": "Last sync:", "createdLabel": "notes created", "updatedLabel": "updated", "calendarHelpStep1": "Click \"Connect Google Calendar\" — you will be redirected to Google to authorize access.", "calendarHelpStep2": "Once connected, come back here and click \"Today's events\" to see your agenda.", "calendarHelpStep3": "On each event, click \"+ Note\" to automatically create a meeting note with a template (Agenda / Notes / Actions).", "calendarHelpStep4": "The note opens directly in Memento — add your notes in real time during the meeting.", "readwiseHelpStep1": "Copy your Readwise access token.", "readwiseHelpStep2": "Paste it in the field below and click \"Connect\". The first sync imports all your books and articles.", "readwiseHelpStep3": "Each book becomes a note in a \"Readwise 📚\" notebook — with all your highlights organized.", "readwiseHelpStep4": "To update with new highlights, come back here and click \"Sync now\".", "readwiseHelpStep5": "Tip: create review cards from a Readwise note (review-cards button at the top of the note) to review your readings." }, "homeDashboard": { "title": "Dashboard", "quickCapture": "Quick Capture", "quickCapturePlaceholder": "An idea, a thought… Enter sends it to the inbox.", "captureGoesToFile": "Goes to the inbox.", "captureSend": "Send to the inbox", "captured": "Added to the inbox.", "captureError": "Failed", "mindMap": "Mind map", "fullMap": "Full map →", "mindMapEmpty": "No themes yet. AI groups your notes by topic.", "mindMapOpen": "Open insights map →", "mindMapUnavailable": "Mind map unavailable.", "themes": "Themes", "bridges": "bridges", "aiEchoes": "AI echoes", "bridgeNote": "Bridge note", "theme": "Theme", "suggestedResearch": "Suggested research", "dismiss": "Dismiss", "createAgent": "Create agent", "agentsEmpty": "No research agents suggested yet. Keep writing — Memento will propose synthesis topics when your notes cluster.", "agentCreated": "Agent created and started", "agentCreatedInCard": "The agent is ready.", "agentOpenCreated": "Open the agent", "agentSeeNextSuggestion": "See the next one", "agentFailed": "Failed to create agent", "notes": "notes", "continue": "Continue", "noRecentNotes": "No recent notes.", "resumeEmptyHint": "Your recent notes will show up here. Capture an idea or open a notebook to get started.", "resumeEmptyCta": "Capture an idea", "resumeAlso": "Also recently", "untitled": "Untitled", "inbox": "Inbox", "sentiment": "Sentiment", "analyzing": "Analyzing…", "notEnoughNotes": "Not enough notes this week.", "toReview": "To review", "allCaughtUp": "All caught up.", "remindersEmpty": "No reminders for today.", "remindersOpenAll": "See reminders", "toOrganize": "to organize", "inboxSeeAll": "See all {count}", "inboxOpenList": "Open the inbox", "inboxEmpty": "Inbox is empty.", "review": "Review", "cardsDue": "cards due", "reminders": "Reminders", "aiFound": "AI found", "new": "new", "noConnections": "No connections yet. AI analyzes your notes.", "match": "Match", "semanticConnection": "Closeness", "suggestedBridge": "Link {clusterA} & {clusterB}", "createBridgeNote": "Create bridge note", "bridgeNoteCreated": "Bridge note created", "agentDiscovery": "Agent", "connectionBetween": "Link between \"{note1}\" and \"{note2}\"", "intelFilterAll": "All", "intelFilterConnections": "Links", "intelFilterBridges": "Bridges", "intelFilterIdeas": "Ideas", "intelFilterAgents": "Agents", "intelFilterEmpty": "Nothing in this category yet.", "intelOpenNote": "Open", "intelCompare": "Compare", "intelMissingLink": "Missing link", "intelViewAgent": "View agent", "intelAgentNoResult": "Research complete — see details.", "intelPrev": "Previous", "intelNext": "Next", "intelGoTo": "Discovery {index}", "intelPosition": "{current} / {total}", "resumeOpen": "Resume", "pulseInbox": "{count} to organize", "pulseReview": "{count} to review", "pulseDiscoveries": "{count} discoveries", "pulseClear": "All caught up — enjoy your session.", "widgetCustomize": "Customize", "widgetDone": "Done", "widgetAdd": "Add widget", "widgetReset": "Reset layout", "widgetResetDone": "Default dashboard restored.", "layoutEmptyTitle": "Your dashboard is empty", "layoutEmptyHint": "Restore the recommended layout to get started with your second brain.", "widgetCatalog": "Widget catalog", "widgetCatalogTitle": "Customize your dashboard", "widgetActive": "Visible", "widgetAddShort": "Add", "widgetOpen": "Open", "widgetDrag": "Drag widget", "widgetHide": "Hide widget", "widgetStatsBridges": "Bridges", "widgetStatsNotes": "Notes", "widgetAgentActivityEmpty": "No agent activity in the last 48 hours.", "widgetPinnedEmpty": "No pinned notes yet.", "pinnedNoNotebook": "No notebook", "widgetActivityHint": "Notes edited over the last 90 days.", "activityHeatmapTitle": "Notes edited", "activityHeatmapLast90": "Last 90 days", "activityHeatmapTotal": "{count} notes · 90 days", "activityHeatmapDay": "{count} notes", "activityHeatmapDayOne": "1 note", "activityHeatmapDayNone": "No notes that day", "activityHeatmapHint": "Hover or click a square to see the day", "widgetUsageHint": "Single AI credit balance (all features).", "briefingLoadError": "Could not load the dashboard.", "briefingRetry": "Retry", "widgetCategories": { "essential": "Essentials", "paths": "Paths & review", "cognition": "Knowledge map", "productivity": "Productivity", "agents": "AI & agents" }, "widgets": { "capture": "Quick capture", "resume": "Resume here", "intelligence": "AI found", "reminders": "Reminders", "mind-map": "Mind map", "agents": "Suggested research", "sentiment": "Sentiment", "inbox": "Inbox", "revision": "Review cards", "stats": "Themes and notes", "agent-activity": "Agent activity", "gmail": "Gmail captures", "activity": "Writing activity", "pinned": "Pinned notes", "usage": "AI quota", "next-paths": "Next paths", "daily-review": "Daily review", "open-loops": "Open loops", "daily-note": "Daily journal", "link-suggestions": "Link suggestions", "bridges": "Bridge opportunities", "flashcards-progress": "Learning progress" }, "widgetDescriptions": { "capture": "Capture a thought instantly into your inbox.", "resume": "Pick up your most recent notes where you left off.", "intelligence": "Notes that meet, bridging ideas, and agent results.", "reminders": "Upcoming note reminders at a glance.", "mind-map": "Theme clusters sized by note volume.", "agents": "AI-suggested research agents for your topics.", "sentiment": "Emotional tone of your notes this week.", "inbox": "Notes waiting to be filed into notebooks.", "revision": "Cards due today. They come back at the right time.", "stats": "Themes, bridging notes, and indexed notes.", "agent-activity": "Latest completed agent runs.", "gmail": "Email captures synced from Gmail.", "activity": "GitHub-style heatmap of your writing rhythm.", "pinned": "Quick access to your pinned notes.", "usage": "Remaining AI credits and monthly limits.", "next-paths": "AI-suggested next steps from your latest work.", "daily-review": "10-minute morning checklist (inbox, discoveries, one link).", "open-loops": "Notes started but left unfinished.", "daily-note": "Today's journal entry.", "link-suggestions": "Passages to link into your current note.", "bridges": "Missing links between your knowledge themes.", "flashcards-progress": "Retention, streak, and total cards." }, "pathsTitle": "Your next paths", "pathsFromNote": "Based on \"{title}\"", "pathsLoading": "Analyzing your recent work…", "pathsEnriching": "Refining suggestions…", "pathsEmpty": "Work on a note to unlock personalized paths.", "pathCompareHint": "Also related: {title} — open Memory Echo to compare.", "pathAddLinkHint": "Consider linking to \"{link}\" in your note.", "dailyReviewHint": "10 min each morning — the habit that makes your second brain compound.", "dailyReviewInbox": "Process inbox", "dailyReviewDiscoveries": "Review AI discoveries", "dailyReviewConnection": "Explore one connection", "dailyReviewCards": "Review cards", "openLoopsEmpty": "No stalled notes — you're on track.", "openLoopsStale": "{days}d ago", "dailyNoteOpen": "Open journal", "linkSuggestionsEmpty": "Edit a note to get link suggestions.", "bridgesEmpty": "No bridge opportunities right now.", "flashRetention": "Remembered", "flashRetentionHint": "Share of cards you remember well.", "flashStreak": "Days in a row", "flashTotal": "In all", "flashEmptyHint": "No cards yet. Create some from a note, then track your progress here.", "flashEmptyCta": "Open reviews", "flashDueCta": "Review now", "flashOpenCta": "View progress", "activityEmptyHint": "Edit notes to see your writing rhythm over the last 90 days.", "pathTypes": { "continue": "Continue", "connect": "Link a note", "add-link": "Add to note", "bridge": "Bridge idea", "research": "Research agent", "explore": "Explore theme", "organize": "Organize", "review": "Review", "resurface": "Resurface", "daily": "Journal" }, "widgetHelpLabel": "Widget help", "widgetHelpClose": "Close", "sentimentDominant": "Dominant tone this week", "sentimentFromNotes": "From your notes", "widgetHelp": { "capture": "Jot down a thought in one line. It lands in your Inbox — classify it during your daily review.", "next-paths": "Suggested next steps based on your latest edited note: resume, link, bridge, or research.", "resume": "Your most recently updated notes. Pick up where you left off.", "intelligence": "What AI found: notes that meet, bridging ideas, and agent results.", "reminders": "Upcoming note reminders. Empty when everything is on schedule.", "mind-map": "Theme clusters sized by note volume. Click to explore in Connections.", "agents": "AI-suggested research agents for topics you write about often.", "sentiment": "Emotional tone of notes edited in the last 7 days. Requires at least 3 recent notes and AI enabled.", "inbox": "Notes without a notebook yet. File them to keep your second brain tidy.", "revision": "Cards due today. They come back at the right time.", "stats": "How many themes, bridging notes, and indexed notes you have.", "agent-activity": "Agents that completed a run in the last 48 hours.", "gmail": "Email captures synced from Gmail integration.", "activity": "Heatmap of notes you edited over the last 90 days.", "pinned": "Quick access to notes you pinned.", "usage": "Monthly AI credit usage by feature.", "daily-review": "10-minute morning list: inbox, discoveries, one connection, cards.", "open-loops": "Notes you started but haven't touched in 3+ days.", "daily-note": "Today's journal entry — one note per day.", "link-suggestions": "Passages from other notes worth linking into your current work.", "bridges": "AI suggestions to connect two separate knowledge themes with a bridge note.", "flashcards-progress": "Learning retention rate, review streak, and total cards." }, "pathActions": { "continue": "Resume", "compare": "Compare", "addLink": "Open & link", "openInsight": "Explore", "createBridge": "Create bridge", "createAgent": "Launch agent", "exploreTheme": "View themes", "organizeInbox": "Open inbox", "reviewCards": "Review", "openDaily": "Open journal" }, "gmailCaptures": "Gmail captures", "gmailConnect": "Connect Gmail", "gmailRecent": "{count} this week", "aiConsentRequired": "Enable AI to discover connections between your notes.", "aiProviderUnavailable": "AI is temporarily unavailable. Check your provider settings.", "memoryEchoDisabled": "Memory Echo is disabled in your AI settings.", "enableAi": "Enable AI", "analyzeNotes": "Analyze my notes", "echoFound": "New connection found!", "echoNone": "No new connections right now. Try again later.", "echoFailed": "Analysis failed", "alreadySeen": "seen", "dismissConnection": "Dismiss this connection", "loading": "…", "emotions": { "focused": "Focused", "curious": "Curious", "enthusiastic": "Enthusiastic", "frustrated": "Frustrated", "calm": "Calm", "anxious": "Anxious", "creative": "Creative", "reflective": "Reflective" } }, "editor": { "voiceStart": "Dictate text (microphone)", "voiceStop": "Stop dictation", "backlinks": "Backlinks", "clickToEdit": "Click to edit", "bold": "Bold", "italic": "Italic", "highlight": "Highlight", "link": "Link", "bulletList": "Bullet List", "taskList": "Task List", "heading": "Heading", "codeBlock": "Code Block", "plus": "Plus" }, "wizard": { "title": "Create a notebook with AI", "chooseProfile": "What's your profile?", "profileStudent": "Student", "profileStudentDesc": "AI creates a structured course notebook with summaries, formulas and key takeaways", "profileTeacher": "Teacher", "profileTeacherDesc": "AI generates a course structure with chapters, exercises and learning objectives", "profileEngineer": "Engineer / Professional", "profileEngineerDesc": "AI creates organized technical documentation with specs and references", "topicStudentPlaceholder": "e.g: Thermodynamics, Calculus, French Revolution...", "topicTeacherPlaceholder": "e.g: Math 101, AP Physics, Algorithms...", "topicEngineerPlaceholder": "e.g: Microservices architecture, Network security, ISO 27001...", "topic": "Topic", "level": "Level", "levelBeginner": "Beginner", "levelIntermediate": "Intermediate", "levelAdvanced": "Advanced", "levelExpert": "Expert", "noteCount": "Number of notes", "notes": "notes", "confirmHint": "AI will create a notebook with rich notes: callouts, collapsible sections, math formulas, comparison columns, outlines and links.", "generate": "Generate notebook", "loading": "AI is creating your notebook with structured notes...", "progressGenerating": "Generating content with AI...", "progressCalling": "Calling AI...", "progressParsing": "Parsing AI response...", "progressCreating": "Creating notebook and notes...", "success": "Notebook created successfully!", "created": "Notebook created:", "notesCreated": "notes created", "openNotebook": "Open notebook", "openingNotebook": "Opening…", "autoOpenHint": "Opening the notebook and refreshing the sidebar…", "createdToast": "Notebook « {name} » ready — AI notes available", "studyPlanner": "Study Plan", "studyPlannerDesc": "AI creates a revision plan based on spaced repetition.", "examDate": "Exam date", "generatePlan": "Generate plan", "studyPlanLoading": "Creating plan...", "studyPlanSuccess": "Plan created! Reminders have been added to your notes.", "daysPlanned": "days planned", "studyPlanReminders": "Reminders have been automatically added to your notes.", "organizer": "Auto tags", "autoTags": "Auto tags", "organizerDesc": "AI analyzes your notes and suggests tags, groupings and duplicate detection.", "analyze": "Analyze notebook", "organizing": "Analyzing notes...", "suggestedTags": "Suggested tags", "categories": "Suggested groupings", "duplicates": "Duplicates detected", "apply": "Apply", "tagApplied": "applied", "noSuggestions": "No suggestions — notebook looks well organized.", "taskA": "Task A", "taskB": "Task B" }, "notebookSite": { "title": "Publish notebook as website", "shortTitle": "Website", "howItWorks": "How it works", "step1": "AI analyzes your notes and recommends which ones to publish", "step2": "You confirm or adjust the selection", "step3": "Your site is generated with navigation and table of contents", "quotaWarning": "Analysis uses 1 AI credit.", "analyzeBtn": "Analyze with AI", "analyzing": "AI is analyzing your notes...", "siteDescription": "Site description", "notesSelected": "notes selected", "template": "Visual style", "publishBtn": "Publish site", "publishing": "Generating site...", "published": "Site published!", "openSite": "Open site", "updateSite": "Update site", "unpublish": "Unpublish site", "selectAtLeastOne": "Select at least one note", "unpublished": "Site unpublished", "online": "Site online", "unpublishing": "Unpublishing…" }, "searchModal": { "ariaLabel": "Search", "placeholder": "Search all notes…", "caseSensitive": "Case sensitive", "regexMode": "Regex mode", "trashIncluded": "Trash included", "openInEditor": "Open in editor", "title": "Memento Search", "favorites": "Favorites:", "searching": "Searching…", "noResults": "No results", "typeToSearch": "Type to search", "aiAnalysis": "Analyzing…", "aiResponse": "AI Response", "resultsSummary": "Results summary…", "documentPreview": "Document preview", "noMatch": "No note matches your search.", "typeForResults": "Type for instant results.", "hintNavigate": "navigate", "hintOpen": "open", "hintClose": "close", "selectResultToPreview": "Select a result to explore its content." }, "mobile": { "aiNote": "AI Note", "blockActions": "Block Actions", "convertFormat": "Convert Format", "delete": "Delete", "duplicate": "Duplicate", "paragraph": "Paragraph", "quote": "Quote", "selectAll": "Select All" }, "clusters": { "empty": "No clusters to display", "emptyHint": "Create more notes to generate clusters", "bridgeNote": "Bridge note", "regularNote": "Regular note", "notes": "notes" }, "bridgeNotes": { "bridges": "Bridges", "suggestions": "Suggestions", "powerfulTitle": "Powerful Bridge Notes", "score": "Score", "empty": "No significant bridge notes found yet. Deepen your research to find new connections.", "missingLinks": "Missing Links (AI Generated)", "bridging": "Bridging", "dismiss": "Dismiss suggestion", "noSuggestions": "No connection suggestions yet", "allConnected": "All your clusters may already be connected!", "generate": "Generate Suggestions" }, "chart": { "code": "Chart Code", "invalid": "Invalid Chart", "invalidDescription": "This chart block contains invalid or empty data.", "editSource": "Edit chart source", "suggestions": "Chart Suggestions", "suggestionsTitle": "Chart suggestions", "creditCostHint": "Estimated cost: 2 AI credits", "analyzing": "Analyzing your content for chart data…", "debugInfo": "Debug info", "escCancel": "Esc Cancel", "insertFailed": "Failed to insert chart: ", "noDataDetected": "No Data Detected", "noDataHint": "Try adding numerical data to your note. Charts work best with:", "dataHint1": "• Sales figures, metrics, or measurements", "dataHint2": "• Lists with values (e.g., \"Jan: 5000, Feb: 7500\")", "dataHint3": "• Percentages or proportions", "dataHint4": "• Time-series data", "debugShowAnalyzed": "Debug: Show what was analyzed", "navigateHint": "← → Navigate", "selectHint": "↵ Select", "dataPoints": "data points", "analyzingSelection": "selection", "analyzingNote": "note", "words": "words", "found": "Found" }, "byok": { "loadError": "Loading error", "updated": "{{name}} updated ✓", "testHint": "To test, enter your API key…", "aliasPlaceholder": "e.g. My pro key", "choose": "Choose…", "keyPlaceholder": "sk-… (optional)", "keyValid": "Valid API key ✓", "verifyError": "Verification error", "keySaved": "Key {{name}} saved ✓", "keyDeleted": "Key deleted", "noActiveKey": "No active key — using Memento quotas", "savedKeys": "Saved keys", "chooseProvider": "Choose a provider…", "apiKey": "API Key", "fetchingModels": "Fetching models…", "chooseModel": "Choose a model…", "editLabel": "Edit — {{name}}", "aliasLabel": "Alias", "apiUrl": "API URL", "model": "Model", "newKey": "New API key", "newKeyHint": "(leave empty to keep current)", "operational": "✓ Operational", "test": "Test", "saveChanges": "Save changes", "contactError": "Could not contact server", "baseUrlRequired": "Please provide the API URL", "keyInvalid": "Invalid API key", "byokActive": "Keys active", "activeStatus": "● Active", "inactiveStatus": "○ Inactive", "confirmDelete": "Delete the {{name}} key?", "addOrReplace": "Add / replace a key", "connectProvider": "Connect your AI provider", "optional": "(optional)", "verify": "Verify", "modelOperational": "Model operational ✓", "reply": "Reply:", "testFailed": "Test failed", "save": "Save", "saveWithName": "Save — {{name}}" }, "blockPicker": { "searchPlaceholder": "Search for a note excerpt…" }, "errors": { "network": "Network error" }, "pdf": { "exportError": "PDF export error" }, "report": { "explainProblem": "Explain the problem…" }, "publish": { "defaultTitle": "Published note", "tagline": "Your memory, augmented by AI", "aiSheet": "AI-generated sheet", "publishedOn": "Published on" } }