Giter Club home page Giter Club logo

essentials's Introduction

Hippo Essentials

Hippo Essentials is for developers who want to setup a new Hippo CMS project. It enables them to kickstart their project in a matter of minutes, to benefit from our best practices and to easily add Enterprise or community plugins from the Hippo Marketplace.

Please use the Hippo Essentials feedback form to inform us if you encounter any bugs/glitches or if you have any
suggestions for improvements.

Getting Started

Git checkout

To get started with the Hippo Essentials checkout the current master branch. You have two options to check out the project.

Clone project *

One option is to use HTTPS* (see NOTES below). The second option is to use a SSH clone. By using the SSH clone, you don't have to provide your username and password. You just have to create a SSH key and configure the key in your GIT account. There are instructions on how to create your SSH key on Git Hub. In order to make use of your SSH key, you have to make sure you use the following clone command:

git clone [email protected]:onehippo/essentials.git

Build the essentials components:

cd essentials
mvn clean install

Validate license headers:

mvn clean && mvn validate -Ppedantic

Create and install archetype locally :

cd essentials/archetype
mvn clean install

run archetype

mvn archetype:generate -D "archetypeGroupId=org.onehippo.cms7" -D "archetypeArtifactId=hippo-project-archetype" -D "archetypeVersion=2.00.04-SNAPSHOT"

Working with Git

Create local working branch to work on:

git checkout -b YOUR_LOCAL_BRANCH_NAME

Now work on files, use git status to & git add and git commit files. NOTE: This can be done within Intellij as well, just commit files

Push your changes to remote repository, -u option is to create remote tracking branch:

git push -u origin YOUR_LOCAL_BRANCH_NAME

This will make a remote branch, visible to other team members.

Once you are make changes, use git push to push your changes to above mentioned remote branch. Once you are ready to integrate your work into master, request a pull request through GITHUB website.

NOTE: If you wanna merge your changes yourself do following:

git checkout master
git pull
git pull origin YOUR_LOCAL_BRANCH_NAME
git push

To delete remote branch:

git push origin --delete  YOUR_LOCAL_BRANCH_NAME

##Running locally

This project uses the Maven Cargo plugin to run the CMS, Website and Essentials dashboard locally in Tomcat. From the project root folder, execute:

mvn clean install
mvn -P cargo.run

The following URLs are available from this project:

Logs are located in target/tomcat6x/logs

##Using JRebel

Set the environment variable REBEL_HOME to the directory containing jrebel.jar.

Build with:

mvn clean install -Djrebel

Start with:

mvn -P cargo.run -Djrebel

##Best Practice for development

Use the option -Drepo.path=/some/path/to/repository during start up. This will avoid your repository to be cleared when you do a mvn clean.

For example start your project with:

mvn -P cargo.run -Drepo.path=/home/usr/tmp/repo

or with jrebel:

mvn -P cargo.run -Drepo.path=/home/usr/tmp/repo -Djrebel

##Hot deploy

To hot deploy, redeploy or undeploy the CMS or site:

cd cms (or site)
mvn cargo:redeploy (or cargo:undeploy, or cargo:deploy)

##Automatic Export

To have your repository changes automatically exported to filesystem during local development, log into http://localhost:8080/cms/console and press the "Enable Auto Export" button at the top right. To set this as the default for your project edit the file ./bootstrap/configuration/src/main/resources/configuration/modules/autoexport-module.xml

##Copyright and license

Copyright 2013-2014 Hippo B.V. Distributed under the Apache 2.0 license.

NOTES:

Cloning project using HTTPS clone

The first option is to use a HTTPS clone. You have to provide your GIT username and password to be able to perform GIT operations. The clone can be created by the following command:

git clone https://github.com/onehippo/essentials.git

essentials's People

Contributors

jreijn avatar dvandiepen avatar tjeger avatar mrop avatar oscarscholten avatar grzegorz-zur avatar markpeerdeman avatar lplemos avatar machak avatar

Watchers

 avatar

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.