Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Jaggery Introductory Webinar

Jaggery Introductory Webinar

Avatar for Nuwan Bandara

Nuwan Bandara

June 20, 2012
Tweet

More Decks by Nuwan Bandara

Other Decks in Technology

Transcript

  1. Why  do  we  need  another  server-­‐side  js   toolkit  

    q Right  now,  when  wriFng  a  web  app  we  need  to  walk   through  mulFple  layers  of  technology   §  HTML(5)/JS,  PHP/Ruby/Java,  ORM(SQL)   q InformaFon  captured  at  the  client  need  to  be   transformed  at  each  layer   §  JSON/CSV/XML   q Its  not  straighWorward  to  build  a  naFvely  REST/JSON   app   q Developing  an  API  coupled  to  the  app  is  a  nightmare  
  2. What  is  Jaggery   q A  completely  Javascript  way  of  wriFng

     all  parts  of  the  Web   applicaFons  and  services   §  Eliminates  the  mismatches  across  different  layers   q Closes  the  gap  between  Web  apps  from  Web  services  by   allowing  one  to  create  both  applicaFons  and  APIs  at  the   same  Fme.    
  3. What  jaggery  offers  for  multi-­‐tier  web  app   development  

      q A  vanilla  plaWorm   q No  heavy  frameworks   q No  restricFons   q Only  a  set  of  APIs   q Smooth  &  easy  deployment   q Enterprise  grade  runFme  
  4. What  it  has,  as  of  now   q A  module  architecture

      q The  runFme  augments  the  features  of  a  web  server   q It  talks  smoothly  in  JSON   q Can  handle  URL  pa8erns   q Can  talk  to  databases   q A  Shell  that  can  execute  the  jaggery  scripts   q Its  a  new  plaWorm,  we  believe  everybody  will  start  building   cool  things  
  5. How  to  make  things  work   q Extract  jaggery-1.0.0-SNAPSHOT_M5.zip  to  a

     directory  you   prefer.  lets  call  it  JAGGERY_HOME   q Navigate  to  {JAGGERY_HOME}/bin directory  which  contains  all   the  Jaggery  execuFon  scripts.   q Run  sh  {JAGGERY_HOME}/bin/server.sh      ({JAGGERY_HOME}/bin/ server.bat in  windows)  command  to  start  the  server   q Point  the  browser  URL  to  http://localhost:9763/taskmaster
  6. The  famous  "Hello  World"  in  Jaggery   q Create  a  directory

     called  helloapp  at  {JAGGERY_HOME}/ apps/ q Create  a  jaggery  file  helloworld.jag  inside  the  helloapp   directory  and  add  the  following  code  snippet   q Thats  it!  now  point  to  {http://localhost:9443/ helloapp/helloworld.jag}
  7. The  extensibility   q Jaggery  can  be  extended  using  modules  

    q Yeah  !  go  on  write  some  J   q You  can  import  any  script  which  is  wri8en  for  commonjs  as   a  jaggery  module   q If  nothing  for  the  rescue,  you  can  expose  even  a  JAVA   library  as  a  module  for  Jaggery  
  8. It's  awesome  coz,  it's  just  javascript  &  JSON   end

     to  end   q If  you  simply  want  to  send  some  JSON  to  the  client  
  9. It's  built  to  write  RESTy  apps     q Match  URLs

     at  runFme   q Design  URLs  at  development  Fme  
  10. It's  modular     q Its  extensible  via  modules   q Even

     the  core  is  wri8en  in  modules  and  bound  with   configuraFon  
  11. q It's  completely  open-­‐source,  under  Apache  2.0   q Mail  us  at

     [email protected] q Report  your  issues  at  https://wso2.org/jira/ browse/JAGGERY q The  source  is  at  (which  will  be  soon  moved  to  GitHub)   http://svn.wso2.org/repos/wso2/carbon/ platform/trunk/products/jaggery/