Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sopraux/ionic-ng-walkthrough
https://github.com/sopraux/ionic-ng-walkthrough
Last synced: 6 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/sopraux/ionic-ng-walkthrough
- Owner: sopraux
- License: mit
- Fork: true (ariadnaGomez/ng-walkthrough)
- Created: 2017-03-27T08:20:34.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2017-03-30T07:03:47.000Z (almost 8 years ago)
- Last Synced: 2024-12-27T19:03:25.817Z (about 1 month ago)
- Language: JavaScript
- Size: 2.23 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
[![Build Status](https://travis-ci.org/sopraux/ionic-ng-walkthrough.svg?branch=master)](https://travis-ci.org/sopraux/ionic-ng-walkthrough)
# Description #
This is an extension of Angular ng-walkthrough and an adaptation to Ionic framework that makes the plugin available to search an element or text in any position
- [Repository ng-walkthrough](https://github.com/souly1/ng-walkthrough)
Credits to Sopra Steria Digital SC team
# ng-walkthrough
After not finding an Angular walkthrough/on-boarding/tour guide/learning page directive which was responsive, dynamic, easy to use and thus good for our [Fitness Meal Planner](http://www.fitnessmealplanner.com) mobile web App I decided to create one.
One of the most common design challenges emerging in mobile design is that of 'invitation' - creating an explanation walk through during user first interaction with the app so to engage him.
Following Theresa Neil's design patterns from [Mobile Design Pattern Gallery] (http://www.amazon.com/gp/product/1449314325/ref=as_li_ss_tl?ie=UTF8&tag=uxbo09-20&linkCode=as2&camp=217145&creative=399373&creativeASIN=1449314325)This angular directive implements a walkthrough via one of the following patterns: the transparency pattern or the tip pattern (an explanation about the different patterns can be found online at [ux booth](http://www.uxbooth.com/articles/mobile-design-patterns/))
# Special features
- Use the transparency walkthrough either using transclude or given attributes which contain basics such as text, gesture image, 'got it' button
- In transparency walkthrough easily highlight a DOM element (see demo)
- Use any image you want or choose a gesture image from the given collection (such as swipe with direction or tap) and place it bound to the element mentioned above.
- automatically moves text to bottom if item is covering the text with icon or arrow
- In tip mode add an Icon to sit on top or behind the tip text box## ScreenShots
Transparency walkthrough in Classic, Classic with arrow mode and Totally customizable mode respectively:![alt tag](/screenshots/screenshot1.png)
![alt tag](/screenshots/screenshot2.png)
![alt tag](/screenshots/screenshot3.png)Tip walkthrough mode:
![alt tag](/screenshots/screenshot4.png)
# Demo
A demo was created to show:
* The 2 basic transparency overlay types in 3 demoes fitting the screenshot examples - one basic template, one with arrows, and the last freestyle one using transclude.
* The tip mode walkthrough
[Demo can be found here](http://plnkr.co/edit/kHM9zHCxAA3gPYvedmdw?p=preview)## Requirements
- AngularJS
- No need for JQuery as JQLite is used## Notes
This directive has been originally developed for the [Ionic Framework](http://ionicframework.com), so it supports both angular and ionic apps.
## Installation
* **NPM**: `npm install ng-walkthrough`
* **Bower**: `bower install ng-walkthrough`## Usage
- Load the script files in your application:
```html
```
Add dependencies on the `ng-walkthrough` AngularJS module:
```javascript
angular.module('myApp', ['ng-walkthrough']);
```If you want to use the directives supplied tap icons add this script file:
```html
```
You can now use the directive, add the element to your HTML:
```html...
```
and use one of the two configurations:
1> Place any HTML code as you like instead of the three dotes as this uses the Angular transclude ability. Make sure to specify walkthrough-type="transparency" or "tip" for this to work.
2> Use the additional optional properties the directive has to quickly create a walkthrough screen.## Usage Example 1 - transparency Non transclude option
```html
```
## Usage Example 2 - transparency using transclude option
```html
```
## Usage Example 3 - tip type walkthrough
```html
```
## Directive Attributes
- `is-active` (mandatory) - Any walkthrough type. Bound element controls display the directive. Set 'true' to bound element in order to display.
- `walkthrough-type` (mandatory) - Any walkthrough type. Specifies what type of walkthrough to display. Currently supported are 'transparency' and 'tip' types
- `focus-element-id` (optional) - Any walkthrough type. ID of DOM element we want to give focus to, without it all screen will be grayed out
- `is-round` (optional) - Any walkthrough type. Set to 'true' if you want the focused area to be round, otherwise it will be square set to the size of the DOM element
- `has-glow` (optional) - Any walkthrough type. Set to 'true' if you want the focused area to have a glow around it
- `icon` (optional) - Any walkthrough type. If set to any of the predefined values ("single_tap", "double_tap", "swipe_down", "swipe_left", "swipe_right", "swipe_up"), in such case the icon will be bound to focus element (if exists), make sure to add 'ng-walkthrough.tap_icons.js' following instructions above. any other icon can be used and will be loaded from supplied folder
- `main-caption` (optional) - Any walkthrough type. This is the text that will be displayed in the walk-through. Text can be formatted
- `use-button` (optional) - Any walkthrough type. set to 'true' you want a button displayed that most be clicked in order to close walkthrough, otherwise clicking anywhere while walkthrough displayed will close it
- `icon-padding-left` (optional) - Any walkthrough type. Add padding to the icon from the left in percentage
- `icon-padding-top` (optional) - Any walkthrough type. Add padding to the icon from the top in pixels
- `tip-icon-location` (optional) - For tip walkthrough. In case there is an overlap between the tip text box and the tip icon you can define here which is on top. Either "FRONT" or "BACK"
- `force-caption-location` (optional) - Any walkthrough type. Set caption location at the top of screen or closer to bottom. Acceptable values: "TOP" or "BOTTOM"
- `tip-color` (optional) - For tip walkthrough. Define the tip textbox background color. Currently supports "BLACK" or "WHITE" values
- `is-bind-click-event-to-body` (optional) - Any walkthrough type. If 'use-botton' is not set to true, then any this will bind the click events to the body to capture events outside walkthrough, for example: ionic header
- `on-walkthrough-show` (optional) - Any walkthrough type. Bind method to be called when walkthrough is displayed
- `on-walkthrough-hide` (optional) - Any walkthrough type. Bind method to be called when walkthrough is hidden
- `header-bar` (optional) - If defined it will look for element to focus in the nav bar
- `footer-bar` (optional) - If defined it will look for element to focus in the footer
- `text-position` (optional) - Pixels from top to place the text## Testing
Ran on Chrome, Safari, Iphone 4 Emulator and Android S3,
For continuous integration with Karma with Jasmine, run on Travis CI for FireFox## License
As AngularJS itself, this module is released under the permissive [MIT license](http://revolunet.mit-license.org). Your contributions are always welcome.