Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time

Store components

Online store components written in Angular.

Full API and documentation check here.

Check change log here

Store architecture

Components dependencies

Most of components are separated from each other. The most common dependency is Data Abstraction Layer (DAL). DAL is a bridge for some connector ( for now Firebase Connector ). DAL contains methods for manipulating with database (get products, add products to shopping cart, remove products from shopping cart etc.), auth api (register user, login, logout etc.).

Querying to database

As we started to use firebase for database, auth, storage, it was a question how to process heavy queries with aggregations, multiple conditions etc. Firebase Realtime Databese api was very simple for our requirentments.
After some time of research we stayed at ElasticSearch. It's fast, allow to make heavy hard queries and Firebase team wrote an adapter to firebase called Firebase Flashlight.
For example, queries in Product Service are written like ElasticSearch queries.

Organization of products

About products organization you can read in docs for services, for example, Product service or Basket service.

Creating other connectors

If you want to create you own connector you must adopt it to ElasticSearch flashlight output.


To create documentation:

npm i
npm run build-docs

To serve documentation:

npm run serve-docs