3.9 KiB
3.9 KiB
Overview of Samples
The following list gives an overview of the samples provided in subdirectories. Each sub directory essentially is an individual npm package arranged in an all-in-one monorepo umbrella setup.
@capire/hello-world
- A simplistic Hello World service using CDS and cds.services.
- Typescript support
@capire/bookshop
- Getting Started with CAP, briefly introducing:
- Project Setup and Layouts
- Domain Modeling
- Defining Services
- Generic Providers
- Adding Custom Logic
- Using Databases
@capire/common
- Showcases how to extend @sap/cds/common thereby covering:
- Building extension packages
- Providing reuse packages
- Verticalization
- Using Aspects
- Used in the fiori app sample
@capire/orders
- A standalone orders management service, demonstrating:
- Using Compositions in Domain Models, along with
- Serving deeply nested documents
@capire/reviews
- Shows how to implement a modular service to manage product reviews, including:
- Consuming other services synchronously and asynchronously
- Serving requests synchronously
- Emitting events asynchronously
- Grow as you go, with:
- Mocking app services
- Running service meshes
- Late-cut Micro Services
- As well as managed data, input validations, and authorization
@capire/bookstore
- A composite app, reusing and combining these packages:
- The Vue.js app imported from
bookshopis served as well - The Vue.js app imported from
reviewsis served as well - The Vue.js app imported from
data-vieweris served as well - The Fiori app imported from
ordersis served as well - OpenAPI export + Swagger UI
@capire/fiori
- Adds an SAP Fiori elements application to bookstore, thereby introducing:
- OData Annotations in
.cdsfiles - Support for Fiori Draft
- Support for Value Helps
- Serving SAP Fiori apps locally
- Fiori Elements V2
- OData V2 using CDS OData V2 Adapter Proxy
- List Report (type
TreeTable) @sap.hierarchyannotations
See the Serving Fiori UIs documentation for more information.
All-in-one Monorepo
Each sample sub directory essentially is a standard npm package, some with standard npm dependencies to other samples. The root folder's package.json has local links to the sub folders, such that an npm install populates a local node_modules folder and acts like a local npm registry to the individual sample packages.