PHP Classes

PHP AMP Page Generator: Generate HTML for using as Google AMP site

Recommend this page to a friend!
  Info   View files Example   View files View files (140)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog    
Ratings Unique User Downloads Download Rankings
Not enough user ratingsTotal: 260 All time: 7,809 This week: 126Up
Version License PHP version Categories
ampgeneratorone 1.0.1GNU Lesser Genera...5HTTP, PHP 5, Performance and optimiza...
Description 

Author

This package can generate HTML for using as Google AMP site.

It provides several classes that abstract the different types of HTML elements that are usually present in a Web page.

The package can compose the output of the whole page from the output of the objects for each page element and returns the page output as a string or saves it to a given file.

Innovation Award
PHP Programming Innovation award nominee
September 2018
Number 9
AMP (Accelerated Mobile Pages) is a form of delivering Web site pages in a way that is more efficient and pages can be loaded by browsers quicker.

This package can help composing and serving the Web site pages in PHP using the rules of AMP.

Manuel Lemos
Picture of Jorge Castro
  Performance   Level  
Name: Jorge Castro <contact>
Classes: 30 packages by
Country: Chile Chile
Age: 48
All time rank: 12743 in Chile Chile
Week rank: 89 Up1 in Chile Chile Up
Innovation award
Innovation award
Nominee: 14x

Winner: 2x

Example

<?php

use eftec\AmpGeneratorOne\AmpGeneratorOne;
use
eftec\AmpGeneratorOne\ButtonModel;
use
eftec\AmpGeneratorOne\FooterModel;
use
eftec\AmpGeneratorOne\HeaderModel;
use
eftec\AmpGeneratorOne\HeadModel;
use
eftec\AmpGeneratorOne\LinkModel;
use
eftec\AmpGeneratorOne\SectionModel;
use
eftec\AmpGeneratorOne\StructureModel;

// resources
$ampDesc="While this example could run in a regular browser but it must be tested under an AMP-compatible browser (firefox has a plugin)";
$cupcakes_long_desc="The earliest extant description of what is now often called a cupcake was in 1796, when a recipe for \"a light cake to bake in small cups\" was written in American Cookery by Amelia Simmons. The earliest extant documentation of the term cupcake itself was in \"Seventy-five Receipts for Pastry, Cakes, and Sweetmeats\" in 1828 in Eliza Leslie's Receipts cookbook.<br>
In the early 19th century, there were two different uses for the term cup cake or cupcake. In previous centuries, before muffin tins were widely available, the cakes were often baked in individual pottery cups, ramekins, or molds and took their name from the cups they were baked in. This is the use of the name that has remained, and the name of \"cupcake\" is now given to any small, round cake that is about the size of a teacup. While English fairy cakes vary in size more than American cupcake, they are traditionally smaller and are rarely topped with elaborate icing.<br>
The other kind of \"cup cake\" referred to a cake whose ingredients were measured by volume, using a standard-sized cup, instead of being weighed. Recipes whose ingredients were measured using a standard-sized cup could also be baked in cups; however, they were more commonly baked in tins as layers or loaves. In later years, when the use of volume measurements was firmly established in home kitchens, these recipes became known as 1234 cakes or quarter cakes, so called because they are made up of four ingredients: one cup of butter, two cups of sugar, three cups of flour, and four eggs.[5][6] They are plain yellow cakes, somewhat less rich and less expensive than pound cake, due to using about half as much butter and eggs compared to pound cake.<br>"
;

$cupcakes_med_desc="The earliest extant description of what is now often called a cupcake was in 1796, when a recipe for \"a light cake to bake in small cups\" was written in American Cookery by Amelia Simmons. The earliest extant documentation of the term cupcake itself was in \"Seventy-five Receipts for Pastry, Cakes, and Sweetmeats\" in 1828 in Eliza Leslie's Receipts cookbook.<br>
In the early 19th century, there were two different uses for the term cup cake or cupcake. In previous centuries, before muffin tins were widely available, the cakes were often baked in individual pottery cups, ramekins, or molds and took their name from the cups they were baked in. This is the use of the name that has remained, and the name of \"cupcake\" is now given to any small, round cake that is about the size of a teacup. While English fairy cakes vary in size more than American cupcake, they are traditionally smaller and are rarely topped with elaborate icing.<br>"
;

