- Center 'Delete All Forms' button and add bottom padding
- Search shortcut: Shift+K -> Ctrl/Cmd+K
- Form navigation: Ctrl/Cmd+J/K -> Shift+J/K (frees Ctrl/Cmd+K for search)
- Keep navbar title centered when preview actions appear
- Add dark backdrop that blocks background clicks when form preview is open
- Center close + form action icons inside their icon buttons
Root README now has: one-liner description, live links, screenshot
placeholders, CI-updated perf table, stack summary, short contributing.
backend/README.md: full API reference, file format, DB schema, testing.
frontend/README.md: setup, runtime config, structure, features, testing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
During server-side rendering main.ts never runs, so loadRuntimeConfig()
is never called and apiUrl falls back to localhost:8000. The failed HTTP
call triggers the error snackbar during client hydration. Guard loadForms
with isPlatformBrowser so it only runs in the browser where the config
is correctly loaded.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
angular.json assets glob covers public/ not src/assets/, so config.json
was never copied to the build output and the runtime fetch was falling
back to localhost:8000.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Without this file the frontend fell back to localhost:8000, causing CORS
failures on the deployed Vercel app.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add vercel.json with Angular build config and SPA rewrites
- Increase Angular bundle budgets to unblock production build
- Fix TS strict null error in runtime-config.ts (return _config ?? {})
- Load API_URL from /assets/config.json at bootstrap via prebuild script
- Wire getRuntimeConfig() into FormService instead of hardcoded localhost
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Added support for concurrent file uploads with a maximum limit.
- Implemented async processing for file uploads, allowing for pause, resume, and cancel functionality.
- Introduced an AbortController to manage ongoing uploads and handle cancellation.
- Updated UI feedback for upload status and error handling.
- Refactored upload logic to improve state management and user experience.
- Refactored methods to extract form details such as title, language, version, questions count, and options count.
- Updated XLSFormParser to use default form IDs and improved data conversion from tempData.json.
- Adjusted the getFormById method to return a more flexible response type.
- Added buttons to pause, resume, and cancel file uploads.
- Improved upload progress display to show current file status.
- Implemented session storage to restore upload state after page refresh.
- Refactored file upload logic to handle individual file uploads and track progress.
- Added default values for 'version' and 'created_at' fields in the database service.
- Updated XLSFormParser to parse and include 'version' and 'created_at' from the form metadata.
- Changed font from 'Roboto' to 'Inter' across frontend components for consistency.
- Improved upload component to display default values for 'language', 'version', and 'created_at' in the form details.
- Adjusted progress display messages for clarity during file uploads.
- Renamed backend README to reflect "Bulk Questionnaire Upload" focus.
- Expanded backend documentation to include detailed architecture, API references, and error handling strategies.
- Updated frontend README to include new features, installation instructions, and API integration details.
- Improved project structure descriptions and added sections for testing, deployment, and future enhancements.
- Introduced a CI workflow for automated testing of backend and frontend components.
- Added pytest configuration for backend tests and Vitest configuration for frontend tests.
- Enhanced file validation logic in the backend to improve error handling and reporting.
- Created comprehensive test cases for various validation scenarios, including edge cases and incorrect formats.
- Updated requirements to include necessary testing libraries and tools.
• Add comprehensive schema viewer modal with dark mode theme
• Implement copy/download functionality and keyboard shortcuts
• Update README files with latest performance metrics and API documentation
• Remove colorful UI elements for consistent monochrome design
• Enhance viewParsedSchema from console.log to interactive modal
- combine both upload components into one
- add live updates upon upload
- add preview section for forms
- fix the search-bar's weird padding issue
- general cleanup of things, removing some files
- cleaned the run.sh file a bit too