Build - rgwch/webelexis GitHub Wiki
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 distributionsrc/main/web
- the raw (unprocessed) contents of the website.src/main/web/app
- the javascript source files - will processed and written todist/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 todist/web/components/*
, while the jade files will be compiled todist/web/tmpl/*.html
src/main/web/css/*, fonts/*, img/*, lib/*
- will all copied to respective directories in dist/websrc/main/java
- java source files. will be compiled todist/*
-
dist/**
- dist/web - The contents of the resulting website