Skip to content

Conversation

@red-game-dev
Copy link

@red-game-dev red-game-dev commented Jan 22, 2025

  1. Created currency format
  2. Single point of export for images
  3. Card component that is dumb, but smart enough to handle children passed down for header and content
  4. Moved formatSymbolChange to a dedicated utility
  5. Added a generic performance monitoring (Temporary) to find what are the bottlenecks in the project - This can be removed later, is just enough to measure performance
  6. Added error boundary with components of:
  • App error fall back
  • Stock list fall back
  1. Removed some components for partial rewrite (As per guidelines) and adjust to proper structure in place
  2. Improved vite config
  • SVGR improvements
  • Optimizing dependencies
  • CSS improvements
  • Vendor chunks
  1. Added preloader for optimization of assets
  2. Router preloader assets per view - Can specify assets to be loaded or globally on app
  3. Added time formatting utility
  4. Added Tooltip component for charts as dumb component
  5. Fixed race condition in the PriceChart - This was being effected from dispatch as it was not being aborted on useEffect and keep reinitiating new dispatches which will end up fetching multiple times and cause the race condition
  6. Improved performance for PerformanceCard to reduce re-renders
  7. Rewrite of components for SymbolCard with a new name as StockCard and using Card Component as base - Improved performance from re-renders
  8. Checked each component for performance improvements such as using memo and prevent unnecessary re-renders
  9. Introduced virtualization of scrollbar on StockCardsList from tankstack - https://github.com/TanStack/virtual
  10. Added window size hook as we need to check current window size to handle x amount of items per row
  11. Added intersection observable for automatic refresh upon intersecting
  12. Introduced pull to refresh + loading on stock cards list
  13. Moved Stock animation to dedicated hook
  14. Added stocks data hook
  15. Extra, but added pull to refresh with loading indicator
  16. Added type check for preventing typescript errors and able to find type related issues easier before commit
  17. Added eslint to ensure it follows the right principles and code formatting
  18. Integrated CSS modules for components and views
  19. Using compose for css modules https://github.com/css-modules/css-modules/blob/master/docs/composition.md
  20. Updated assets for performance (from png to webp, and svg optimized the structure)
  21. Added performance trace and lighthouse results

@red-game-dev red-game-dev changed the title feat: Added currency formatter [Feat]: FE Challenge Jan 22, 2025
@red-game-dev red-game-dev marked this pull request as draft January 22, 2025 18:42
@red-game-dev red-game-dev marked this pull request as ready for review January 28, 2025 16:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant