Installing QuickMunch

Upload the files, create an empty database, and answer four screens. Ten minutes on a normal host.

Before you start

You need three things: hosting that meets the system requirements, an empty MySQL database with a user that can write to it, and the ZIP you downloaded from CodeCanyon.

Already installed? If someone set QuickMunch up for you, this page has nothing for you — go straight to Your first hour.

QuickMunch does not create the database for you — it fills one you have already made. In your hosting control panel (cPanel, Plesk or your host’s equivalent):

  1. Create a database. Give QuickMunch one of its own, empty. Installing into a database that already holds another application’s tables invites name collisions.
  2. Create a database user with a strong password.
  3. Add the user to the database with all privileges. In cPanel this is a separate step from creating either one — it is the step people miss.
  4. Keep the three values to hand — database name, user and password. The installer asks for exactly these.

Serve the site over HTTPS if you can. Online card payments, push notifications and the installable customer app all need a secure address; plain HTTP is only fit for a private evaluation.

Install

The installer tests the server and connects to the database before it writes anything, so a problem stops you at the screen that names it — never half-way through.

  1. Upload the files. Extract the ZIP and upload its contents to the folder your domain serves — usually public_html. If you want the site at example.com/order rather than example.com, upload into that sub-folder instead; nothing needs changing for it to work there.
  2. Open your site in a browser. With no configuration file present you are sent to the installer automatically. If you land on a blank page instead, the folder permissions are usually the cause — see below.
  3. Pass the requirements check. The first screen tests PHP, the extensions and the writable folders. Anything marked required must be fixed before you can continue; warnings can wait.
  4. Enter the database details. Host is nearly always localhost. Paste the name, user and password you created. The installer connects before it writes anything, so a wrong password fails here rather than half-way through.
  5. Create your administrator. This is the account you will run the platform with. Use a real email address — password resets and system notices go to it.
  6. Choose whether to load the demo data. See below before you decide.

Demo data: take it or leave it

The installer offers a set of sample restaurants, menus, orders and customers. It exists so you can see a populated dashboard rather than empty screens on your first login.

ChooseWhen
With demo dataYou are evaluating the product, or building a demo site to show a client.
EmptyThis is the real site. Starting clean saves you deleting sample content later.

After the installer finishes

  1. Delete the install folder. The installer locks itself the moment setup completes — with the configuration file in place it refuses to run again. Deleting the folder is hardening on top of that lock: a locked installer is still code sitting on your server; a removed one is nothing at all.
  2. Pick your business model — see Choosing a business model. Do this before you add restaurants, because it decides which screens exist.
  3. Set up the scheduled task. Several jobs — order clean-up, payment reconciliation, scheduled reports — only run if something calls them. See Scheduled tasks.

When it doesn't work

A blank white page instead of the installer

Almost always folder permissions. /config, /storage and /assets/uploads must be writable by the web server. Set them to 755 first; some shared hosts need 775.

"Access denied" on the database step

The user exists but has no rights on that database, or the password is wrong. In cPanel, adding a user to a database is a separate step from creating it — it is the one people miss.

The site loads but every link is a 404

URL rewriting is off. On Apache, enable mod_rewrite and allow .htaccess overrides for the folder. On Nginx, add a rule sending everything that is not a real file to index.php.

It says the site is already installed

A configuration file already exists at /config/config.php. That is the file the installer writes, so its presence means the install finished. To start again, delete it — and be aware that the database keeps whatever is already in it.