All Projects → benorama → ngrx-demo-apps

benorama / ngrx-demo-apps

Licence: other
Demo to share module (ngrx state and reducers) between Ionic and Angular apps

Programming Languages

typescript
32286 projects
CSS
56736 projects
HTML
75241 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to ngrx-demo-apps

ionic4-boilerplate
🚀 boilerplate for ionic4 with CI based on travis and fastlane. doc and example are provided
Stars: ✭ 25 (-35.9%)
Mutual labels:  ionic, ngrx
ngrx-store-ionic-storage
Simple syncing between @ngrx/store and Ionic Storage.
Stars: ✭ 66 (+69.23%)
Mutual labels:  ionic, ngrx
ionic2.0-angularfire
this a basic application for Ionic 2.0.rc5 with AngularFire2 with ngrx/store & ngrx/effects to manage state
Stars: ✭ 71 (+82.05%)
Mutual labels:  ionic, ngrx
ionic3-firebase-ngrx
Sample Ionic 3 application using ngrx with firebase (auth, crud and camera plugin)
Stars: ✭ 48 (+23.08%)
Mutual labels:  ionic, ngrx
ionic4-ngrx-firebase
A basic application for Ionic 4 with firebase & ngrx actions, reducers and effects
Stars: ✭ 17 (-56.41%)
Mutual labels:  ionic, ngrx
angular-progress-bar
This component allow you to easy incorporate progress-bar to angular/ionic project, providing binding and color options
Stars: ✭ 26 (-33.33%)
Mutual labels:  ionic
ionic-native-sms-retriever-plugin-master
Cross-platform plugin for Cordova / PhoneGap to Retrieve SMS. Available for Android.
Stars: ✭ 16 (-58.97%)
Mutual labels:  ionic
ionic-level
iOS level app clone made with Angular, Ionic & Capacitor.
Stars: ✭ 19 (-51.28%)
Mutual labels:  ionic
onchat-web
A simple, beautiful, mobile-first instant messaging progressive web application.
Stars: ✭ 138 (+253.85%)
Mutual labels:  ionic
ionic-signature-pad
Ionic plugin to input singnature pad
Stars: ✭ 15 (-61.54%)
Mutual labels:  ionic
ionic4-angular6-crud-example
Building CRUD Mobile App using Ionic 4, Angular 6 and Cordova
Stars: ✭ 50 (+28.21%)
Mutual labels:  ionic
cordova-plugin-today-widget
Add a today widget app extension target to your cordova project.
Stars: ✭ 51 (+30.77%)
Mutual labels:  ionic
nativescript-task-app
An example task management NativeScript Angular app. Demonstrates ngrx effects, lazy-loading modules, offline storage and app branding.
Stars: ✭ 26 (-33.33%)
Mutual labels:  ngrx
ionic-surveyjs
Sample project that shows how to integrate SurveyJS in Ionic APP.
Stars: ✭ 28 (-28.21%)
Mutual labels:  ionic
ionic-tags-input
A ionic tags input component
Stars: ✭ 73 (+87.18%)
Mutual labels:  ionic
setup-ionic
Set up your GitHub Actions workflow with Cordova/Ionic environment
Stars: ✭ 23 (-41.03%)
Mutual labels:  ionic
cordova-plugin-crypto-file
Encrypts source files, works with cordova-plugin-ionic-webview
Stars: ✭ 29 (-25.64%)
Mutual labels:  ionic
ngx-redux-ui-management-recipes
Recipes for managing the UI layout of an application using Redux in Angular
Stars: ✭ 39 (+0%)
Mutual labels:  ngrx
scanbot-sdk-example-ionic
Scanbot scanner SDK example app for Ionic with Cordova.
Stars: ✭ 24 (-38.46%)
Mutual labels:  ionic
ngrx-signalr-core
A library to handle realtime SignalR (.NET Core) events using @angular, rxjs and the @ngrx library
Stars: ✭ 18 (-53.85%)
Mutual labels:  ngrx

Introduction

This is a proof of concept that demonstrates the ability to share a Typescript package with core functionalities and business logic between an Angular web app and an Ionic mobile app.

Please check the Medium article Hybrid mobile apps: sharing logic between Angular and Ionic apps for more info.

Demo

Goals:

  • encapsulate all the business logic in a core module, based on @ngrx/store,
  • keep specific view layout, markup and navigation logic in the app projects.

Note: @ngrx/store is a RxJS powered state management inspired by Redux for Angular apps. It's currently the most popular way to structure complex business logic in Angular apps.

Running the apps locally

# Clone the repo
git clone https://github.com/benorama/ngrx-demo-apps.git

Prerequisites:

Note: ngrx-demo-core module is shared between the apps with npm link but it could be published to npmjs and be used as a regular dependency.

ngrx-demo-core module

First, compile ngrx-demo-core shared module.

It is based on official Ionic module template, which supports Angular's ngc and Ahead-of-Time compiling out of the box. https://github.com/driftyco/ionic-module-template

# Go into core module directory
cd ngrx-demo-apps/core

# Install dependencies
yarn
# Or npm install

# Compile typescript into dist
yarn build
# Or npm run build

yarn link
# Or npm pack
# Or npm publish

# Note: during dev, you can use 'tsc -w'

The shared module is now installed locally and can be used in other local npm projects.

ngrx-demo-web app

Install or link ngrx-demo-core shared module and run the web app.

# Go into web Angular2 app directory
cd ../web

# Install dependencies
yarn
# Or npm install

# Create a symlink from the local node_modules folder to the global shared module symlink
yarn link "ngrx-demo-core"
# Or npm install ../core/ngrx-demo-core-0.0.1.tgz (if you used npm pack)

# Run the web app locally
ng serve

ngrx-demo-mobile app

As we did for the web app, install or link the ngrx-demo-core shared module and run the mobile app.

# Go into mobile Ionic2 app directory
cd ../mobile

# Install dependencies and typings (you can get a burger...)
yarn
# Or npm install

# Create a symlink from the local node_modules folder to the global shared module symlink
yarn link "ngrx-demo-core"
# Or npm install ../core/ngrx-demo-core-0.0.1.tgz (if you used npm pack)

# Run the mobile app locally
ionic serve

Note: for more info on using external lib on Ionic2

Bugs and feedback

If you have any questions or suggestions to improve the demo app, don't hesitate to submit an issue or a pull request!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].