All, This post is made with the permission of Volosoft.
We have developed an Ionic app and, at an early stage of development, forked our work to a new repo. This repo contains a base Ionic 5 app which implements abp boilerplate and is integrated with the Zero framework. The app currently integrates with Zero 6.8.0 but moving this to the latest version would not involve a lot of work.
The purpose of this post is to gauge interest in this repo from the Zero community. Two companies have worked on this project, Nuage Holdings (UK) and Synapsis Software (South Africa). We do not want the job of managing the repo in terms of managing pull requests, dealing with issues and upgrading each time there is a breaking change with abp or Zero.
The functionality of the forked repo is as follows:
- Implements abp and Zero functionality in the angular bootstrap.
- Inheritance from AppComponent giving us ** language control using abp semantics and ** permission control using abp semantics
- Implementation of Zero security settings including ** Email required for confirmation, ** Password complexity, ** User lockout, ** forgotten password, and ** change password.
- Integration with chat functionality, users on the app can freely chat between each other and anyone using the angular web Ui.
- Integration with notification functionality, notifications are received on the app in real time and can be flagged as read.
We have a number of choices.
- If there is little interest we may forget the project and go our own way.
- If there is a lot of interest we may look at charging a nominal amount which will make it worth our while to manage the repo.
- If there is interest from the community we may offer a tailored service for developing the app for specific requirements.
If you have an interest in this repo please initially post your comments below so the guys at Volosoft can see exactly what is going on.
Someone in the github issue requested screen shots. Here is the original specification mixed with screenshots of the results.
A BASE IONIC APP INTEGRATED WITH ZERO
We have built our app on top of the ABP and Zero frameworks. This gives the app closer integration with the Zero UI in terms of security, authorisation, notifications, chat and languages. The job was to create a new Ionic 5 project which has standard angular at its core and then integrate base Zero functionality into it. The app is a vanilla Ionic app, no capacitor or cordova is installed. It is meant as a foundation for building on, not a solution in and of itself.
- Sign in, forgotten password, change password pages using Zero as the security server.
- Integration of Zero permissions. Test page with a list of items which are displayed or not according to user permissions set in Zero.
- Implement SignalR and integrate with framework,
- Chat hub – integrate with Zero chat hub, test page for chatting with another user in the web portal or on another device. Allow users to see who is signed into the web portal or the app.
- Notifications – provide test page displaying notifications created by Zero and allow a user to mark as read. Apply Zero notifications as a push notification (i.e. pop up a notification alert).
- Animated icon in the header bar to identify when a new notification is received with a count showing the total of unread notifications.
- Implement languages (localization) and integrate with Zero, provide test page with a list of items translatable from the framework.
INSTRUCTIONS FOR USE
Make sure you have the latest version of Ionic cli installed (https://ionicframework.com/docs/cli). Clone the repo. Run npm install. Hook up to your API using;
- appconfig.json in app/assets folder (change the value for remoteServiceBaseUrl)
- set the tenantId in app/common/session/app-session.service.ts at lines 87 & 88:
Two pages and a widget. One page which lists top 10 notifications and allows virtual scroll to get to older notifications and one page which allows reading a notification and setting to read/unread. The widget is in the header bar and shows number of unread notifications.