HOMS is an open source web application for order and business process management.
Application consists of three parts:
- User interface - managing orders and tasks for registered users (Single Page Application).
- Administrator interface - managing users and order types.
- REST API - operations with orders and users.
Requirements:
Compatibility:
- Camunda 7.9.0 compatible with PostgreSQL 9.1 / 9.3 / 9.4 / 9.6
Resources:
- Documentation: http://hydra-oms.com/docs
- Demo: http://demo.hydra-oms.com
- Community: http://community.hydra-oms.com
- Tickets/Issues: https://github.com/latera/homs/issues
The prefered way to install HOMS is to use Docker.
-
Download
docker-compose.yml
and default.env
config file:wget https://raw.githubusercontent.com/latera/homs/master/docker-compose.yml wget https://raw.githubusercontent.com/latera/homs/master/.env.sample -O .env
📌 All variables are set in
.env
file. There you can change them, if you want to. -
For OS X users: make path to folder with config shared in
Docker -> Preferences... -> File Sharing
. -
Set
SECRET_KEY_BASE
variable in your.env
with uniq id as value. You can generate key withopenssl rand -hex 64
command. For example:SECRET_KEY_BASE=0750fd0eac13032778f0a42e2ab450003eaece477ea881501be0cc438f870a2f498dbbc00ffb7c8379c30c960568a402d315496bb7bc2b3ee324401ba788a
⚠️ Make sure this key is secret and don't share it with anyone. -
Change Minio credentials in
.env
file. GenerateMINIO_ACCESS_KEY
andMINIO_SECRET_KEY
values with any credentials generator, e.g.pwgen 32 2
. -
Run
docker-compose
:docker-compose up -d
-
Navigate to Minio control panel and create a bucket with name equal to
MINIO_BUCKET_NAME
value from.env
file. -
Login to HydraOMS with
user@example.com
/changeme
. Now you are able to start Pizza Order demo process.
You can login to Camunda Admin interface with credentials equal to BPM_USER:BPM_PASSWORD
values from .env
file (user/changeme
if these variables aren't set).
-
Follow the instructions below:
-
Install Yarn and run
yarn install
-
Start
webpack-dev-server
in source directory:bin/webpack-dev-server
-
Start HOMS application in another console tab:
rails s
-
Create and populate the database (adds an admin user, initial order types, and orders):
rails db:migrate export SEED_DB=true rails db:seed
-
Log in at HydraOMS with
user@example.com
/changeme
.
The general development process is:
- Fork this repo and clone it to your workstation.
- Create a feature branch for your change.
- Write code and tests.
- Push your feature branch to github and open a pull request against master.
Issues can be reported by using GitHub Issues.
HOMS uses RSpec for unit/spec tests. You need to set up different testing database. Otherwise your development DB would be erased.
# Run all tests
bundle exec rspec spec
# Run a single test file
bundle exec rspec spec/PATH/TO/FILE_spec.rb
# Run a subset of tests
bundle exec rspec spec/PATH/TO/DIR
Copyright (c) 2019 Latera LLC under the Apache License.