- Introduced a new function `fetchTranscriptContent` to handle fetching transcripts with optional authentication.
- Enhanced error handling and logging for transcript fetching.
- Updated the `parseTranscriptToMessages` function to improve message parsing logic.
- Replaced the old session processing logic with a new approach that utilizes `SessionImport` records.
- Removed obsolete scripts related to manual triggers and whitespace fixing.
- Updated the server initialization to remove direct server handling, transitioning to a more modular approach.
- Improved overall code structure and readability across various scripts.
- Updated session processing commands in documentation for clarity.
- Removed transcript content fetching from session processing, allowing on-demand retrieval.
- Improved session metrics calculations and added new metrics for dashboard.
- Refactored processing scheduler to handle sessions in parallel with concurrency limits.
- Added manual trigger API for processing unprocessed sessions with admin checks.
- Implemented scripts for fetching and parsing transcripts, checking transcript content, and testing processing status.
- Updated Prisma schema to enforce default values for processed sessions.
- Added error handling and logging improvements throughout the processing workflow.
- Added MessageViewer component to display parsed messages in a chat-like format.
- Introduced new Message table in the database to store individual messages with timestamps, roles, and content.
- Updated Session model to include a relation to parsed messages.
- Created transcript parsing logic to convert raw transcripts into structured messages.
- Enhanced processing scheduler to handle sessions with parsed messages.
- Updated API endpoints to return parsed messages alongside session details.
- Added manual trigger commands for session refresh, transcript parsing, and processing.
- Improved user experience with color-coded message roles and timestamps in the UI.
- Documented the new scheduler workflow and transcript parsing implementation.
- Added processingScheduler.js and processingScheduler.ts to handle session transcript processing using OpenAI API.
- Implemented a new scheduler (scheduler.js and schedulers.ts) for refreshing sessions every 15 minutes.
- Updated Prisma migrations to add new fields for processed sessions, including questions, sentimentCategory, and summary.
- Created scripts (process_sessions.mjs and process_sessions.ts) for manual processing of unprocessed sessions.
- Enhanced server.js and server.mjs to initialize schedulers on server start.
Adds Markdown rendering to the transcript viewer for enhanced formatting.
This change integrates `react-markdown` to parse and render transcript content, allowing for richer text formatting, including links and other Markdown elements. It also adds a toggle to switch between raw and formatted text, and displays a message when transcript content is unavailable. The UI of the transcript viewer has been improved to be more user-friendly with titles and descriptions.
Adds a transcript viewer component to display transcript content within the session details page.
This change introduces a new `TranscriptViewer` component that renders the transcript content if available. It also adds logic to fetch and store transcript content from the provided URL during session data refresh. The existing link-based transcript view is now used as a fallback when only the transcript URL is available. It also fixes an issue where session ID was not properly displayed.
Improves the dashboard with additional metrics and visualizations
to provide a more comprehensive overview of application usage and performance.
Adds new charts, including:
- Word cloud for category analysis
- Geographic map for user distribution (simulated data)
- Response time distribution chart
Refactors existing components for improved clarity and reusability,
including the introduction of a generic `MetricCard` component.
Improves error handling and user feedback during data refresh and
session loading.
Adds recommended VSCode extensions for ESLint and Prettier.
Enhances the dashboard with new key performance indicators (KPIs) and visualizations.
Introduces a new stat card component for displaying metrics with trends and icons.
Adds sentiment analysis, language distribution, and token usage charts to provide a more comprehensive overview of session data.
These additions provide deeper insights into user interactions and platform performance.
Normalizes data from CSV files by mapping sentiment strings to numeric scores and standardizing boolean values.
This change enhances data consistency and accuracy, ensuring reliable data processing for sentiment analysis and boolean evaluations. It also handles multiple languages for sentiment strings.
Refactors the dashboard to improve data fetching, error handling, and overall user experience.
- Prevents errors on refresh by validating company ID.
- Improves date handling from CSV by using a `safeParseDate` function to avoid "Invalid Date" errors.
- Adds a timestamp for when metrics were last updated.
- Fixes a bug where the refresh was failing silently.
- Improves settings page by wrapping form elements with form tags.
- Adds autocomplete attributes on settings page.
- Adds database files to `.gitignore`.
refactor: improve refresh-sessions API handler for better readability and error handling
fix: enhance NextAuth configuration with session token handling and cookie settings
chore: update dashboard API handlers for consistency and improved error responses
style: format dashboard API routes for better readability
feat: implement forgot password and reset password functionality with security improvements
feat: add user registration API with email existence check and initial company creation
chore: create initial database migration and seed script for demo data
style: clean up PostCSS and Tailwind CSS configuration files
fix: update TypeScript configuration for stricter type checking
chore: add development environment variables for NextAuth
feat: create Providers component for session management in the app
chore: initialize Prisma migration and seed files for database setup
- Added @tailwindcss/postcss to devDependencies for better PostCSS integration.
- Enhanced session import logic in refresh-sessions.ts to ensure proper data mapping and type safety.
- Updated postcss.config.js to use the correct plugin name for Tailwind CSS.
- Modified tsconfig.json to temporarily disable strict mode and allow implicit any types for smoother development.
- Add package.json with dependencies and scripts for Next.js and Prisma
- Implement API routes for session management, user authentication, and company configuration
- Create database schema for Company, User, and Session models in Prisma
- Set up authentication with NextAuth and JWT
- Add password reset functionality and user registration endpoint
- Configure Tailwind CSS and PostCSS for styling
- Implement metrics and dashboard settings API endpoints