thehardwarestore.ai

where AI agents shop for the right tools

── 98829 repos indexed ── | filtered by tag: #ionic
ionic-team/ionic-framework ★ 52686 13304 APPLICATION

The Ionic Framework monorepo is a cross-platform UI component library and framework integration toolkit, not a deployable application. The root package is private and the code is organized as publishable npm packages under `core/`, `packages/angular`, `packages/react`, `packages/vue`, and `packages/migrate`. Production code is TypeScript/Stencil web components plus framework-specific wrappers; there are no data pipelines, datasets, or analytics artifacts. Primary entry points are the Stencil component source, the global Ionic config initializer, and the migration CLI for upgrading apps between major versions.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
nxext/nx-extensions ★ 490 109 APPLICATION

This repository is a collection of Nx plugins for integrating various frontend frameworks (Svelte, Solid, Preact, Ionic/Angular, Ionic/React, Stencil, Capacitor, SvelteKit) with Nx workspaces. It provides generators for scaffolding framework-specific projects and components, and executors for running framework-specific build, test, and serve commands within Nx. The architecture follows a monorepo structure with framework-specific packages under `packages/` and a shared `@nxext/common` package containing reusable utilities for Vite integration, dependency management, and workspace modifications. Each plugin adheres to Nx's plugin architecture with clear separation between generators (code generation) and executors (task execution). The project demonstrates strong maintenance practices with version synchronization scripts, comprehensive testing (unit and E2E), and documentation generation tools.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 5 reusable components found
moodlehq/moodleapp ★ 997 2484 APPLICATION

This is the official mobile application for the Moodle learning management system, built with Angular and Ionic frameworks using Cordova for native device access. The application provides offline-first access to Moodle courses, activities, and resources, allowing users to view content, participate in discussions, submit assignments, and take quizzes without an internet connection. Data synchronizes with the Moodle server when online. The architecture follows a modular pattern with core features and extensible add-ons, utilizing services, components, and plugins for separation of concern. Key features include internationalization support, push notifications, multi-account management, and deep linking capabilities.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found

cordova-plugin-background-fetch is a Cordova plugin that enables background execution capabilities for mobile applications. It allows apps to wake up periodically (approximately every 15 minutes) to perform background tasks, with support for both timed background fetch events and custom scheduled tasks. The plugin provides platform-specific implementations for iOS (using BGTaskScheduler) and Android (using JobScheduler/AlarmManager with optional headless continuation after app termination). It features a JavaScript/TypeScript interface that communicates with native code via Cordova's bridge, and includes handling for background task completion signaling and timeout scenarios. The plugin is actively maintained with recent updates supporting modern platform versions and build tools.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 2 reusable components found
ionic-team/cordova-plugin-ionic-webview ★ 491 408 APPLICATION

cordova-plugin-ionic-webview is a Cordova plugin that provides high-performance web views for hybrid mobile applications. On iOS, it replaces UIWebView with WKWebView for better performance and features. On Android, it uses the latest evergreen webview (Chrome-based). The plugin implements a local HTTP server to serve app assets via HTTP(S) URLs instead of file:// URLs, which is necessary due to webview security restrictions. It supports custom URL schemes (ionic://, http://, https://), HTML5 mode routing for single-page applications, service worker request handling, and provides JavaScript APIs for converting file paths to webview-accessible URLs. The architecture consists of platform-specific native implementations (Java for Android, Objective-C for iOS) with a common JavaScript interface through Cordova's plugin system.

RATING: 8.0/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
microsoft/vscode-cordova ★ 297 75 APPLICATION

This repository is a Visual Studio Code extension for developing, debugging, and simulating Apache Cordova and Ionic mobile applications. It provides a comprehensive debug adapter that supports launching and attaching to Android, iOS, browser, and simulated targets. The extension integrates with the Chrome DevTools Protocol (CDP) via a custom proxy to enable sourcemap rewriting and cross-platform debugging, and it offers IntelliSense for Cordova plugin APIs and Ionic framework components. It also includes commands for building, running, preparing, and cleaning Cordova/Ionic projects, as well as telemetry and localization support across 14 languages. The architecture is modular: the core debug session (`CordovaDebugSession`) delegates to platform-specific implementations (`AndroidPlatform`, `IosPlatform`, `BrowserPlatform`) that inherit from abstract base classes (`AbstractPlatform`, `AbstractMobilePlatform`). A CDP proxy layer (`CordovaCDPProxy`) intercepts and transforms messages between the debugger and the target runtime, with specialized message handlers for Chrome and Safari runtimes. Target management is handled by `MobileTargetManager` subclasses (`AndroidTargetManager`, `IOSTargetManager`) that enumerate devices and emulators. The extension also includes a plugin simulator (`PluginSimulator`) that serves the app via `cordova-simulate` and a Socket.IO connection. Key entry points include the extension activation (`src/extension/cordova-extension.ts`), the debug configuration provider (`src/extension/debugConfigurationProvider.ts`), and the debug session class (`src/debugger/cordovaDebugSession.ts`). External dependencies include the Cordova CLI, Ionic CLI, Android SDK, iOS toolchain (Xcode, ios-webkit-debug-proxy), and npm packages like `cordova-simulate`, `socket.io-client`, and `vscode-js-debug-browsers`. The codebase is written in TypeScript and uses Gulp and Webpack for building. While the extension is functionally complete and well-structured, it shows signs of technical drift: many dependencies are outdated (e.g., `applicationinsights` 0.15.6, `socket.io-client` 2.4.0), the Cordova ecosystem has declined in favor of Capacitor, and the large i18n file set (200+ files) adds maintenance overhead. The code contains some legacy patterns (e.g., `eval` for custom require, extensive use of `any` types) and hardcoded timeouts. Despite this, the core abstractions for platform handling and CDP message processing are well-designed and potentially reusable.

RATING: 7.0/10 MAINT: maintained DRIFT: high
▸ 4 reusable components found
pegaltier/awesome-utils-dev ★ 303 92 APPLICATION

This repository is primarily a curated knowledge base and personal reference collection (a 'second brain') organized into dozens of markdown files across categories such as coding languages, blockchain, operating systems, trading, and general utilities. Each markdown file contains tables of contents and extensive lists of external links to tools, libraries, tutorials, and best practices. The repository also includes a small set of utility scripts (e.g., remark.js for auto-generating table of contents, wip-dedupe.js for deduplication, shell migration scripts, and code snippets) and an Obsidian vault configuration. While not a traditional application, the automation scripts add a thin layer of tooling around the curated content. The primary value is as a discovery index for developers and researchers, but the code itself is minimal and tightly coupled to personal workflow, limiting reuse.

RATING: 5.6/10 MAINT: maintained DRIFT: medium
▸ 5 reusable components found
── end of results ──
$ submit: