Open Closed

Optimizing ABP Angular for a Mini App #10575


User avatar
0
vmquang95 created

I’m currently working on a project built with an ABP Microservice architecture, using Angular for the web UI. It has been working very well for the existing system.

Now, we need to develop a Mini App for mobile (essentially a webview embedded an existing mobile application). The project is reusing all existing backend services as the Mini App server.

The main question is about the frontend approach:

  • Reusing the existing Angular UI doesn’t seem suitable because it is not optimized for mobile interfaces.
  • Creating a new Angular project raises questions about how to best leverage existing ABP features and infrastructure while still ensuring a mobile-optimized UI.

What would be the recommended approach in this case to:

  • Reuse as much as possible from ABP (e.g., authentication, API integration, modules, etc.)
  • While building a UI that is properly optimized for mobile (Mini App / WebView context)?

Thank you!

Markdown supported.
Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)

3 Answer(s)
  • User Avatar
    0
    AI-Bot created
    Support Team ABP Agent
    • Create a separate, mobile-optimized UI project (don’t try to “force” the existing ABP Angular UI to be mobile-first). Keep the existing ABP Angular app for desktop/admin use, and build a dedicated Mini App UI that consumes the same microservice backends.
    • If you want to stay in the Angular ecosystem and target a WebView / mobile UI, the most ABP-friendly approach is to create an Ionic Angular (or any custom Angular) app and integrate ABP Angular packages:
      1. Create the new mobile UI (e.g., Ionic Angular).
      2. Install ABP Angular core packages in the new UI:
        • @abp/ng.core (authentication helpers, RestService, localization, permission checks, etc.)
        • @abp/ng.schematics (to generate API proxies)
      3. Configure the new UI’s environment.ts with your ABP AuthServer/IdentityServer settings (issuer, clientId, redirectUri, scope, and apis.default.url).
      4. Register a separate OAuth client for the Mini App (a new ClientId) in your AuthServer/IdentityServer seeding (and allow the Mini App origin in CORS / redirect URLs).
      5. Generate API proxies for the new UI using ABP CLI (so you can strongly-type your HTTP calls against your existing services):
    abp generate-proxy -t ng -m identity -u https://<your-authserver-or-gateway-url>
    
    1. Use ABP Angular AuthService to redirect to login, and use the generated proxies (or RestService) for API integration.
    • This gives you maximum reuse of ABP infrastructure while letting you fully redesign the UI for mobile:
      • Authentication/OIDC flow stays standard ABP (redirect to AuthServer login page from the WebView).
      • API integration via ABP-generated Angular proxies.
      • Localization/permission checks/config state via @abp/ng.core.
      • You only rebuild the UI layer with a mobile component library/layout.

    Links (verified):

    • https://abp.io/community/articles/ix98a3rr
    • https://abp.io/docs/latest/solution-templates/application-module/

    This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.

    Markdown supported.
    Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
  • User Avatar
    0
    sumeyye.kurtulus created
    Support Team Angular Expert

    Hello,

    I recommend using the ABP React Native templates to get started. You can refer to the following resources:

    Overview: https://abp.io/docs/10.3/framework/ui/react-native?Architecture=Microservice Article: https://abp.io/community/articles/automate-localhost-access-for-expo-a-guide-to-dynamic-7cblqtj3#gsc.tab=0 Tutorial: https://abp.io/docs/10.3/tutorials/mobile/react-native

    Please note that these templates require more manual effort compared to other UI options. They primarily demonstrate how to integrate an ABP backend with React Native components, but do not include ready-to-use libraries like those provided for Angular UI. As a result, you may need to modify or remove some of the default behaviors to suit your needs.

    You can let us know if you need further assistance. Thank you for your cooperation.

    Markdown supported.
    Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
  • User Avatar
    0
    vmquang95 created

    Thank you.

    Markdown supported.
    Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
Boost Your Development
ABP Live Training
Packages
See Trainings
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v10.8.0-preview. Updated on September 16, 2026, 14:50
1
ABP Assistant
🔐 You need to be logged in to use the chatbot. Please log in first.