$cupcakes_short_desc="The earliest extant description of what is now often called a cupcake was in 1796, when a recipe for a light cake to bake in small cups was written in American Cookery by Amelia Simmons. The earliest extant documentation of the term cupcake itself was in Seventy-five Receipts for Pastry, Cakes, and Sweetmeats ";

$links=array("Cupcakes","Cake","Muffin","Coffee");

// example
include "../lib/AmpGeneratorOne.php";

$base = dirname('http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']); // this operation is not safe, it's only an example


$amp=new AmpGeneratorOne("https://www.canonical.com",$base,"#4040ff","#197bc6","text-white");
$amp->setDefault("white","text-black");
// #header
// note:structured is optional
$structured=new StructureModel();
$structured->image="resources/logo/twitter_header_photo_1.png";
$structured->imageWidth=1500;
$structured->imageHeight=500;
$structured->url="https://www.canonical.com";
$structured->twittercreator="@somebody";
$structured->twittersite="@somesite";
$structured->name="AMP Generator One";
$structured->description=$cupcakes_short_desc;
$structured->ogtype="website";
$amp->startAmp(new HeaderModel($ampDesc,"AMP Generator One",$base."/resources/favicon.ico"),$structured);
// #analitics
$amp->sectionAnalytics("UA-xxxxxx-1");
// #sidebera
$menu=array();
foreach(
$links as $link) {
   
$menu[] = new LinkModel($link, "https://wwww.canonical.com/id/".$link, "");

}
$amp->sidebar($menu);



// #1 head
$amp->setBackgroundColor("white")->head(new HeadModel("",$base."/resources/logo/logo.png"),70,70);

// #
$amp->setBackgroundColor("#2389da")->setClassTextColor("text-white")
    ->
sectionFirst(new SectionModel("AMP Generator One",$cupcakes_short_desc));

// # header

$main=new SectionModel("AMP Generator One",$ampDesc,$base."/resources/pexels-photo-532126.jpeg");
$main->buttons[]=new ButtonModel("Would you like to know more?","#");
$main->buttons[]=new ButtonModel("Would you like to know more?","#","danger");
$amp->setBackgroundColor("rgb(0, 174, 239)")->setClassTextColor("text-white")
    ->
sectionHeaderCentral($main);



// section text
$secText=new SectionModel("The Cupcake",$cupcakes_short_desc);
$amp->sectionText($secText);
// # section image
$secImage= new SectionModel("The Cupcakes",$cupcakes_short_desc,$base."/resources/banner_2250x441.jpg");
$secImage->buttons[]=new ButtonModel("More Information","#");
$secImage->buttons[]=new ButtonModel("More Information","#","warning");
$amp->setPadding(0,0)->sectionImage($secImage,2250,441);

// # Image and content
$secImgCont=new SectionModel("The Cupcakes",$cupcakes_med_desc,$base."/resources/pexels-photo-1073767.jpeg");
$secImgCont->buttons[]=new ButtonModel("More Information","#"); // only the first button is displayed.
$amp->sectionImageContent($secImgCont,300,300);
$secImgCont=new SectionModel("The Cupcakes",$cupcakes_med_desc,$base."/resources/pexels-photo-1073767.jpeg");
$secImgCont->buttons[]=new ButtonModel("More Information","#"); // only the first button is displayed.
$amp->sectionImageContentLeft($secImgCont,300,300);
// # table
$prod=array("Product"=>"Cupcake","Price"=>200);
$products=array($prod,$prod,$prod); // it also works with list of objects
$amp->sectionTable($products);
// # raw
$amp->sectionRaw("<pre>Note:Google map musn't be at the top of the page. It's an amp restriction</pre>");
// # map boxed
$map=new SectionModel("Cupcake","Desc");
$amp->sectionGMapBoxed($map,"https://www.google.com/maps/embed?pb=!1m10!1m8!1m3!1d13320.170086624597!2d-70.60383335!3d-33.422135749999995!3m2!1i1024!2i768!4f13.1!5e0!3m2!1sen!2scl!4v1536022894740");
// # map full
$map=new SectionModel("Cupcake","Desc");
$amp->sectionGMapFull($map,"https://www.google.com/maps/embed?pb=!1m10!1m8!1m3!1d13320.170086624597!2d-70.60383335!3d-33.422135749999995!3m2!1i1024!2i768!4f13.1!5e0!3m2!1sen!2scl!4v1536022894740");
// # images
$sectImages=[];
$sectImages[]=new SectionModel("Cupcake",$cupcakes_short_desc,"/resources/cupcake_square.jpg");

