Hydra Order Management System (HOMS)
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.
- 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.
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
.envfile. 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.
SECRET_KEY_BASEvariable in your
.envwith uniq id as value. You can generate key with
openssl rand -hex 64command. For example:
⚠️Make sure this key is secret and don't share it with anyone.
Change Minio credentials in
MINIO_SECRET_KEYvalues with any credentials generator, e.g.
pwgen 32 2.
docker-compose up -d
Navigate to Minio control panel and create a bucket with name equal to
Login to HydraOMS with
changeme. Now you are able to start Pizza Order demo process.
You can login to Camunda Admin inteface with credentials equal to
BPM_USER:BPM_PASSWORD values from
.env file (
user/changeme if these variables aren't set).
Follow the instructions below:
webpack-dev-serverin source directory:
Start HOMS application in another console tab:
Create and seed the database:
rake db:migrate export SEED_DB=true rake db:seed
Log in at HydraOMS with
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.