Ionic (mobile app framework)

From Wikipedia, the free encyclopedia

Ionic
Developer(s)Drifty[1]
Initial release2013
Stable release
7.8.1[2] Edit this on Wikidata / 20 March 2024; 23 days ago (20 March 2024)
Repository
Written inTypeScript, JavaScript
TypeSoftware framework
LicenseMIT License
Websiteionicframework.com

Ionic is an open-source UI toolkit for building cross-platform mobile, web, and desktop applications using web technologies such as HTML, CSS, and JavaScript/TypeScript. It provides a set of pre-designed UI components and tools for building high-quality, interactive applications. Ionic was originally built as a complete open-source SDK for hybrid mobile app development created by Max Lynch, Ben Sperry, and Adam Bradley of Drifty Co. in 2013.[3] The original version was released in 2013 and built on top of AngularJS and Apache Cordova. However, the latest release was re-built as a set of Web Components using StencilJS, allowing the user to choose any user interface framework, such as Angular, React or Vue.js. It also allows the use of Ionic components with no user interface framework at all.[4] Ionic provides tools and services for developing hybrid mobile, desktop, and progressive web apps based on modern web development technologies and practices, using Web technologies like CSS, HTML5, and Sass. In particular, mobile apps can be built with these Web technologies and then distributed through native app stores to be installed on devices by utilizing Cordova or Capacitor.[5]

History[edit]

Ionic was created by Drifty Co. in 2013. After releasing an alpha version of the framework in November 2013, a 1.0 beta was released in March 2014, a 1.0 final in May 2015, and several 2.0 releases in 2016.[6]

Since January 2019, Ionic 4 allows developers to choose other frameworks apart from Angular like React, Vue.js, and web components.[7] Ionic 4 was built using StencilJS.

Services and features[edit]

Ionic uses Cordova and, more recently, Capacitor plugins to gain access to host operating systems features such as Camera, GPS, Flashlight, etc.[8][9][10] Users can build their apps, and they can then be customized for Android, iOS, Windows, Desktop (with Electron), or modern browsers.[11] Ionic allows app building and deployment by wrapping around the build tool Cordova or Capacitor with a simplified 'ionic' command line tool.[12]

Ionic includes mobile components, typography, interactive paradigms, and an extensible base theme.[13]

Using Web Components, Ionic provides custom components and methods for interacting with them. One such component, virtual scroll, allows users to scroll through a list of thousands of items without any performance hits. Another component, tabs, creates a tabbed interface with support for native-style navigation and history state management.[citation needed]

Besides the SDK, Ionic also provides services that developers can use to enable features, such as code deploys, automated builds. Ionic also provides its own IDE known as Ionic Studio, but it was discontinued in 2020.[14]

Ionic also provides a command-line interface (CLI) to create projects. The CLI also allows developers to add Cordova plugins and additional front-end packages, enable push notifications, generate app Icons and Splash screens, and build native binaries.[15]

Supported platforms[edit]

For Android, Ionic supports Android 4.4 and up. For iOS, Ionic supports iOS 10 and up.[16] Ionic 2 supports the Universal Windows Platform for building Windows 10 apps.[17] Ionic Framework, based on Angular.js, supports BlackBerry 10 apps.[18]

Performance[edit]

Ionic apps run with a mixture of native code and web code, providing full access to native functionality if necessary, with the bulk of the UI of the app built with standard web technology. Ionic utilizes native hardware acceleration features available in the browser (such as CSS animations) and optimizes rendering (avoiding expensive DOM manipulation). Ionic leverages CSS transitions and transforms for animation as a way to leverage the GPU and maximize available processor time.[citation needed]

Installation[edit]

Ionic is an npm module and requires Node.js.[19]

References[edit]

  1. ^ Sarah Perez (10 March 2014). "Drifty, Makers Of The Ionic Mobile Framework, Raise $1 Million". Retrieved 14 March 2015.
  2. ^ "Release 7.8.1". 20 March 2024. Retrieved 22 March 2024.
  3. ^ Drifty, Inc (2016). "Ionic Documentation Overview - License".
  4. ^ "Introducing Ionic 4: Ionic for Everyone". 23 January 2019.
  5. ^ Drifty. "Ionic Framework". Retrieved 16 July 2017.
  6. ^ "Best Ionic App Development Company | Hire Ionic Developers". www.crystalinfoway.com. Retrieved 5 July 2023.
  7. ^ "Comparing v4.0.0-rc.3/v4.0.0 · ionic-team/ionic-framework". GitHub.
  8. ^ "Cordova Plugins". docs.usecreator.com. Retrieved 2 June 2018.
  9. ^ "Attractive Features Of Ionic App Development Framework". Retrieved 2 June 2018.
  10. ^ Drifty. "Ionic Framework". Archived from the original on 14 November 2019. Retrieved 2 June 2018.
  11. ^ Drifty. "Ionic Framework". Retrieved 2 June 2018.
  12. ^ "Mastering the Ionic Framework: Learn to Build & Deploy Native Speed HTML5 Based Apps - Thinkster". thinkster.io. Retrieved 2 June 2018.
  13. ^ Ionic. "Theming Basics - Ionic Documentation". Ionic Docs. Retrieved 26 November 2019.
  14. ^ "Ionic Studio is DeaD". Retrieved 10 May 2023.
  15. ^ Ionic. "Installing Ionic - Ionic Documentation". Ionic Docs. Retrieved 26 November 2019.
  16. ^ "Browser Support - Ionic Documentation". Retrieved 19 December 2019.
  17. ^ "Announcing Windows Support in Ionic 2". 29 March 2016. Retrieved 22 April 2016.
  18. ^ "Top JavaScript Frameworks for Enterprise Mobility". Retrieved 21 September 2015.
  19. ^ "Free Mobile App Development: Getting Started with Ionic Apps".

External links[edit]