Skip to content

Latest commit

 

History

History
58 lines (43 loc) · 2.74 KB

README.md

File metadata and controls

58 lines (43 loc) · 2.74 KB

Shopix

Shopix is a work in progress of an e-commerce platform written in Elixir and using the Phoenix Web framework.

This is a Work In Progress and right now it should not be used in production without intensive testing.

If you want to encourage me to work on this project, you can make donations, right now in crypto-currencies.

Donate with Ethereum Donate with Bitcoin

Features

  • Clean Administration UI
  • Front-end theme using Bootstrap 4
  • Handles products with multiple images (through Uploadcare)
  • Unlimited groups and properties for products
  • Unlimited translations / locales
  • Braintree gateway
  • Static pages
  • VAT + Single Shopping cost

Screenshots

First screenshot Second screenshot Third screenshot Forth screenshot

What's missing?

  • Lots of polishing, testing, refactoring, etc.
  • Multiple/different VAT % (?)
  • Multiple/different shipping costs
  • Multiple payment gateways
  • Multiple images providers
  • Themes engine (Liquid?)

Installation of development server

  • Install dependencies with mix deps.get
  • Configure your database access by editing config/dev.exs
  • Create an Uploadcare account and a Braintree Sandbox account
  • Create and migrate your database with mix ecto.create && mix ecto.migrate
  • Run seeds with the first user admin account credentials: ADMIN_EMAIL=admin@admin.com ADMIN_PASSWORD=abcd1234 mix run priv/repo/seeds.exs
  • Install Node.js dependencies with cd assets && npm install
  • Start Phoenix endpoint with mix phx.server
  • Go to http://localhost:4000/admin, login with admin credentials
  • Go to Global configuration tab. Fill in the Uploadcare public key.
  • In the "Payment Gateway" field, add this config: {"provider_config":{"public_key":"your_braintree_public_key","private_key":"your_braintree_private_key","merchant_id":"your_braintree_merchant_id","environment":"sandbox","client_token":"your_braintree_tokenized_key"}}

Contributions

I really welcome contributions.

Please don't forget to write tests when doing pull requests.