Skip to content
rgwch edited this page Jul 5, 2015 · 22 revisions

Webelexis

Note: With the migration to vert.x 3.0, the build process simplified quite a bit. If you used Webelexis-base 0.x with vert.x 2.1.x, please check this documentation.

Prerequisites

Check the Build Environment for Mac, Manjaro Linux, or Ubuntu/Debian to install the tools needed.

If you prefer a Docker image, please look here

On other systems, refer to the documentation of node.js on how to install the respective tool chain

Install Editor or IDE as needed

Idea: https://www.jetbrains.com/idea/

Eclipse: http://www.eclipse.org

Atom: http://atom.io

Brackets: http://brackets.io (There is also a Jade plugin available)

install build tools

npm install -g mimosa

Checkout webelexis and let maven fetch and install all you need:

 git clone https://github.com/rgwch/webelexis
 cd webelexis/webelexis-server
 mvn package  # This will take a long time on first run  

Try it out with:

 cd target
 java -jar webelexis-server-x.y.z.jar

Read more on this topic here

Next steps

To authenticate users, you'll need your mongodb server running. If it is not already launched, try

 mongod --dbpath <your favorite database directory>

Then launch the mongo db console, and insert your first user:

mongo
use webelexis
db.users.insert({username: "someName", password: "yourSecretPassword", roles=["admin"]})

That's all. Notice that, other than with traditional databases, you had not to setup any tables, schemas etc. If you want to check what you've just inserted, try, still from the mongo console:

db.users.find()

The username and the password you provided will now be an authenticated user of the webelexis agenda.

Find more on this topic in the document on security and authentication

Folder layout

  • src/**

    • src/main/ - everything that gets processed and goes into the final distribution
    • src/main/web - the raw (unprocessed) contents of the website.
    • src/main/web/app - the javascript source files - will processed and written to dist/web/app.
    • src/main/web/components - folders with webelexis components, each consisting of at least a *.js and a *.jade file. JavaScript files will be processed and placed to dist/web/components/*, while the jade files will be compiled to dist/web/tmpl/*.html
    • src/main/web/css/*, fonts/*, img/*, lib/* - will all copied to respective directories in dist/web
    • src/main/java - java source files. will be compiled to dist/*
  • dist/**

    • dist/web - The contents of the resulting website