$sectImages[]=new SectionModel("Cupcake",$cupcakes_short_desc,"/resources/cupcake_square.jpg");
$sectImages[]=new SectionModel("Cupcake",$cupcakes_short_desc,"/resources/cupcake_square.jpg");
$sectImages[]=new SectionModel("Cupcake",$cupcakes_short_desc,"/resources/cupcake_square.jpg");
$sectImages[]=new SectionModel("Cupcake",$cupcakes_short_desc,"/resources/cupcake_square.jpg");
$sectImages[]=new SectionModel("Cupcake",$cupcakes_short_desc,"/resources/cupcake_square.jpg");
$sectImages[]=new SectionModel("Cupcake",$cupcakes_short_desc,"/resources/cupcake_square.jpg");
$si=new SectionModel("Cupcake Link",$cupcakes_short_desc,"/resources/cupcake_square.jpg");
$si->url[]=new LinkModel("link","#");
$sectImages[]=$si;
$amp->sectionColImage($sectImages,400,400);
// #
$contents=[];
$col1=new SectionModel("Cupcake",$cupcakes_short_desc,"","","fas fa-birthday-cake");
$col1->buttons[]=new ButtonModel("link","#");
$contents[]=$col1;
$contents[]=new SectionModel("Cupcake",$cupcakes_short_desc,"","","fas fa-birthday-cake");
$amp->setBackgroundColor("#909090")->setClassTextColor("text-white")
    ->
sectionCols($contents);
// # Quotes

$amp->sectionTextQuote(new SectionModel("It is a quote",$cupcakes_short_desc));
// #

$ib=new SectionModel("Cupcake Link",$cupcakes_short_desc,"/resources/pexels-photo-1028704.jpeg");
$ib->buttons[]=new ButtonModel("link","#");
$amp->sectionImageButton($ib,false);



// ul
$products=array("Chocolate","Easy Little Pandas","Apple Pie Cupcakes","Triple Salted Caramel Cupcakes","Sprinkles Strawberry Cupcakes");
$uls=array();
$uls[]=new LinkModel("Chocolate","#");
$uls[]=new LinkModel("Chocolate","#");
$uls[]=new LinkModel("Chocolate","#");
$amp->sectionUL($uls);

// # ol
$amp->sectionOL($uls);

// # buttons

$sb=new SectionModel("Cupcake",$cupcakes_short_desc);
$sb->buttons[]=new ButtonModel("primary","#","primary");
$sb->buttons[]=new ButtonModel("success","#","success");
$sb->buttons[]=new ButtonModel("warning","#","warning");
$sb->buttons[]=new ButtonModel("danger","#","danger");
$amp->setBgImage("resources/banner_2250x441.jpg")->sectionButtons($sb);
$amp->sectionButtons($sb);

// # navigation
$sbnav=new SectionModel("Cupcakes",$cupcakes_short_desc);
$sbnav->buttons[]=new ButtonModel("primary","#","primary");
$navCol1=[];
$navCol1[]=new LinkModel("Cupcakes","#","",true);
$navCol1[]=new LinkModel("Easy Little Pandas","#");
$navCol1[]=new LinkModel("Apple Pie Cupcakes","#");
$navCol1[]=new LinkModel("Chocolate","#");

$navCol2=[];
$navCol2[]=new LinkModel("Muffins","#","",true);
$navCol2[]=new LinkModel("Apple-Cinnamon","#");
$navCol2[]=new LinkModel("Banana","#");

$amp->setBackgroundColor("black")->setClassTextColor("text-white")->sectionNavigation($sbnav,"",0,0,$navCol1,$navCol2);


// #5 footer
$amp->setPadding(0,0)
    ->
sectionFooter(new FooterModel("Copyright something(c)","See as desktop"));

$amp->render(); // you could render to output
$amp->renderToFile("example-generated.html"); // or, you could render to file. PICK ONE


Details

AMPGeneratorOne

The library generates Google AMP sites using PHP by using procedural code.

Build Status Packagist Total Downloads [Maintenance]() [composer]() [php]() [php]() [CocoaPods]()

This application simplifies (via code) the generation of an AMP site. It's easiest to program, just a few of lines of code and that's it.

For example, let's say that you want to add a new section

$secImage= new SectionModel("The Cupcakes","","/image.jpg");
$secImage->buttons[]=new ButtonModel("More Information","#");
$secImage->buttons[]=new ButtonModel("More Information","#","warning");

$amp->sectionImage($secImage,2250,441);

It will generate the next visual:

simple section

How it works?

use eftec\AmpGeneratorOne\AmpGeneratorOne;
use eftec\AmpGeneratorOne\ButtonModel;
use eftec\AmpGeneratorOne\FooterModel;
use eftec\AmpGeneratorOne\HeaderModel;
use eftec\AmpGeneratorOne\HeadModel;
use eftec\AmpGeneratorOne\LinkModel;
use eftec\AmpGeneratorOne\SectionModel;

include "lib/AmpGeneratorOne.php";
$amp=new AmpGeneratorOne("https://www.canonical.com","https://www.canonical.com/amp");
// # 
$amp->startAmp(new HeaderModel("description","title","favicon.ico"));

// # sidebar (optional)
$amp->sidebar($menu); // $menu is an array of /LinkModel()

// #1 head (the top bar)
$amp->head(new HeadModel("",$base."logo.png"),70,70);

// # example section
$amp->sectionFirst(new SectionModel("Title","Description"));

// # footer
$amp->sectionFooter(new FooterModel("Copyright something(c)","See as desktop"));

amp->render(); // you also could generate a file.

result

Tablet version

result

Mobile version

result.jpg)

Mobile version (slider open)

Method __construct

AmpGeneratorOne constructor.

Parameters:

  • $canonical Original url . Example https://www.southprojects.com/somesite (string)
  • $base Original base url without trailing slash. Example https://www.southprojects.com (string)
  • $sidebarColor The background color of the sidebar Example #ffffff,white,rgb(255,255,255) (string)
  • $themecolor .The color of the logo,burger Example #ffffff,white,rgb(255,255,255) (string)
  • $classSidebar. text-primary,text-secondary,text-success,text-info,text-warning,text-danger,text-white,text-black (string) ## Method fixRelativeUrl Fix an url and convert a relative url into an absolute url

Parameters:

  • $url param $url ()
    $tmp=$ampgeneratorone->fixRelativeUrlthis(); 
    
    ## Method genStructured It generates the social and seo structure (Twitter card, Facebook OG and Google Schema)

Parameters:

  • $structured param StructureModel $structured (StructureModel)
    $tmp=$ampgeneratorone->genStructuredthis(); 
    
    ## Method startAmp Start to generate an Amp site.

Parameters:

  • $param param HeaderModel $param (HeaderModel)
  • $structured param StructureModel $structured (StructureModel) ## Method sidebar Generates a sidebar.

Parameters:

  • $urls param LinkModel[] $urls (LinkModel[])
    $tmp=$ampgeneratorone->sidebarthis(); 
    
    ## Method head Generates the header navigation

Parameters:

  • $param param HeadModel $param (HeadModel)
  • $width param int $width (int)
  • $height param int $height (int)
    $tmp=$ampgeneratorone->headthis(); 
    
    ## Method sectionFooter It generates a footer of the amp site.

Parameters:

  • $param param FooterModel $param (FooterModel)
    $tmp=$ampgeneratorone->sectionFooterthis(); 
    
    ## Method sectionAnalytics Generates a Google Analytics section

Parameters:

  • $account UA-XXXXX-Y (string)
    HeaderModel());
    
    $tmp=$ampgeneratorone->sectionAnalyticsthis(); ## Method sectionFirst It draw a first section (hero style)

Parameters:

  • $content param SectionModel $content (SectionModel)
    $tmp=$ampgeneratorone->sectionFirstthis(); 
    
    ## Method sectionImageButton It generates a section with a single button.

Parameters:

  • $content param SectionModel $content (SectionModel)
  • $fullscreen param bool $fullscreen (bool)
    $tmp=$ampgeneratorone->sectionImageButtonthis(); 
    
    ## Method sectionText It generates a section with a text.

Parameters:

  • $content param SectionModel $content (SectionModel)
    $tmp=$ampgeneratorone->sectionTextthis(); 
    
    ## Method sectionTextQuote It generates a quote text

Parameters:

  • $content param SectionModel $content (SectionModel)
    $tmp=$ampgeneratorone->sectionTextQuotethis(); 
    
    ## Method sectionUL It generates an unsorted list section

Parameters:

  • $links param LinkModel[] $links (LinkModel[])
    $tmp=$ampgeneratorone->sectionULthis(); 
    
    ## Method sectionOL It generates a sorted list section

Parameters:

  • $links param LinkModel[] $links (LinkModel[])
    $tmp=$ampgeneratorone->sectionOLthis(); 
    
    ## Method sectionButtons It generates a section with one (or more than one) buttons.

Parameters:

  • $content param SectionModel $content (SectionModel)
    $tmp=$ampgeneratorone->sectionButtonsthis(); 
    
    ## Method sectionCols It generates a section with columns

Parameters:

  • $contents param SectionModel[] $contents (SectionModel[])
    $tmp=$ampgeneratorone->sectionColsthis(); 
    
    ## Method sectionHeaderCentral It generates a header central section. It could includes buttons.

Parameters:

  • $content param SectionModel $content (SectionModel)
    $tmp=$ampgeneratorone->sectionHeaderCentralthis(); 
    
    ## Method sectionRaw

Parameters:

Method sectionImageContent

It generates a section with an image content.

Parameters:

  • $content param SectionModel $content (SectionModel)
  • $width param $width ()
  • $height param $height ()
    $tmp=$ampgeneratorone->sectionImageContentthis(); 
    
    ## Method sectionImageContentLeft It generates a section with a image content at the left.

Parameters:

  • $content param SectionModel $content (SectionModel)
  • $width param $width ()
  • $height param $height ()
    $tmp=$ampgeneratorone->sectionImageContentLeftthis(); 
    
    ## Method sectionTable It generates a table

Parameters:

  • $cols param array $cols (array)
    $tmp=$ampgeneratorone->sectionTablethis(); 
    
    ## Method sectionImage It generates an image. The size of the image is required to calculate the ratio

Parameters:

  • $content param SectionModel $content (SectionModel)
  • $width param int $width (int)
  • $height param int $height (int)
    $tmp=$ampgeneratorone->sectionImagethis(); 
    
    ## Method sectionGMapFull It generates a google map section. It can't be locate at the 30% top of the site (Amp restriction)

Parameters:

  • $content param SectionModel $content (SectionModel)
  • $googleMapUrl param string $googleMapUrl (string)
  • $placeholder param string $placeholder (string)
    $tmp=$ampgeneratorone->sectionGMapFullthis(); 
    
    ## Method sectionGMapBoxed It generates a google map (boxed) section. It can't be locate at the 30% top of the site (Amp restriction)

Parameters:

  • $content param SectionModel $content (SectionModel)
  • $googleMapUrl param string $googleMapUrl (string)
    $tmp=$ampgeneratorone->sectionGMapBoxedthis(); 
    
    ## Method sectionNavigation It generates a footer navigation

Parameters:

  • $content param SectionModel $content (SectionModel)
  • $image param string $image (string)
  • $width param int $width (int)
  • $height param int $height (int)
  • $navCol1 param LinkModel[] $navCol1 (LinkModel[])
  • $navCol2 param LinkModel[] $navCol2 (LinkModel[])
  • $navCol3 param LinkModel[] $navCol3 (LinkModel[])
  • $navCol4 param LinkModel[] $navCol4 (LinkModel[])
    $tmp=$ampgeneratorone->sectionNavigationthis(); 
    
    ## Method sectionColImage It generates a section with images and text.

Parameters:

  • $contents param SectionModel[] $contents (SectionModel[])
  • $width param int $width (int)
  • $height param int $height (int)
  • $maxCol param int $maxCol (int)
    $tmp=$ampgeneratorone->sectionColImagethis(); 
    
    ## Method genModifyStyle

Parameters:

Method setBackgroundColor

Fluent operation, it changes the background color of the next section

Parameters:

  • $color Example #ffffff,rgb(30,30,30),white (string)
    $tmp=$ampgeneratorone->setBackgroundColorthis(); 
    
    ## Method setBgImage Fluent operation, it changes the background image of the next section

Parameters:

  • $bgImage param string $bgImage (string)
    $tmp=$ampgeneratorone->setBgImagethis(); 
    
    ## Method setClassTextColor Fluent operation, it sets the class of the text

Parameters:

  • $class text-primary,text-secondary,text-success,text-info,text-warning,text-danger,text-white,text-black (string)
    $tmp=$ampgeneratorone->setClassTextColorthis(); 
    
    ## Method setPadding Fluent operation, it changes the padding

Parameters:

  • $top param $top ()
  • $bottom param $bottom ()
    $tmp=$ampgeneratorone->setPaddingthis(); 
    
    ## Method resetDefault

Parameters:

Method setDefault

It reset to the default background color and text class

Parameters:

  • $backGroundColor Example #ffffff,rgb(30,30,30),white (string)
  • $classTextColor text-primary,text-secondary,text-success,text-info,text-warning,text-danger,text-white,text-black (string) ## Method image

Parameters:

Method table

Parameters:

Method render

It renders the result page.

Parameters:

Method renderToFile

It renders the result to file

Parameters:

  • $filename param string $filename (string) ## Method genLink Generate the first link of an array only if array constains information or the link is not empty.

Parameters:

  • $url param LinkModel|LinkModel[] $url (LinkModel|LinkModel[])
    $tmp=$ampgeneratorone->genLinkthis(); 
    
    ## Method genButton Generate the first link of an array only if array constains information or the link is not empty.

Parameters:

  • $url param ButtonModel|ButtonModel[] $url (ButtonModel|ButtonModel[])

> Note: You could change the color. !

Validity

You could validate your amp on Google search validation

Google Amp Validation

Version

  • 1.5 2019-08-31 Removed min-width in the sections.
  • 1.4 2019-06-04 Some fixes.
  • 1.3 2018-11-03 Added Phpunit and travis.
  • 1.1 2018-09-20 Fixed some bugs.
  • 1.0 2018-09-08 First non beta version
  • 0.3 2018-09-07 Cleaning the house.
  • 0.2 2018-09-06 Working version.
  • 0.1 2018-08-20 First prototype

Example demo:

         

See end result

Full Project


  Files folder image Files  
File Role Description
Files folder imagedoc (6 files)
Files folder imageexample (4 files, 2 directories)
Files folder imagelib (1 file)
Files folder imagetests (8 files)
Accessible without login Plain text file .travis.yml Data Auxiliary data
Accessible without login Plain text file .travis.yml Data Auxiliary data
Accessible without login Plain text file .travis.yml Data Auxiliary data
Accessible without login Plain text file .travis.yml Data Auxiliary data
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file LICENSE Lic. License text
Accessible without login Plain text file phpunit.xml Data Auxiliary data
Accessible without login Plain text file phpunit.xml Data Auxiliary data
Accessible without login Plain text file phpunit.xml Data Auxiliary data
Accessible without login Plain text file phpunit.xml Data Auxiliary data
Accessible without login Plain text file README.md Doc. Documentation

  Files folder image Files  /  doc  
File Role Description
  Accessible without login Image file example1-sm.jpg Icon Icon image
  Accessible without login Image file example1-sm.png Data Auxiliary data
  Accessible without login Image file example1.jpg Data Auxiliary data
  Accessible without login Image file example1.png Data Auxiliary data
  Accessible without login Image file simplesection.jpg Data Auxiliary data
  Accessible without login Image file validate.jpg Data Auxiliary data

  Files folder image Files  /  example  
File Role Description
Files folder imageMediumExample (20 files, 2 directories)
Files folder imageresources (10 files)
  Accessible without login Plain text file example-generated.html Output Documentation
  Accessible without login Plain text file index-amp.php Example Example script
  Accessible without login Plain text file smallexample-amp.php Example Example script
  Accessible without login HTML file smallexample-generated.html Doc. Documentation

  Files folder image Files  /  example  /  MediumExample  
