Skip to content

Kittiwake is a Flutter based storefront kit developed on top of Tradly API. It comes with automated CI/CD, testing, etc. You can launch a B2C, D2C e-commerce apps using this kit. You need the tenantID to test your app. Signup for a free sandbox account at Tradly and experiment the app.

Notifications You must be signed in to change notification settings

TRADLY-PLATFORM/Kittiwake

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Stargazers Issues


Logo

Tradly Platform

An open source Flutter Template for B2C App. Contents served from Tradly Headless API
Explore the docs »

Demo is coming soon · Report Bug · Request Feature

Table of Contents

  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact

About The Project

Kittiwake is a Flutter based storefront kit developed on top of Tradly API. It comes with automated CI/CD, testing, etc. You can launch a B2C, D2C e-commerce apps using this kit. You need the tenantID or Publishable API Key to test your app. Signup for a free sandbox account at Tradly.app and experiment the app.

Snip20210920_28 Snip20210920_29 Snip20210920_30

Built With

  • Flutter

Getting Started

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Prerequisities

Documentation yet to be added

Installation

Documentation yet to be added

Folder Structure

Here is the core folder structure which flutter provides. tradly_grocery_app/

  • android
  • build
  • ios
  • lib
  • test

Here is the folder structure we have been using in this project lib/

  • data
  • domain
  • presentation

Data Layer

Data Layer contains Repository Implementations and 1 or multiple Data Sources. Repositories are responsible to coordinate data from the different Data Sources. Data Layer depends on Domain Layer.

data/

  • entities
  • model
  • repo
  • source
  • store
  • utils

Entites

An entity can be an object with methods, or it can be a set of data structures and functions. It doesn’t matter so long as the entities could be used by many different applications in the enterprise.

Model

Models are used to map the data for network request and response, network failures and exceptions.

Repo

The implementation of the repository interface will reside in the infrastructure layer (also referred to as persistence layer or data layer). The Repository pattern is a well-documented way of working with a data source. ... A repository performs the tasks of an intermediary between the domain model layers and data mapping, acting in a similar way to a set of domain objects in memory

Source

source is act as data source consist of cache and remote source. Source are accessed from store.

Store

Store is act as data service provider. It call remote API from remote source and update into the cache source. Returns the source from cache to the store.

Utils

Utils consists of constants which are used in data layer and helper classes.

Domain Layer

Domain Layer is the most INNER part of the onion (no dependencies with other layers) and it contains Entities, Use cases & Repository Interfaces. Use cases combine data from 1 or multiple Repository Interfaces.

domain/

  • model
  • repo
  • usecase
  • utils

Presentation Layer

Presentation Layer contains UI (Widgets) that are coordinated by Presenters/ViewModels which execute 1 or multiple Use cases. Presentation Layer depends on Domain Layer.

presentation

  • helper
  • model
  • ui
  • utils
  • view_model
  • widget

Usage

"Pending information to be added"

Roadmap

"Pending to be added"

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Discussion: https://community.tradly.app Tradly Platform - [email protected] Project Link: https://github.com/github_username/repo_name

About

Kittiwake is a Flutter based storefront kit developed on top of Tradly API. It comes with automated CI/CD, testing, etc. You can launch a B2C, D2C e-commerce apps using this kit. You need the tenantID to test your app. Signup for a free sandbox account at Tradly and experiment the app.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published