Base solution for your next web application
Open Closed

offer of public repo for Ionic app with abp boilerplate and integration with Zero #9047


User avatar
1
BobIngham created

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.


16 Answer(s)
  • User Avatar
    1
    BobIngham created

    Someone in the github issue requested screen shots. Here is the original specification mixed with screenshots of the results.

    NUAGECARE APP

    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;

    1. appconfig.json in app/assets folder (change the value for remoteServiceBaseUrl)
    2. set the tenantId in app/common/session/app-session.service.ts at lines 87 & 88:

    SITE MAP

    Where there is a green rectangle there is a page.

    SECURITY

    Sign in, forgotten password and change password pages.

    NAVIGATION

    A page or menu which will allow us to test the app.

    PERMISSIONS

    A page which will allow us to test permissions set in Zero.

    LANGUAGE

    A page which will allow us to test languages set in Zero.

    CHAT

    Two pages and a widget. One page which lists all active users and one page which allows chatting. The widget is in the header bar and shows number of unread messages.

    NOTIFICATIONS

    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.

    CODE

    The code was created as a standard ionic 5 app and then full integration with abp and Zero was carried out.

  • User Avatar
    0
    ismcagdas created
    Support Team

    Thanks a lot @bobingham,

    I hope community likes this :)

  • User Avatar
    0
    virghy created

    I'm interested to the project. How can I access to the repository?

  • User Avatar
    0
    BobIngham created

    @virghy - my Azure guys are back on Monday. I'll ask them how best to give you access to this repository. I will definitely need your email, preferable one which already exists in Azure AD (i.e. an Office account?).

  • User Avatar
    0
    virghy created

    Thanks for your response. This is an valid mail for azure: [email protected]

  • User Avatar
    0
    BobIngham created

    @virghy - an invite to the team has been sent to your email address. This is tehy first time we have created a public repo so don't expect anything too professional but your feedback would be very welcome.

  • User Avatar
    0
    josejunior created

    @bobingham I am also interested in the project, please count me in.My email is: olavio @ hotmail.com Thank you

  • User Avatar
    0
    BobIngham created

    HI Jose, I have invited you to the group. Feedback would be most appreciated. Bob

  • User Avatar
    0
    quantavn created

    Hi @bobingham,

    Can you share me your email, I have some information need to discuss with you in private? Here is my email: [email protected]

  • User Avatar
    0
    marble68 created

    This looks cool!

    Just curious - since Ionic is Angular based - wouldn't an angular version of the project be fairly straightfoward to port?

    Also - do you use Native in your project?

    Lastly - has anyone used https://github.com/thruthesky/abcframework to convert ANZ to a Cordova app?

  • User Avatar
    0
    BobIngham created

    @marble68 - it's an Ionic app and therefore not native. The port is not difficult but time-consuming and fiddly in places for abp, there's no great magic involved. The abcframework seems to be an attempt to link angular to cordova. That's exactly what the Ionic app does.

  • User Avatar
    0
    josejunior created

    @bobingham could not find the invitation on Azure AD for the repository project.

  • User Avatar
    0
    BobIngham created

    @josejunior, an invite to join the team was sent to your email address. I have just resent it.

  • User Avatar
    0
    raggadee created

    @bobingham i'm interested in your project. how can i get access? my azure account is [email protected]

  • User Avatar
    0
    BobIngham created

    @raggadee

    Try this link. https://dev.azure.com/nuageholdings/_git/Ionic%20app%20with%20Zero%20integration

    If you need some third-party coding on this base let me know.

  • User Avatar
    0
    ismcagdas created
    Support Team

    Closing this since it is displayed as an open ticket on our internal system :). However, anyone cna write to this topic to contact @bobingham