Thanks to visit codestin.com
Credit goes to github.com

Skip to content

DISCUSSION - Rebuilding ionic-svelte #93

@Tommertom

Description

@Tommertom

Hey there,

Looking to rebuild ionic-svelte - I want to get rid of some of the blocking bugs with overlays, remove code that duplicates @ionic/core and make it easier to follow Svelte(Kit) and Ionic release updates.

I want to capture a few design principles for rebuilding ionic-svelte and looking to get feedback from the community:

  • we should follow the ionic documentation for components as close as possible
  • we wont support ionic cli commands
  • in case we cannot follow the ionic documentation we create a customer solution that we document via example code
  • we prefer helper functions over creating custom .svelte components (e.g. we don't want to ship Ion*.svelte) - e.g. https://github.com/Tommertom/svelte-ionic-app/issues/91 - where we like to ditch IonTabs and can simplify DX with a helper function
  • we pref additional div/etc elements over creating custom .svelte components (e.g https://github.com/Tommertom/svelte-ionic-app/issues/81 - where we need to add div class='ion-page' to assure ion-footers are shown correctly.
  • we want to import as much as possible from @ionic/core - so we also do not re-export types and controllers from ionic-svelte
  • we will support SvelteKit and non-Kit projects
  • if we export functions we prefer JSDOC over Typescript
  • we will not rebuild and/or create strong dependencies on the kit router to achieve native transitions

Happy to hear your thoughts on these and other design principles and the consequences for the implemention of for instance:

Some issues I am not sure yet how to solve

Things I plan to remove/or do not return

  • PWA stuff - service worker config and API as per Vite plugin
  • No modalController and popoverControllers - these create all sorts of issues with CSS code inlines are recommended anyway

Ongoing rebuild with demo app posted on github - https://github.com/Tommertom/ionicsvelterebuild
Demo app posted on https://test-cf8eb.web.app/

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions