-
-
Notifications
You must be signed in to change notification settings - Fork 6
Application architecture
Greg Bowler edited this page Mar 28, 2018
·
38 revisions
The most minimal PHP.Gt WebEngine application consists of the following source files:
.
├── composer.json
└── src
└── page
└── index.html
For context, a large application with many source files may look something like this:
.
├── data
├── src
│ ├── asset
│ │ ├── logo.svg
│ │ └── pattern.png
│ ├── class
│ │ ├── Input
│ │ │ ├── Captcha.php
│ │ │ ├── Search.php
│ │ │ └── Validation.php
│ │ ├── Model
│ │ │ ├── Category.php
│ │ │ ├── Item.php
│ │ │ ├── OutOfStockException.php
│ │ │ └── SpecialOffer.php
│ │ ├── Payment
│ │ │ ├── AbstractPayment.php
│ │ │ ├── CreditDebitPayment.php
│ │ │ └── PayPalPayment.php
│ │ └── UI
│ │ ├── Error.php
│ │ ├── Formatter.php
│ │ └── Message.php
│ ├── page
│ │ ├── checkout
│ │ │ ├── index.html
│ │ │ ├── index.php
│ │ │ ├── payment.html
│ │ │ └── payment.php
│ │ ├── shop
│ │ │ ├── category
│ │ │ │ ├── _common.php
│ │ │ │ └── _dynamic.html
│ │ │ ├── categories.html
│ │ │ ├── categories.php
│ │ │ ├── index.html
│ │ │ ├── index.php
│ │ │ ├── item.html
│ │ │ └── item.php
│ │ ├── _template
│ │ │ ├── cart-popup.html
│ │ │ ├── category-item.html
│ │ │ ├── checkout-listing.html
│ │ │ ├── out-of-stock.html
│ │ │ ├── payment-form.html
│ │ │ └── shop-item.html
│ │ ├── about.html
│ │ ├── _common.php
│ │ ├── contact.html
│ │ ├── contact.php
│ │ ├── _footer.html
│ │ ├── _header.html
│ │ ├── index.html
│ │ ├── index.php
│ │ └── terms.html
│ ├── query
│ │ ├── _migration
│ │ │ ├── 001.sql
│ │ │ ├── 002.sql
│ │ │ ├── 003.sql
│ │ │ ├── 004.sql
│ │ │ └── 005.sql
│ │ └── shop
│ │ ├── category
│ │ │ └── getAll.sql
│ │ └── item
│ │ ├── completePurchase.sql
│ │ ├── getById.sql
│ │ ├── getInCategory.sql
│ │ └── startPurchase.sql
│ ├── script
│ │ ├── Ajax
│ │ │ ├── Updater.js
│ │ │ └── UrlHistory.js
│ │ ├── Input
│ │ │ ├── Dirty.js
│ │ │ ├── Message.js
│ │ │ └── Validate.js
│ │ └── main.js
│ └── style
│ ├── animation
│ │ ├── flash.scss
│ │ └── popup.scss
│ ├── base
│ │ ├── form.scss
│ │ ├── normalise.scss
│ │ ├── typography.scss
│ │ └── variables.scss
│ ├── component
│ │ ├── cart-popup.scss
│ │ ├── category-item.scss
│ │ ├── checkout-listing.scss
│ │ ├── out-of-stock.scss
│ │ ├── payment-form.scss
│ │ └── shop-item.scss
│ ├── page
│ │ └── checkout.scss
│ └── main.scss
├── build.json
├── composer.json
└── config.ini
Website | Packagist | CircleCI | Scrutinizer
- Request-response lifecycle
- Running your application
- Project layout
- Application architecture
- Web servers
- URIs
- Page view
- Dynamic URIs and pages
- Headers and footers
- Page logic
- Protected globals
- User input
- Cookies
- Sessions
- DOM manipulation
- Custom HTML components
- DOM templates
- Binding data to the DOM
- Database
- Client side assets
- API Webservices
- Security
- Configuration
- Build system
- Coding styleguide