App Store

The App Store is a core application within UNA Studio that serves as the central hub for discovering, installing, managing, and updating all modules (apps) and templates available for your UNA site. It acts as the bridge between your local UNA installation and the broader ecosystem of extensions available through the official UNA.io marketplace and potentially other sources.

Accessing the App Store

The App Store is readily accessible from the main navigation within the UNA administration backend:

  1. Log in to your UNA site's Studio.
  2. Navigate to the App Store menu item (often represented by a shopping bag or puzzle piece icon).

Key Features and Functionality

The App Store app provides a comprehensive interface for managing your site's extensions:

Discovering and Browsing Apps/Templates

  • Browse View: Displays available apps and templates, typically in a grid or list format.
  • Search: Allows you to search for specific apps or templates by name, keyword, or vendor.
  • Filtering & Sorting: Provides options to filter the view:
    • Categories: Group apps by function (e.g., Photos, Videos, Tools, Integrations).
    • Status: Show All, Installed, Not Installed, Updates Available, Featured, Disabled.
    • Vendor: Filter by the developer or company that created the app.
    • Sorting: Arrange apps by criteria like Newest, Updated, Popularity, Title.
  • App Details: Clicking on an app reveals more information, such as:
    • Icon, Title, Vendor
    • Detailed Description
    • Version Information (installed version vs. available version)
    • Screenshots/Videos (if provided by the vendor)
    • Price (for commercial apps)
    • Dependencies (required apps/modules)
    • Changelog (for updates)
  • UNA.io Connection: The App Store connects to the UNA.io marketplace to fetch the list of available apps. For installing paid apps or accessing private apps associated with your UNA.io account, you need to add your UNA.io account key in Studio > Settings > General. Free apps can often be downloaded and installed without this key.

Installing Apps and Templates

  • One-Click Installation: For most apps (especially free ones or those already purchased on UNA.io and linked via your key), installation is often a simple click of the "Download & Install" or "Install" button.
  • Dependency Management: Before installation, the App Store automatically checks if the app requires other apps (dependencies) to function.
    • If dependencies are missing, it will usually prompt you to install them first or install them automatically alongside the requested app.
    • Installation will be blocked if critical dependencies cannot be met (e.g., incompatible versions).
  • Installation Process: Behind the scenes, the App Store typically performs these steps:
    1. Downloads the app package (usually a zip file).
    2. Unpacks the files into the correct /modules/[vendor]/[module_name]/ directory.
    3. Runs the module's installer (Installer::install()), which handles:
      • Database schema changes (creating tables/fields).
      • Registering settings, permissions (ACL), pages, menus, alerts, Polyglot keys, cron jobs, etc.
      • Performing any other necessary setup tasks.
    4. Updates the list of installed modules.

Managing Installed Apps

The App Store provides tools to manage the apps already present on your site (filter by "Installed" status):

  • Enable/Disable:
    • Disable: Deactivates an app without removing its files or database entries. The app's functionality will no longer be available on the site. This is useful for troubleshooting or temporarily removing a feature. Note: Disabling an app that other apps depend on can cause issues.
    • Enable: Reactivates a previously disabled app.
  • Uninstall:
    • This action permanently removes an app from your site.
    • It triggers the app's uninstaller (Installer::uninstall()), which should ideally remove database tables, settings, permissions, pages, menus, etc., that it created.
    • Caution: Uninstalling may or may not remove the content generated using the app (e.g., posts, photos). This behavior often depends on the specific app's uninstaller logic. Always back up your site before uninstalling significant apps.
    • Files associated with the module are typically deleted from the /modules/ directory.
    • Uninstalling will be blocked if other installed apps depend on the one you are trying to remove. You must uninstall the dependent apps first.
  • Settings: While app configuration settings are generally managed via Studio > Settings > [App Name], the App Store listing for an installed app might provide a direct link to its settings page for convenience.

Updating Apps and Templates

Keeping extensions updated is vital for security, performance, and access to new features.

  • Update Notifications: The App Store indicates available updates with badges, notifications, or through the "Updates Available" filter.
  • Update Process: Usually involves clicking an "Update" button. The process typically:
    1. Downloads the new version package.
    2. Backs up the existing module files (often placed in /backup/).
    3. Unpacks the new files, overwriting the old ones.
    4. Runs the module's update procedure within its installer, which handles database schema changes or data migrations between versions.
  • Changelogs: Good practice dictates checking the changelog (if provided by the vendor in the app details) before updating to understand what changes, new features, or potential breaking changes are included.
  • Backup: Always back up your site (database and files) before applying updates, especially major ones. While the update process is generally reliable, unexpected issues can occur.
  • Modules (Apps): The primary units of functionality in UNA (e.g., Profiles, Groups, Posts, Messenger). Managed via the App Store.
  • Templates: Control the visual appearance (theme) of the site. Also managed via the App Store.
  • Vendors: The individuals or companies developing and distributing apps/templates (e.g., BoonEx, AQB Soft).
  • Dependencies: When one app requires another app to be installed and enabled to function correctly. The App Store helps manage these relationships.

Common Workflows

  1. Adding a Feature: Browse/Search the App Store -> Find suitable App -> Review Details & Dependencies -> Install -> Configure Settings (Studio > Settings) -> Test.
  2. Changing Theme: Browse Templates in App Store -> Install New Template -> Activate via Studio > Designer -> Customize.
  3. Routine Maintenance: Check App Store for Updates -> Review Changelogs -> Backup Site -> Apply Updates -> Test Site.
  4. Troubleshooting: Disable recently installed/updated apps via App Store to isolate conflicts -> Check Logs -> Re-enable one by one.

Troubleshooting Tips

  • Cache: After installing, uninstalling, enabling, or disabling apps, always clear the site's caches (Studio > Developer > Cache > Clear All DB Cache & Template Cache).
  • File Permissions: Ensure the web server has the necessary write permissions for the /modules/, /templates/, /cache/, /cache_public/, /logs/, /tmp/, and /backup/ directories for installations and updates to work correctly.
  • Dependency Errors: If installation fails due to dependencies, carefully read the error message to identify the missing or incompatible app(s) and address them first.
  • Failed Installs/Updates: Check the UNA error logs (/logs/) and PHP error logs for specific error messages if an operation fails.
  • Contact Vendor: For issues specific to a third-party app, consult the vendor's documentation or support channels.
On This Page