File Role Description
Files folder imagelib (4 files)
Files folder imageresources (12 files, 1 directory)
  Accessible without login Plain text file front.php Example Example script
  Accessible without login Plain text file front.php Example Example script
  Accessible without login Plain text file front.php Example Example script
  Accessible without login Plain text file front.php Example Example script
  Accessible without login Plain text file landing.1.php Example Example script
  Accessible without login Plain text file landing.1.php Example Example script
  Accessible without login Plain text file landing.1.php Example Example script
  Accessible without login Plain text file landing.1.php Example Example script
  Accessible without login Plain text file landing.2.php Example Example script
  Accessible without login Plain text file landing.2.php Example Example script
  Accessible without login Plain text file landing.2.php Example Example script
  Accessible without login Plain text file landing.2.php Example Example script
  Accessible without login Plain text file landing.3.php Example Example script
  Accessible without login Plain text file landing.3.php Example Example script
  Accessible without login Plain text file landing.3.php Example Example script
  Accessible without login Plain text file landing.3.php Example Example script
  Accessible without login Plain text file landing.4.php Example Example script
  Accessible without login Plain text file landing.4.php Example Example script
  Accessible without login Plain text file landing.4.php Example Example script
  Accessible without login Plain text file landing.4.php Example Example script

  Files folder image Files  /  example  /  MediumExample  /  lib  
File Role Description
  Accessible without login Plain text file libfolder.md Data Auxiliary data
  Accessible without login Plain text file libfolder.md Data Auxiliary data
  Accessible without login Plain text file libfolder.md Data Auxiliary data
  Accessible without login Plain text file libfolder.md Data Auxiliary data

  Files folder image Files  /  example  /  MediumExample  /  resources  
File Role Description
Files folder imagelogo (64 files)
  Accessible without login Image file banner_2250x441.jpg Data Auxiliary data
  Accessible without login Image file banner_2250x441.jpg Data Auxiliary data
  Accessible without login Image file banner_2250x441.jpg Data Auxiliary data
  Accessible without login Image file banner_2250x441.jpg Data Auxiliary data
  Accessible without login Image file cupcake_square.jpg Data Auxiliary data
  Accessible without login Image file cupcake_square.jpg Data Auxiliary data
  Accessible without login Image file cupcake_square.jpg Data Auxiliary data
  Accessible without login Image file cupcake_square.jpg Data Auxiliary data
  Accessible without login Image file pexels-photo-585581.jpeg Data Auxiliary data
  Accessible without login Image file pexels-photo-585581.jpeg Data Auxiliary data
  Accessible without login Image file pexels-photo-585581.jpeg Data Auxiliary data
  Accessible without login Image file pexels-photo-585581.jpeg Data Auxiliary data

  Files folder image Files  /  example  /  resources  
File Role Description
  Accessible without login Image file accessory-analog-classic-84475.jpg Data Auxiliary data
  Accessible without login Image file banner_2250x441.jpg Data Auxiliary data
  Accessible without login Image file cupcake_square.jpg Data Auxiliary data
  Accessible without login Image file favicon.ico Data Auxiliary data
  Accessible without login Image file logo.jpg Data Auxiliary data
  Accessible without login Image file pexels-photo-1028704.jpeg Data Auxiliary data
  Accessible without login Image file pexels-photo-1073767.jpeg Data Auxiliary data
  Accessible without login Image file pexels-photo-1073772.jpeg Data Auxiliary data
  Accessible without login Image file pexels-photo-532126.jpeg Data Auxiliary data
  Accessible without login Image file pexels-photo-635409.jpeg Data Auxiliary data

  Files folder image Files  /  lib  
File Role Description
  Plain text file AmpGeneratorOne.php Class Class source

  Files folder image Files  /  tests  
File Role Description
  Plain text file AmpGeneratorOneTest.php Class Class source
  Plain text file AmpGeneratorOneTest.php Class Class source
  Plain text file AmpGeneratorOneTest.php Class Class source
  Plain text file AmpGeneratorOneTest.php Class Class source
  Accessible without login Plain text file bootstrap.php Aux. Auxiliary script
  Accessible without login Plain text file bootstrap.php Aux. Auxiliary script
  Accessible without login Plain text file bootstrap.php Aux. Auxiliary script
  Accessible without login Plain text file bootstrap.php Aux. Auxiliary script

 Version Control Unique User Downloads Download Rankings  
 58%
Total:260
This week:0
All time:7,809
This week:126Up