Web application built with MERN technology. This app lets people upload DICOM files, which are used for medical images. Once uploaded, the app extracts important information from these files, like patient details and imaging parameters, and saves them in a database. Users can then easily retrieve and view this saved information whenever they need it. It's like a digital filing cabinet for medical images, making it simple for healthcare professionals to manage and access important data.
- Frontend and Backend in the differect repository (links are provided).
- Clone the repository Client - git clone https://github.com/krishnaprasad45/DICOM_File_Handler-Client.git
- Install dependencies using
npm install - Start the development server using
npm run dev. - Note: secret values are protected in .env file, it's not accessible for you, create your own .env and run the project.
The app uses JWT authentication for secure access to protected endpoints.
- React + Vite
- Tailwind CSS
- TypeScript
- react-toastify (For popups )
- axios -Improved, efficienct and reliable in fetching data from APIs
- lodash - For efficient debounce functionality, delaying function execution until after a specified time interval has elapsed.
- JWT - (Authenticate users and securely transmit data between the client and server)
- ESLint - (To maintain consistent coding standards and identifies potential errors)
- React.memo: Remembers the previous appearance of a component and skips updates if the props haven't changed.
- useCallback: Saves functions, avoiding recreation of functions on each render.
- useMemo: Saves computational resources by recalculating values only when needed.
- React.lazy: Enables efficient loading of components when they are needed.
- Debounce: Ensures efficient search functionality by delaying function execution until after a specified time interval has elapsed.
- Component Separation: Enhances reusability and facilitates easier loading by breaking down components into smaller, manageable pieces.