Nectar E-Commerce

寻求可定制的电子商务--Elixir 方式。「Quest for customizable E-commerce - the Elixir way」

Github stars Tracking Chart

Nectar E-Commerce Build Status

Nectar is an open source e-commerce Elixir/Phoenix project to be evolved into E-Commerce framework the elixir way
Please share your ideas here

It includes:

Admin

  • Product Management

    • Manage OptionTypes/OptionValues
    • Manage Categories
    • Product with / without variants
    • Search
  • Configuration Management

    • General Settings
    • Shipping Methods
    • Payment Methods
      • Stripe and Braintree supported
  • Cart Management

    • Add / Remove Variant
    • Add Shipping / Billing Address
    • Choose Shipping Method
    • Choose Payment Method
  • Order Management

    • Cancel LineItem
    • Fulfill Order
    • Create New Order
    • Search
  • User Management

    • Create Users
    • Promote / Demote as Admin

User

  • User Registration / Login
  • Product Browsing
    • List and Search
    • on available categories
  • Cart Management
  • Check Order Details

Demo

Docker Image

https://hub.docker.com/r/vinsol/nectarcommerce

  • Simply run docker run -it -p 4000:4000 vinsol/nectarcommerce:latest and go to http://localhost:4000

Getting Started

  • Pre-requisites

  • Clone Project Locally

    • git clone https://github.com/vinsol/nectarcommerce.git
  • Set up Development Environment

    • Copy apps/nectar/config/dev.secret.exs.example as dev.secret.exs
      • cp apps/nectar/config/dev.secret.exs.example apps/nectar/config/dev.secret.exs
    • Configure Postgres Database
    • Configure Arc for images upload
    • Configure Payment Methods
    • Get Application Dependencies
      • mix deps.get
    • Set-up Application Database
      • Drop Database
        • mix ecto.drop -r Nectar.Repo
      • Create Database
        • mix ecto.create -r Nectar.Repo
      • Migrate Database
        • mix ecto.migrate -r Nectar.Repo
      • Seed Database
        • mix run apps/nectar/priv/repo/seeds.exs
    • Build Assets
      • cd apps/nectar
      • npm install
      • npm install babel-preset-es2015 --save
      • ./node_modules/brunch/bin/brunch build
      • Optionally might need bower install
    • Run Phoenix Server with IEx
      • iex -S mix phoenix.server
  • Browse User Interface

    • http://localhost:4000
  • Browse Admin Interface

    • http://localhost:4000/admin

Contributing

  1. Fork the repo.
  2. Clone your repo.
  3. Check Getting Started
  4. Make your changes.
  5. Ensure tests pass by running mix test.
  6. Submit your pull request.

Running Tests

We use Travis CI to run the tests for Nectar.

You can see the build statuses at https://travis-ci.org/vinsol/nectarcommerce.

RoadMap

  • Evolve into a Phoenix E-commerce Framework
    • Better and More Shipping Methods Customization
    • Better and More Payment Methods Customization
    • Customize Tax Rate Calculations
    • Customize Package Management
      • Add Order Splitters
  • RealTime Updates using Channels
  • Upgrade to ecto-2
  • Customisable and decoupled Frontend and Backend
    • React Frontend
    • Phoenix Api Backend
  • Improved Stock Management
  • Returns / Refunds Management
  • Payments
    • Add support for capture and refunds
  • Marketing
    • Promotions
    • Email Campaigns
  • More features as per contributions and use :)

Credits

vinsol.com: Ruby on Rails, iOS and Android developers

Copyright (c) 2016 vinsol.com, released under the New MIT License

Main metrics

Overview
Name With Ownervinsol/nectarcommerce
Primary LanguageElixir
Program languageJavaScript (Language Count: 3)
Platform
License:
所有者活动
Created At2016-02-01 09:51:47
Pushed At2017-02-09 13:30:20
Last Commit At2017-02-09 19:00:13
Release Count1
Last Release Namev1.0.0 (Posted on 2016-03-17 16:16:06)
First Release Namev1.0.0 (Posted on 2016-03-17 16:16:06)
用户参与
Stargazers Count323
Watchers Count30
Fork Count53
Commits Count161
Has Issues Enabled
Issues Count15
Issue Open Count10
Pull Requests Count28
Pull Requests Open Count0
Pull Requests Close Count47
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private