AppMachine Help Center

How can we help you?

Follow

Getting Started

To build your own functionality using our JavaScript block and SDK we wanted to give you the possibility to write your code in your favorite IDE and publish it to your app with zero effort. To do so we are using NPM (Node Package Modules) and Grunt (JavaScript Task Runner). 

Installing Node.js

Both NPM and grunt relay on Node.js thus to use either of both you need to have Node.js installed on your machine. To install node.js follow the steps below:

  1. Go to Nodejs.org and click the "Install" button.
    Schermafbeelding_2014-10-02_om_19.46.11.png
  2. Start the installer and follow the installation instructions that appear on the screen.
  3. Once the installation is completed you should be able to use Node.js (and thus NPM) on your machine.

Creating a new JavaScript block

After you've installed Node.js on your machine you can start coding! To do so you need to have a JavaScript block in your app. If you don't you can add one following these simple steps:

  1. Go to https://design.appmachine.com and log in;
  2. Open the app to which you want to add the JavaScript block;
  3. Open the "Content" section of the app;
    Schermafbeelding_2014-10-02_om_20.05.00.png
  4. Click the "Add Block" button;
    Schermafbeelding_2014-10-02_om_20.06.03.png
  5. Select the "Pro" tab and then select the "JavaScript" block;
  6. Click "Add block";
  7. Give your JavaScript block a name and click "Finish";

Alright once you've added a new JavaScript block or selected your existing JavaScript block we can start building.

  1. First we need to setup the block on your machine. To do so, click the "Get me started" button;
    Schermafbeelding_2014-10-02_om_20.12.36.png
  2. This will automatically download a zip file to your machine. Once the download is complete, unpack the zip folder to a directory on your machine.
  3. Now we need to do a little configuration, first we need to start a Terminal - for OS X or Linux users or a Command Prompt for Windows Users;
  4. Navigate to the directory you used to unpack the files in your Terminal or Command Prompt window;
  5. Once your working directory of the Terminal or Command Prompt is the same as the directory you used to unpack the zip file you can type the following command in your console:
    npm install

    Note: you might need to run this command with elevated permissions.

  6. Next we need to install grunt, to do so type the following commands:
    npm install grunt -g
    npm install grunt-cli -g

    Note: you might need to run this command with elevated permissions.

  7. Once all all the packages are installed you can already run the "Hello world" sample on your local machine. The only thing you need to do is type the following command:
    grunt init

  8. This will update the AppMachine Modules and start a local web server. Once completed your browser should open up and show you the default Hello world sample;
    Schermafbeelding_2014-10-02_om_20.48.39.png

PLEASE NOTE:

This feature operates under the following two limitations:
1. A 15MB maximum for all save-file calls from the JavaScript zip file 
2. A 100MB maximum for all requests. 
 
If your file or requests exceed the maximums stated above, you will get an error message stating that this is the case. 

 

Next: Publishing your changes >

Was this article helpful?
1 out of 1 found this helpful
Have more questions? Submit a request

Comments

  • Avatar
    Brandon Lemire

    This is not helpful as it does not provide useful tips to setting up a custom JavaScript call. Reviewing the process using the current release would be extremely helpful, considering the beginning of the tutorial is out of date.

  • Avatar
    Matthijs Koopman

    Hi Brandon,

    I'm sorry to hear this, could you please indicate what specific part of this tutorial is out of date? What issues are you running into?

  • Avatar
    Norman Russo

    I think he means that you should do more tutorials, even the small one, that explain different aspect of the same things, like "how to create an ajax call with Javascript AppMachine SDK" or "how to make a 'GoTo' link to navigate into the native app pages".

    This kind of tutorial are good to understand the very basic potential, we need more tutorials, covering a very large different situations, and this advise is for any aspect of the app. There should be someone that know/learn well AppMachine and that will make videos covering every part of this cool Service. Without it we can't really understand the real potential of all the blocks/stuff in it!

  • Avatar
    Scott30134

    Wholeheartedly agree with Norman. I've struggled and struggled. I have a business case, but I can't fully develop what I want to with AppMachine. Without better, more thorough, up to date, tutorials and/or training sessions, the potential is simply potential.

  • Avatar
    Matthijs Koopman

    Hi Norman and Scott,

    Thank you really much for your feedback. I do understand the request right now and we will come up with some more tutorials.
    When we have them ready I will update this post as well.

    In addition we have some SDK Reference available over here:
    http://www.appmachine.com/documents/jsdoc/

    Edited by Matthijs Koopman
  • Avatar
    Tim

    How much access do I have to native functionality through the javascript block? Since literally NONE of your API based blocks work, I've began to teach myself to build apps on my own. I've been learning how to use the Ionic/Cordova framework and it's not much more complicated than appmachine, but they are free. Why should I continue to pay you guys $100's per month when none of the functionality actually works?

    Can I build blocks that will utilize a mobile devices native functionality like I would be able to with a Cordova plugin? What framework is appmachine built upon?

  • Avatar
    Arjen de Jonge

    Hello Tim,

    Thanks for your message! I'm sorry to hear that you've been having some issues with API based blocks in our platform.

    I've created a ticket for you in our support desk. I'd like to find out what kind of issues you're experiencing and what we can do to improve our platform based on this. I'll await your reply! 

    Edited by Arjen de Jonge