Skip to content

Latest commit

 

History

History
86 lines (68 loc) · 4.31 KB

README.md

File metadata and controls

86 lines (68 loc) · 4.31 KB

🎁Shop

Shop is an example e-commerce app with a modern architecture and view layout implementation. It's made to showcase the following things (some of which are still in progress):

  • A complex e-commerce (network client-focused) app with both SwiftUI and UIKit
  • A highly dynamic and backend-driven home screen that's almost entirely customizable through the server
  • Migration piecemeal from UIKit to SwiftUI
  • A variety of architectures common to iOS apps with a particular focus on SwiftUI-friendly ones
  • Dynamic type and other accessibility features

Starting the example server

I made a simple Node.js app to run on localhost so the app can use actual network requests. Follow the instructions below to get it running on your environment.

$ npm install # Install npm and node if not installed
$ node app.js

Architectures

Though by no means fully correct or complete, here are the commits where I tried out a bunch of common architectures before settling on a custom Redux-like architecture strongly inspired by The Composable Architecture (TCA).

Contributing

This app is my personal playground to experiment with new APIs, but feel free to contibute!

Inspiration

I referred to these sources for information on architecture:

Reference

General

CLEAN/VIPER

MVVM

Redux

Flux

Credits

License

Licensed under MIT license. See LICENSE for more info.