Skip to content

SparklePost is a demo application that implements interface patterns commonly found in native iOS and Android apps, using modern and performant web development techniques.

Notifications You must be signed in to change notification settings

khromov/sparklepost

Repository files navigation

SparklePost

SparklePost is a demo application that implements interface patterns commonly found in native iOS and Android apps, using modern and performant web development techniques. It is written in SvelteKit, but the same techniques can be implemented in any JavaScript framework.

Try the demo yourself at: https://sparklepost.vercel.app/ (works best on mobile)

Screen Recording 2024-07-28 at 04 18 14

Features

  • Swipeable tabs navigation with maintained scroll position in each tab (SwiperJS)
  • Stacked message threads with back support - click on a single tweet to initiate stack (SvelteKit Shallow Routing and partial DOM rendering)
  • Scroll & tab restoration when using back navigation (SvelteKit Snapshots)
  • Installation & Offline support (PWA, Service Worker & online/offline event)
  • Native-like navigation transitions (View Transitions API)

Developing

Once you've created a project and installed dependencies with npm install (or pnpm install or yarn), start a development server:

nvm use
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open

Building

To create a production version of your app:

npm run build

You can preview the production build with npm run preview.

To deploy your app, you may need to install an adapter for your target environment.

About

SparklePost is a demo application that implements interface patterns commonly found in native iOS and Android apps, using modern and performant web development techniques.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published