Fork me on GitHub

Installation

This describes the customized installation, usually used by developers.

A end-user zip package can be downloaded at http://jarves.io when we've released the first alpha version.

Jarves Standard

The easiest way yet is to install github.com/jarves/jarves-standard. See readme for the setup introduction.

Custom installation

If you want to go the hard way, so can install symfony and add Jarves on your own. This is also the introduction you should follow when you have already a Symfony application and want to add Jarves additional to it.

1. Install Symfony (v3.*)

composer create-project symfony/framework-standard-edition website-with-jarves

2.1 Install the Jarves bundles for development/testing

Remove in composer.json the config.platform.php settings (latest lines). Add in composer.json

{
    ...
     "minimum-stability": "dev",
     "prefer-stable": true,
}

Use "symfony-assets-install": "symlink" if your system supports symlinks.

cd website-with-jarves
composer require jarves/jarves:dev-master
composer require jarves/publication-bundle:dev-master
composer require jarves/demotheme-bundle:dev-master

2.2 Install some dependencies

SCSS

http://sass-lang.com/install

  1. osx: sudo gem install sass
  2. linux: sudo su -c "gem install sass"
  3. windows: see http://sass-lang.com/install

Configure Symfony

Activate the bundle in your AppKernel:

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...


        // our dependencies - it's important that these come before Jarves
        new Propel\Bundle\PropelBundle\PropelBundle(),
        new FOS\RestBundle\FOSRestBundle(),
        new Nelmio\ApiDocBundle\NelmioApiDocBundle(),

        // Jarves
        new Jarves\JarvesBundle(),
        new Jarves\DemoTheme\JarvesDemoThemeBundle(),
        new Jarves\Publication\JarvesPublicationBundle(),
    );
}

3. Configurate database settings

Use php bin/console jarves:configuration:database --help to see how you can change the database settings.

You can alternatively go the regular Symfony way and just change app/config/parameters.yml (jarves:configuration:database is changing that file anyways)

Make sure Propel ORM is configured in your app/config/config.yml.

propel:
    database:
        connections:
            default:
                adapter:    "%database_driver%"
                user:       "%database_user%"
                password:   "%database_password%"
                dsn:        "%database_driver%:host=%database_host%;dbname=%database_name%"

4. Setup models and database schema

php bin/console propel:model:build #build base model

php bin/console propel:migration:diff #generates a database schema diff
php bin/console propel:migration:up #upgrade the database schema

### Installs demo data

php bin/console jarves:install:demo 127.0.0.1 /

5. Setup the administration route. Open app/config/routing.yml and paste this route:

jarves:
    resource: "@JarvesBundle/Resources/config/routing.yml"

6. Verify

run

php bin/console server:run
# open http://127.0.0.1:8000/jarves

Username and password for the administration login (http://127.0.0.1:8000/jarves) is both admin.

REST API doc powered by NelmioApiBundle is available at http://127.0.0.1:8000/jarves/api.

The frontend routes are loaded automatically.


Found a typo? The website is based on Markdown, please feel free to send us a pull request! :) github.com/jarves/jarves.io/tree/master/app/jarves/website/jarves.io