Code Monkey home page Code Monkey logo

spartacus's Introduction

JavaScript storefront (spartacus)

What is Spartacus?

Spartacus is a lean, Angular-based JavaScript storefront for SAP Commerce Cloud. Spartacus talks to SAP Commerce Cloud exclusively through the Commerce REST API.

Spartacus is...

  • Extendable: Spartacus is designed to be upgradable while maintaining full extendability. You'll be able to adopt new versions of Spartacus by updating the Spartacus libraries that we will regularly enhance. (In order to ensure that the first release is as extendable and upgradable as we'd like, breaking changes will very likely be introduced up until the 1.0 launch.)
  • Upgradable: Spartacus code is published and used as libraries and follows semantic versioning conventions. By using the libraries, Spartacus is upgradable for minor and patch releases.
  • Progressive: Spartacus is on a journey to be fully compliant with the Progressive Web Application (PWA) checklist. We aim to add support for all major features of a PWA-enabled storefront, to offer the best possible customer experience regardless of device or location.
  • Open Source: Spartacus is open source. It will be continually developed by the SAP Commerce Cloud team, but we are very keen to welcome contributors and to foster an inclusive, active development community for Spartacus. See our contributing documentation for more information.
  • Modern: The Spartacus storefront is part of our exciting new journey towards a customizable-yet-upgradable technology for SAP Commerce Cloud installations. See SAP Customer Experience for more information about SAP Commerce Cloud.

Storefront Features

Spartacus provides core storefront features such as:

  • Home page
  • Search
  • Categories
  • Product details
  • Cart page
  • Adding to cart
  • Checkout
  • Order history

See the Release documentation for more information.

Requirements

If you are working with Spartacus 2.x, your Angular development environment should include the following:

  • Angular CLI: 9.1 or later.
  • node.js: 10.14.1 or later, < 13.0. The most recent 12.x version is recommended.
  • yarn: v1.15 or later

If you are working with Spartacus 1.x, your Angular development environment should include the following:

  • Angular CLI: v8.0.0 or later, < v9.0.0
  • node.js: v10 or later, < v12
  • yarn: v1.15 or later

For the back end, SAP Commerce Cloud version 1905 or higher is required, and SAP Commerce Cloud version 2005 is recommended.

Download and Installation

To get up and running with Spartacus, the recommended approach is to build your storefront application from ready-made libraries. You can also clone and build from source, but upgrading is not as simple.

Spartacus currently can only be used with a SAP Commerce Cloud instance through Commerce APIs.

For complete setup instructions, see Building the Spartacus Storefront from Libraries.

Customizing and Extending Spartacus

To maintain our promise of upgradability, the design pattern for Spartacus is for non-core features to be built as feature libraries that add to or change the provided functionality.

When using Spartacus, you build an app that pulls in the Spartacus libraries, which contain the core resources needed to work with SAP Commerce. You then build new features that contain any custom functionality and pages.

Content for Spartacus pages is fetched from the SAP Commerce Cloud CMS (Content Management System), such as logos, links, banners and static pages. We recommend that new content-driven features follow the same pattern to enable Content Managers to modify page content through the CMS tools.

The documentation for customizing and extending Spartacus is still under development and is being released as it becomes available.

API Documentation

The Spartacus API documentation is hosted here: https://sap.github.io/spartacus/

The API documentation is versioned and is included in the Assets folder of each and every Spartacus library. You can download the API documentation for a particular version by accessing the Assets folder of any Spartacus library from that particular release, and then clicking on docs.tar.gz or docs.zip. To find the Assets folder for a particular library, access the Released Libraries for Spartacus, click on the link for the library you are interested in, and scroll to the bottom of the page.

For example, to download the API documentation for the 2.0.0 release, you could access the Assets folder of the @spartacus/[email protected] library here.

Note: The 1.x and 2.x releases of the Spartacus libraries work only with SAP Commerce versions 1905 and 2005. Certain features, such as cancellations and returns, are only available with SAP Commerce 2005, because the necessary OCC API support is only available in SAP Commerce 2005.

Note: The Spartacus API is separate from the Commerce OCC REST APIs that Spartacus consumes. For more information, see the Commerce API Documentation and YAML Files on the SAP Help Portal.

Limitations

When 1.0.0 is released, it is recommended to use SAP Commerce 1905. Spartacus works with Release 1808 and 1811 of SAP Commerce Cloud, with some limitations.

Spartacus is also being updated so that it works well with upcoming releases of SAP Commerce Cloud. This means that certain features of Spartacus may only work with unreleased future editions of SAP Commerce Cloud. This will be noted as we release new versions of Spartacus.

Known Issues

Known issues are documented in the GitHub issue tracking system.

How to Obtain Support

Spartacus is provided "as-is" with no official lines of support.

To get help from the Spartacus community:

Contributing

Team Spartacus welcomes feedback, ideas, requests, and especially code contributions.

  • Post comments to our Feedback chat in our Slack channel.
  • Read the Contributing document and learn how to:
    • Help others
    • Report an issue
    • Contribute code to Spartacus

To Do

Many improvements are coming! All tasks will be posted to our GitHub issue tracking system. As mentioned, some of the improvements will mean breaking changes. While we strive to avoid doing so, we cannot guarantee this will not happen before the first release.

License

Copyright (c) 2018 SAP SE or an SAP affiliate company. All rights reserved. This file is licensed under the Apache Software License, v. 2 except as noted otherwise in the LICENSE file.

spartacus's People

Contributors

andrey-vlasov avatar bgambocjaviniar avatar developpeurweb avatar dunqan avatar earthii avatar filrak avatar gladius-mtl avatar hackergil avatar kacperknapik avatar katechuen avatar marlasak avatar marlass avatar matejk00 avatar morganm58 avatar plabadie avatar platonn avatar psmul avatar pucek9 avatar qjimmy avatar radheps avatar romerodiver avatar szczepaniak-michal avatar tobi-or-not-tobi avatar vkoulaxazov avatar waseemhybris avatar weizhengsap avatar wishfulthinkerme avatar xymmer avatar zeyber avatar znikola avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.