GithubHelp home page GithubHelp logo

ipapp's Introduction

Using IPapp

IPapp is an Instant Places application generator. It will create the basic application structure, contact points and will keep your manifest file updated in the process.

It is a recommended workflow as it will guide you and help you getting started with Instant Places Applications.

Installation

IPapp is written in NodeJS, and as such it is cross-platform. Just grab a suitable copy for your platform from the official site and install it. The installer should include the npm package manager. For convenience, IPapp is at the npm registry, so you can run:

npm install -g ipapp

And we're done. IPapp is installed globally. You should now have an ipapp executable available in your system.

When a new version is released you can update it by running:

npm update -g ipapp

Application Initialization

The first thing you need is a project folder. Any folder will do the job. Then, in the folder, run the initialization command:

ipapp init

The generator will then ask you about some details of your application:

  • name
  • description
  • version of the application as specified by Semantic Versioning. It's important to keep track of your package versions in a smart way.
  • your name
  • your e-mail
  • and some keywords that properly identify your application.

This information is required to generate the first version of your manifest.json file. This file should be in the root folder and contain the details you previously entered.

Additionally, a basic structure of your application should exist in your directory. Besides the manifest.jsonfile, a common folder was also created. This is were you should put the files shared among contact points or configuration views.

Generating Contact Points

Your application won't do much until you generate some contact points. At the moment, the generator supports the following contact points:

  • Public display
  • Mobile Device
  • Place Web Page

To generate a contact point just run the following command in your project's root folder:

ipapp contactpoint <type>

The type argument can be display, mobile or web. Notice that the manifest file is updated with the corresponding contact point that was generated. This command will check for the manifest file, so it is mandatory to run it in a previously initialized project.

Configuration Views

Instant Places applications require

Serving Your Application

For development purposes, IPapp is bundled with a simple static http server. You can use it to quickly test your application, without any deployment process. To use it, you can run:

ipapp server

This will start the http server in port 8888, by default. Optionally you can set a specific port:

ipapp server 12345

Future Work

  • Application Build:

  • Minify CSS and javascripts

  • Compile Coffescript and Less

  • Maybe using Collate

  • Better support for configuration views generation.

  • Support for publishing an application.

  • Web frontend.

  • IDE frontend.

Regular Application Structure:

+-AppName/
  +-display/
  | +-index.html
  | +-activation.html
  | +-style/
  | | +-style.css
  | +-script/
  |   +-lib/
  |     +-specific_lib.js
  |   +-main.js
  +-mobile/
  | +-index.html
  | +-activation.html
  | +-style/
  | | +-style.css
  | +-script/
  |   +-main.js
  +-common/
  | +-script/
  | | +-api.js
  | | +-scheduler.js
  | | +-presentation_units.js
  | | +-other_libraries.js
  | +-style/
  | | +-global.css
  | +-img/
  |   +-logo.png
  |   +-user.png
  +-subscription/
  |   +-index.html
  +-manifest.json

ipapp's People

Contributors

miguelcobain avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.