Git Product home page Git Product logo

zend-framework-skeleton's Introduction

Description

This is a Zend Framework Skeleton, below you'll find some specs about it.

  • Zend Framework
  • Module structure
  • ZFDebug
  • TDD ready
  • PHPUnit ready
  • Zend_Log configured (using firebug in development)
  • Zend_Translate configured (using .mo files)
  • Zend_Translate configured to log the missing translations in dev environment
  • Zend_Translate defaults to english
  • FlashMessages plugin installed
  • VersionHeader plugin installed (send the version of the app through a special header)
  • DBAdapter already configured (just change the credentials on the app.ini)
  • Cache Backends configurable through app.ini
  • File cache backend configured
  • Automatic CSRF check in all the forms
  • Autoloader configured
  • Router configured to read the routes from xml files
  • Different bootstrap and entry point per module
  • Zend_Locale configured to detect the locale and degrades gracefully
  • App configured to use three environments (dev, staging, production)
  • Zend_Registry up and running
  • All the handy data stored in the Registry and constants like environment, some paths (app path, root path)...
  • View Helper to translate using the following method $this->t() instead of $this->translate() (much shorter)
  • Flag and Flippers concept of flickr implemented through ACL
  • Flag and Flippers configurable via BO (Still some stuff in development)
  • CLI tool to generate basic ACL rules for controllers and actions
  • Basic Inflector
  • Three custom validators to handle passwords
  • Basic BO structure with two levels of navigation
  • BO menu generated automatically based on an array and filtered through the Flag and flippers configured
  • All the tables needed dumped in migration files
  • Akrabat db migration system implemented
  • Amazon CloudFront Invalidator implemented
  • Amazon SNS publish feature implemented
  • Amazon S3 integrated
  • Amazon Simple Email Service integrate through a custom mail transport
  • App_Logger attached to Amazon SES to receive notifications of the errors (based on zend_log and it's logs levels)
  • Implemented a dependency injector container and moved a lot of objects there
  • Integrated gearmand and some workers to do jobs asynchronously (optional and configurable through config file)
  • Analytics worker to send info to Amazon Simple DB
  • Upload worker to upload files to Amazon S3
  • Remove cdn worker to invalidate files on Amazon CloudFront
  • Send email worker to send the emails through Amazon Simple Email Service
  • Chain-of-resonsability pattern implemented in the controllers and 3 commands available (publish to facebook, twitter or send email)
  • CDN View helper to fetch the files directly from the cdn (supports multiple domains to speed up the page load time)
  • Bitly Short Url service integrated
  • Custom logic to handle emails and their templates
  • Install script
  • Added ZendX and configured to use local version of jQuery and jQuery UI
  • Added the official Zend unit tests

Credentials to access the BO

Admin Group

Username: john.doe
Password: lorem

Installation

  1. Get a copy of the files in your machine

  2. Run the install script located at ./scripts

  3. Create the virtual hosts (one per module)

    <VirtualHost *:80> ServerAdmin [email protected]

     ServerName frontend.zfs.local
     DocumentRoot PATH_TO_THE_PROJECT/public/frontend
     <Directory />
         Options FollowSymLinks
         AllowOverride All 
     </Directory>
     <Directory PATH_TO_THE_PROJECT/public/frontend>
         Options -Indexes
         AllowOverride All
         Order allow,deny
         allow from all
     </Directory>
     
     ErrorLog /var/log/apache2/frontend-error.log
     
     # Possible values include: debug, info, notice, warn, error, crit,
     # alert, emerg.
     LogLevel warn
     
     CustomLog /var/log/apache2/frontend-access.log combined
    

    <VirtualHost *:80> ServerAdmin [email protected]

     ServerName backoffice.zfs.local
     DocumentRoot PATH_TO_THE_PROJECT/public/backoffice
     <Directory />
         Options FollowSymLinks
         AllowOverride All 
     </Directory>
     <Directory PATH_TO_THE_PROJECT/public/backoffice>
         Options -Indexes
         AllowOverride All
         Order allow,deny
         allow from all
     </Directory>
     
     ErrorLog /var/log/apache2/backoffice-error.log
     
     # Possible values include: debug, info, notice, warn, error, crit,
     # alert, emerg.
     LogLevel warn
     
     CustomLog /var/log/apache2/backoffice-access.log combined
    
  4. If you are working on a local machine add the servername to your local hosts file

    On *nix: echo 'frontend.zfs.local' >> /etc/hosts
    On *nix: echo 'backoffice.zfs.local' >> /etc/hosts

That's it you can start now using the skeleton to build the next amazing app!

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.