Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
Footprint runs on the LAMP stack. Linux, Apache, MySQL and PHP.
- PHP version 4.3 or greater.
- -- Auth
- -- HTTP
- -- MDB2
- -- Net/URL2
- -- XML/Parser
- Smarty Template Engine version 2.6 or greater.
- MySQL Database
To enable Footprint's file storage facilities you will have to create an account on Amazon's S3 service. This is used to store user data securely and in large quantities.
- Setup an Amazon S3 account here: http://aws.amazon.com/
To get started, the best thing is to setup a locally running copy of Footprint on your development box. Here I'm assuming you've already got a LAMP (or WAMP) infrastructure running.
The Footprint codebase supports dual environments, local and production. The default local URL is set to: http://footprintapp.local and a user account is by default located at http://account.footprintapp.local where 'account' is a unique account name, often the name of the user or their company.
To get started, download a copy of the Footprint codebase and place it in the root of a newly created virtual host in Apache.
You will also need a copy of PEAR and Smarty Template Engine.
- Download and Setup Pear from here: http://pear.php.net/
- Download Smarty Template Engine here: http://www.smarty.net/
Please these libraries either in your PATH or in the parent directory of the web root. We can add the libraries into the system path at run-time later on.
Below is a sample of the code needed to create a suitable virtual host for Footprint in Apache. Add this code to your httpd-vhosts.conf file. At the time of writing, I'm running Apache 2.2.17.
You may also have to add an entry to your host file in order for the 'footprintapp.local' domain name to work in your browser.
After restarting Apache you should have a local copy up and running (but with errors).
Before you proceed with the database import, you must have an empty MySQL database ready for use (much like the Wordpress installer). Using the config.php files (described below) you will need to provide the database host, name, username and password.
For simplicity, raw SQL scripts are provided as part of the code repository to help make the database generation easier. Please download the
/app/lib/db.generation.sql file and run this on your new database using the same user details as the one you intend to enter into the apps config files.
There are two config files which need to be generated before Footprint will work as expected. One for the promo site, and the other for the app itself. These are located at the following locations:
These files do not exist within the repository, you'll have to create them. To make this easier, there are sample files in both directories where the config.php file should be located. Simply rename these files from config_sample.php to config.php and then edit the config file as neccessary by adding in the required paths, database connection variables, and your Amazon AWS API keys.
Blog and Forums
Within the app's promo site there are allowances for a blog and community forum. On http://footprintapp.com the site's blog is running the latest version of Wordpress and the community forum is powered by Phorum. As these are completely self sufficient apps in their own right I thought it wasteful (and pointless) to include them within this repository as well. Therefore if you want to include them in your own version of the Footprint you will have to download and install them from their own repositories.
Please contact me (http://twitter.com/iarfhlaith) if you would like a copy of Footprint's Wordpress or Phorum themes. I'll put them up on Github eventually, but in the meantime, just request them and I'll send them over to you.
Once you have completed all of these steps, navigate to http://footprint.local in your browser. Here you should see the homepage of the promo site, similar to that of http://footprintapp.com right now.
Now that you have a working installed copy of Footprint, you can begin to explore it in more detail, and even improve it if you like.
I would be very interested to hear how you get on with this installation guide, and if I need to be more specific in places, please let me know and I'll add in whatever data is needed.
Iarfhlaith Kelly @iarfhlaith