Home

Awesome

Gitpod Ready-to-Code Join the community on Spectrum Gitter Get help on Codementor

Open-Source Commerce Platform for On-Demand Economy and Digital Marketplaces

Ever® Demand™ is an Open-Source, Real-Time, Reactive, On-Demand Commerce Platform built with TypeScript.

You are welcome to check more information about the platform at our official website - https://ever.co.

overview

Demos

Demos are not available at the moment as we are moving to Kubernetes and showdown old demo server!

<!--- - [Admin Website](http://demo.ever.co:4200), use admin user email: `admin@ever.co`, password: `admin` - [Shopping Mobile App](http://demo.ever.co:4201) - [Merchant Ionic Tablet App](http://demo.ever.co:4202) - [Carrier Mobile App](http://demo.ever.co:4203) - [Shopping Website](http://demo.ever.co:3000) -->

Features

Planned Features

You can also track feature requests from the community in the separate repo.

Disclaimer

A word of caution: We are in α (alpha), i.e. Ever® Platform™ is very much under development (work in progress, WIP).
Expect lots of changes and some :bug: and please be nice! :stuck_out_tongue_winking_eye:

Technology Stack and Requirements

See also README.md and CREDITS.md files in relevant folders for lists of libraries and software included in the Platform, information about licenses and other details.

Documentation

Please refer to our official Platform Documentation and to our Wiki (WIP).

For a quick overview of each project in the Platform (Server, Admin, Shops, etc.), you can search for README.md file in the root of the projects folders. For example, see ./backend/api/README.md for Server (Backend) related overview.

Getting Started

We follow Gitflow Workflow, so the develop branch may be in an unstable or even broken state during development. Please use releases or master branch instead of the develop branch in order to get more stable code.

Clone Repo

Clone the Ever Platform Git repo:

git clone https://github.com/ever-co/ever-demand.git

IMPORTANT NOTE:

Yarn

Currently, we are using Yarn (instead of npm), so make sure you have latest Yarn version installed before running Ever Platform:

npm install -g yarn@latest

Quick installation

After git repo cloned, just run following command to install/bootstrap all dependencies:

yarn bootstrap

Above command install required packages in all Platform projects using Lerna.

Note: if above command fails for any reason, you can try to install required packages manually by running yarn inside every sub-folder of packages folder with 'package.json' file

Build

You can build all projects in Ever Platform using single command below:

yarn build:all

Note: the parallel build available using yarn build command

Lerna (manual installation)

We are using Lerna for mono-repo management. You need to run the following command from the working folder where you cloned Ever git repo, which install Lerna together with other packages:

yarn

You may instead install Lerna globally:

npm install lerna@latest -g

Now, after Lerna installed (locally or globally), you need to Bootstrap all dependencies manually:

yarn lerna bootstrap

The command above install all required packages for every sub-project of the Ever Platform.

Note: if above command fails for any reason, you can try to install required packages manually by running yarn inside every sub-folder with 'package.json' file.

After Lerna bootstrap everything you need to run build for all projects as described above in the "Build" section.

MongoDB

Ever platform configured to use MongoDB by default and assume you have MongoDB service running and accepting connections on the default localhost:27017. Please see relevant section in our documentation.

Platform Configuration

See relevant section in our documentation.

Run Platform Projects

After you build everything (yarn build:all, described above), each project from Ever Platform could be started by single command from this list:

Note 1: it is important to build shared / common platform modules (yarn build:common or yarn build:all) before running the Platform Core (API) or Apps

Note 2: during development you can run server with yarn run:server:dev to enable watch on TS files changes

Note 3: on the first run, API Server (Backend) creates MongoDB local database ever_development with the following (default) Admin user

You can use credentials above to login into Platform Admin App.

Note 3: in order to be able to run every project, you need to make sure everything builds, see section "Build" above.

Metrics

According to cloc project, Ever Platform today has more than 120K lines of TypeScript, GraphQL, HTML / CSS and other code files. You can get more details in the relevant section of our documentation.

Contribute

Contributors

View full list of our contributors.

Contact Us

Security

Ever Platform follows good security practices, but 100% security cannot be guaranteed in any software!
Ever Platform is provided AS IS without any warranty. Use at your own risk!
See more details in the LICENSE.md.

In a production setup, all client-side to server-side (backend, APIs) communications should be encrypted using HTTPS/WSS/SSL (REST APIs, GraphQL endpoint, Socket.io WebSockets, etc.).

If you discover any issue regarding security, please disclose the information responsibly by sending an email to mailto:security@ever.co or on huntr and not by creating a GitHub issue.

License

We support the open-source community. If you're building awesome non-profit/open-source projects, we're happy to help and will provide (subject to acceptance criteria) Ever Demand Enterprise edition license and free hosting option! Feel free to contact us at mailto:ever@ever.co to make a request. More details explained in our Wiki.

This software is available under following licenses:

The default Ever® Demand™ Platform license, without a valid Ever® Demand™ Platform Enterprise or Ever® Demand™ Platform Small Business License agreement, is the Ever® Demand™ Platform Community Edition License.

Please see LICENSE.md for more information on licenses. You can also compare our offering.

FOSSA Status

Trademarks

Ever® is a registered trademark of Ever Co. LTD.
Ever® Demand™, Ever® Gauzy™ and Ever® OpenSaaS™ are all trademarks of Ever Co. LTD.

The trademarks may only be used with the written permission of Ever Co. LTD. and may not be used to promote or otherwise market competitive products or services.

All other brand and product names are trademarks, registered trademarks or service marks of their respective holders.

Copyright © 2016-present, Ever Co. LTD. All rights reserved.

visitors huntr Circle CI codecov Codacy Badge DeepScan grade Known Vulnerabilities Total alerts Language grade: JavaScript FOSSA Status lerna Crowdin

P.S.