Zmey is a template for building e-commerce websites. Fork it, keep what you do need and delete what you don’t. It’s pre-release quality and has not yet been given a version number.
Most configuration is kept in the one and only website object stored in the database.
TODO: Use Kamal.
Zmey runs on Ruby 3.3.6.
bin/rails db:create cp config/secrets.sample.yml config/secrets.yml # edit config/database.yml and config/secrets.yml as necessary
bundle exec rake db:migrate && RAILS_ENV=test bundle exec rake db:migrate bundle exec rake db:test:prepare bundle exec rake db:seed
You will need chromedriver to run the JavaScript tests with selenium-webdriver.
bin/rspec
You can run the tests faster in parallel using parallel_tests which will take advantage of multiple cores:
rake parallel:spec
Be sure to set up multiple databases as described in the README github.com/grosser/parallel_tests
Zmey can be accessed remotely using its REST API:
Zmey uses webhooks to allow:
-
non-essential or idiosyncratic behaviour to be implemented as microservices
-
external actions to be triggered when events occur
Zmey has some default webhook implementations. To use any or all of these webhooks, run the adapter service: github.com/ianfleeton/zmey-webhook-handlers
-
Image (image_created)
-
Order (order_created)