Skip to content

Conversation

@Technologeek
Copy link

@Technologeek Technologeek commented Oct 9, 2024

Implements FLASH as SPA with SolidJS #42

Summary:

This PR introduces a basic migration from React to SolidJS, aiming to explore potential performance improvements. This is an early implementation and not yet production-ready. If there's sufficient interest, I will continue to fully migrate the app to a proper SolidJS ecosystem, including linting, testing, and other essential tools.

Notes:

  • This is an experimental implementation and not production ready!
  • Certain features, such as Flash functionality, may not work as expected, as I'm still exploring SolidJS's behavior in those areas.

Architectural Decision: SPA vs SSR vs SSG

I opted for a **Single Page Application ** architecture in SolidJS, and here's the rationale behind this decision:

  1. Performance:
    Since Flash is not content-heavy, an SPA provides better performance after the initial load.

  2. SEO Not a Priority:
    Given that SEO isn't a major concern for this project, we don't require the potential SEO benefits of SSR.

  3. Dynamic Content:
    Flash seems largely dynamic and user-specific, such as device connection statuses and flashing progress, which aligns well with the SPA model.

  4. Offline Capabilities (Future Consideration as there seems to be an ongoing Bounty as well):
    Should we need PWA features in the future, the SPA architecture simplifies the process.

Benchmarks:

  • ReactJS Performance:

    ReactJS Benchmark

  • SolidJS Performance:

    SolidJS Benchmark


Let me know if you'd like any further tweaks!

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