Simple Calculator
README
Transcript.art
Transcript.art is the application repository behind the Transcript.art web experience. It is a browser-first AI transcription and productivity workspace with audio capture, transcription, translation, transcript cleanup, exports, AI assistance, and protected workspace features.
Core capabilities
- Audio upload and browser capture workflows
- Transcription session management
- Transcript review and cleanup
- Translation workflows
- AI assistant and AI Studio features
- Export to document-oriented formats
- Installable PWA support
- Protected administrative and security workspace routes
- Authentication and access-control integrations
Stack
- React 18
- TypeScript
- Vite
- Tailwind CSS
- shadcn/Radix UI components
- TanStack Query
- React Router
- Recharts
- Framer Motion
- Zod
- npm lockfile
Local development
Requires Node.js 20 and npm.
npm ci
npm run dev
Production checks:
npm run lint
npm run build
Project structure
src/
├── components/ UI and feature components
├── entities/ domain models
├── functions/ application/server integration functions
├── hooks/ reusable browser hooks
├── integrations/ external service integrations
├── lib/ transcription, learning, billing and utility logic
└── pages/ application routes
Security
See SECURITY.md and docs/ARCHITECTURE.md.
Never commit credentials, private audio, transcript data, API keys, or service-role secrets.
CI
Every pull request targeting main runs:
npm ci- ESLint
- Production Vite build
Dependabot checks npm and GitHub Actions dependencies on a scheduled basis.
Product relationship
This repository is the application code associated with Transcript.art. Existing hosting/provider integration hooks are intentionally preserved; change them only together with the corresponding deployment configuration.
234 files
every file readable free; the clone is the same bytes, packaged and agent-payable
.github/2
browser-extension/9
- browser-extension/README.md3 KB
- browser-extension/background.js12 KB
- browser-extension/manifest.json444 B
- browser-extension/offscreen.html255 B
- browser-extension/offscreen.js13 KB
- browser-extension/popup.css5 KB
- browser-extension/popup.html2 KB
- browser-extension/popup.js5 KB
- browser-extension/verbatim-vad-worklet.js7 KB
docs/1
entities/40
- entities/AccessRequest.json2 KB
- entities/AdminGrant.json1 KB
- entities/AdminMessageTemplates.json1 KB
- entities/AdminNotification.json1 KB
- entities/AdminNotificationSettings.json886 B
- entities/AiLearningAuditEvent.json3 KB
- entities/AiLearningItem.json6 KB
- entities/AppSettings.json1 KB
- entities/AssistantConversation.json1 KB
- entities/AssistantDocument.json2 KB
- entities/AssistantMessage.json2 KB
- entities/AudioIssue.json2 KB
- entities/AudioSegment.json4 KB
- entities/Category.json612 B
- entities/CyberAsset.json2 KB
- entities/CyberAuditEvent.json2 KB
- entities/CyberAuthorizationRecord.json3 KB
- entities/CyberUserAssessmentSession.json2 KB
- entities/CyberUserAssessmentStep.json2 KB
- entities/CyberUserAsset.json2 KB
- entities/CyberUserAuditEvent.json2 KB
- entities/CyberUserAuthorization.json3 KB
- entities/HumanSupportRequest.json2 KB
- entities/ManualCryptoOption.json1020 B
- entities/ManualPaymentAuditEvent.json1 KB
- entities/ManualPaymentReceipt.json1 KB
- entities/ManualPaymentSettings.json3 KB
- entities/ManualPaymentSubmission.json4 KB
- entities/ManualSubscription.json1 KB
- entities/Post.json2 KB
- entities/ReengagementDelivery.json1 KB
- entities/ReengagementSettings.json1 KB
- entities/SupportConversation.json2 KB
- entities/SupportMessage.json2 KB
- entities/TranscriptAnnotation.json1 KB
- entities/TranscriptLine.json3 KB
- entities/TranscriptionSession.json8 KB
- entities/TranslationResult.json4 KB
- entities/UserAccessAuditEvent.json1 KB
- entities/UserAccessProfile.json4 KB
functions/20
- functions/access-status.ts25 KB
- functions/admin-access.ts74 KB
- functions/admin-ai-learning.ts42 KB
- functions/app-help-knowledge.ts6 KB
- functions/approved-ai-learning-context.ts7 KB
- functions/cyber-security-admin.ts33 KB
- functions/cyber-security-user.ts49 KB
- functions/document-studio.ts26 KB
- functions/help-desk-chat.ts21 KB
- functions/in-app-assistant.ts72 KB
- functions/luma-video.ts14 KB
- functions/manual-payment-admin.ts43 KB
- functions/manual-payments.ts33 KB
- functions/process-custom-guideline-file.ts32 KB
- functions/propose-ai-learning.ts13 KB
- functions/reengagement-reminder.ts20 KB
- functions/submit-access-request.ts12 KB
- functions/synthesize-translation-audio.ts22 KB
- functions/transcribe-audio-segment.ts50 KB
- functions/translate-transcript-segment.ts33 KB
plugins/1
public/7
src/136
- src/App.css1 B
- src/App.tsx1 KB
- src/components/BrandingBadge.tsx1 KB
- src/components/SEO.tsx2 KB
- src/components/admin/AdminAccessHistory.tsx5 KB
- src/components/admin/AdminAccessRequests.tsx14 KB
- src/components/admin/AdminAppSettingsPanel.tsx36 KB
- src/components/admin/AdminLearningPanel.tsx19 KB
- src/components/admin/AdminLearningSourcePromotions.tsx16 KB
- src/components/admin/AdminReplyComposer.tsx5 KB
- src/components/admin/AdminSupportCenter.tsx28 KB
- src/components/admin/AdminUsers.tsx15 KB
- src/components/admin/AdminWorkspace.tsx13 KB
- src/components/admin/CyberSecurityPanel.tsx36 KB
- src/components/assistant/AIStudioPanel.tsx47 KB
- src/components/assistant/AssistantHistoryControls.tsx5 KB
- src/components/assistant/InAppAssistant.tsx40 KB
- src/components/assistant/VideoWorkspace.tsx17 KB
- src/components/billing/AdminCryptoOptions.tsx6 KB
- src/components/billing/AdminPaymentPanel.tsx17 KB
- src/components/billing/AdminPaymentsList.tsx9 KB
- src/components/billing/AdminSettingsForm.tsx9 KB
- src/components/billing/SubscriptionDetails.tsx7 KB
- src/components/billing/SubscriptionPanel.tsx25 KB
- src/components/cyberai/CyberAiWorkspace.tsx72 KB
- src/components/leads/HelpDeskDialog.tsx16 KB
- src/components/leads/RequestAccessForm.tsx8 KB
- src/components/leads/SignInContactOptions.tsx6 KB
- src/components/pwa/InstallAppControl.tsx2 KB
- src/components/transcription/AppHeader.tsx4 KB
- src/components/transcription/AudioTranscriptionPanel.tsx16 KB
- src/components/transcription/CustomGuidelinesEditor.tsx31 KB
- src/components/transcription/FormattedPreview.tsx5 KB
- src/components/transcription/IssueLog.tsx2 KB
- src/components/transcription/PulsarReviewPanel.tsx10 KB
- src/components/transcription/SegmentList.tsx6 KB
- src/components/transcription/SessionSettings.tsx18 KB
- src/components/transcription/SessionWorkspace.tsx17 KB
- src/components/transcription/SessionsLibrary.tsx8 KB
- src/components/transcription/TimelineAnnotations.tsx17 KB
- src/components/transcription/TranscriptDashboard.tsx6 KB
- src/components/transcription/TranscriptEditor.tsx11 KB
- src/components/transcription/TranscriptionCleanupDialog.tsx4 KB
- src/components/transcription/TranslationPanel.tsx32 KB
- src/components/transcription/WaveformMonitor.tsx5 KB
- src/components/ui/accordion.tsx2 KB
- src/components/ui/alert-dialog.tsx4 KB
- src/components/ui/alert.tsx2 KB
- src/components/ui/aspect-ratio.tsx140 B
- src/components/ui/avatar.tsx1 KB
- src/components/ui/badge.tsx1 KB
- src/components/ui/breadcrumb.tsx3 KB
- src/components/ui/button.tsx2 KB
- src/components/ui/calendar.tsx3 KB
- src/components/ui/card.tsx2 KB
- src/components/ui/carousel.tsx6 KB
- src/components/ui/chart.tsx10 KB
- src/components/ui/checkbox.tsx1 KB
- src/components/ui/collapsible.tsx315 B
- src/components/ui/command.tsx5 KB
- src/components/ui/context-menu.tsx7 KB
- src/components/ui/dialog.tsx4 KB
- src/components/ui/drawer.tsx3 KB
- src/components/ui/dropdown-menu.tsx7 KB
- src/components/ui/form.tsx4 KB
- src/components/ui/hover-card.tsx1 KB
- src/components/ui/input-otp.tsx2 KB
- src/components/ui/input.tsx791 B
- src/components/ui/label.tsx710 B
- src/components/ui/menubar.tsx8 KB
- src/components/ui/navigation-menu.tsx5 KB
- src/components/ui/pagination.tsx3 KB
- src/components/ui/popover.tsx1 KB
- src/components/ui/progress.tsx777 B
- src/components/ui/radio-group.tsx1 KB
- src/components/ui/resizable.tsx2 KB
- src/components/ui/scroll-area.tsx2 KB
- src/components/ui/select.tsx5 KB
- src/components/ui/separator.tsx756 B
- src/components/ui/sheet.tsx4 KB
- src/components/ui/sidebar.tsx23 KB
- src/components/ui/skeleton.tsx261 B
- src/components/ui/slider.tsx1 KB
- src/components/ui/sonner.tsx880 B
- src/components/ui/switch.tsx1 KB
- src/components/ui/table.tsx3 KB
- src/components/ui/tabs.tsx2 KB
- src/components/ui/textarea.tsx772 B
- src/components/ui/toast.tsx5 KB
- src/components/ui/toaster.tsx772 B
- src/components/ui/toggle-group.tsx2 KB
- src/components/ui/toggle.tsx1 KB
- src/components/ui/tooltip.tsx1 KB
- src/components/ui/use-toast.ts82 B
- src/entities/index.ts3 KB
- src/functions/index.ts2 KB
- src/hooks/audio-capture-controller.ts23 KB
- src/hooks/audio-capture-helpers.ts2 KB
- src/hooks/audio-capture-model.ts3 KB
- src/hooks/audio-capture-persistence.ts10 KB
- src/hooks/audio-capture-recorder.ts4 KB
- src/hooks/use-audio-capture.ts7 KB
- src/hooks/use-audio-input.ts12 KB
- src/hooks/use-mobile.tsx565 B
- src/hooks/use-toast.ts4 KB
- src/index.css127 KB
- src/integrations/core.ts1 KB
- src/lib/admin/adminAccess.ts3 KB
- src/lib/admin/learningAccess.ts6 KB
- src/lib/assistant/documentExport.ts32 KB
- src/lib/billing/manualPayments.ts7 KB
- src/lib/billing/types.ts9 KB
- src/lib/cyberai/types.ts5 KB
- src/lib/cyberai/validation.ts9 KB
- src/lib/learning/actions.ts2 KB
- src/lib/learning/types.ts5 KB
- src/lib/pwa.ts9 KB
- src/lib/security/types.ts3 KB
- src/lib/security/validation.ts5 KB
- src/lib/superdev/client.ts408 B
- src/lib/transcription/audio-upload.ts693 B
- src/lib/transcription/audio-vad.ts16 KB
- src/lib/transcription/audio.ts3 KB
- src/lib/transcription/custom-guidelines.ts20 KB
- src/lib/transcription/format.ts12 KB
- src/lib/transcription/pulsar.ts23 KB
- src/lib/transcription/transcription.ts14 KB
- src/lib/transcription/translation.ts6 KB
- src/lib/transcription/types.ts12 KB
- src/lib/utils.ts166 B
- src/main.tsx213 B
- src/pages/Admin.tsx3 KB
- src/pages/Index.tsx85 KB
- src/pages/NotFound.tsx1 KB
- src/pages/Pentesting.tsx5 KB
- src/vite-env.d.ts38 B
- .gitignore329 B
- .nvmrc3 B
- CONTRIBUTING.md492 B
- README.md2 KB
- SECURITY.md1 KB
- bun.lock163 KB
- bun.lockb220 KB
- components.json413 B
- eslint.config.js1 KB
- index.html6 KB
- package-lock.json259 KB
- package.json3 KB
- postcss.config.js80 B
- tailwind.config.ts3 KB
- tsconfig.app.json652 B
- tsconfig.json381 B
- tsconfig.node.json500 B
- vite.config.ts1 KB