Core layout converted js to tsx files
What does this MR do and why?
This MR refactors the core layout architecture by migrating existing React components from JavaScript (.js) to TypeScript (.tsx) and restructuring the layout for better scalability and maintainability.
Why this change?
- Improves type safety and code reliability
- Enhances maintainability and readability
- Aligns the project with modern React + TypeScript best practices
- Removes legacy JavaScript files to maintain a clean codebase
- Prepares the project for scalable future development
References
- Related feature: Core Layout Modernization
- Refactor suggested to adopt TypeScript-based architecture
- Migration branch:
core-layout
Screenshots or screen recordings
| Before | After |
|---|---|
Components written in .js
|
Components migrated to .tsx
|
| No TypeScript configuration | Added tsconfig.json and TypeScript setup |
| Limited type checking | Strong type safety and improved structure |
(UI remains functionally the same — structural improvement only.)
How to set up and validate locally
-
Clone the repository:
git clone <repo_url> cd viswam-website
-
Install dependencies:
npm install
-
Run the development server:
npm start
-
Open browser:
-
Verify:
- All pages load correctly
- No TypeScript errors
- Layout and UI remain unchanged
MR acceptance checklist
-
Migrated .jscomponents to.tsx -
Removed legacy JavaScript files -
Added TypeScript configuration -
No UI breaking changes -
Application builds and runs successfully -
Code is clean, modular, and maintainable
Summary
Migrated core layout components from JavaScript to TypeScript and restructured the project to improve scalability, maintainability, and type safety without affecting UI functionality.