PersonIndependent

Mike Zaschka

Provides 6
CachingCAPBTPABAPCachingcapabilityHolding the result of an expensive read so the next one is cheap. This spans four different things people call caching — HTTP response caching, query result caching, remote service response caching, and application-level memoisation. They are not interchangeable, and picking the wrong one is the usual cause of stale-data bugs in multitenant apps.Data federationCAPBTPData federationcapabilityReading data that lives in another system as if it were local — by federating the query, by copying the rows, or by caching what was read. Three different answers to one question, and the choice is about how stale you can afford to be.Event MeshCAPBTPABAPEvent MeshcapabilityEmitting and consuming business events across systems through brokers, including subscriptions and mapping application events to broker topics. Work that must survive a request, including deferred processing and retries, belongs to [async processing](capability:async-processing).Schema evolutionCAPSchema evolutioncapabilityGetting a model change into a database that already holds data, in every tenant, without losing any of it. Generating the initial schema and migrating one that already holds data are often treated as the same step.Service integrationCAPService integrationcapabilityUsing a service that runs somewhere else as if it were one of your own: its API imported into the model, a proxy that turns a local query into the remote protocol, and a mock that stands in for it on a laptop. Distinct from [destinations](capability:destinations), which is how the address and the credentials are found, and from [replication](capability:replication), which is holding the data locally.TelemetryCAPABAPBTPTelemetrycapabilitySeeing what a running service did — traces across handlers and database calls, metrics, and correlation that survives an async boundary.
Demonstrates 3
LLM integrationCAPUI5BTPABAPLLM integrationcapabilityCalling a language model from application code with the tenant, destination and credential handling already solved instead using an SDK call with a hand-rolled key.Reference appsCAPABAPReference appscapabilityA whole application to read rather than a snippet to copy — somewhere to see how the pieces sit together once there are more than three of them.TypeScript patternsCAPTypeScript patternscapabilityHow an application is arranged once it is written in TypeScript — where handlers live, what registers them, and how business logic is kept apart from persistence. Distinct from typing, which is about the model being visible to the compiler; this is about the shape of the code around it.
Contributes to 2
Database connectorsCAPBTPABAPDatabase connectorscapabilityConnecting an application’s data model and queries to a database, including the differences in supported queries, types and schema management between database implementations. Changing an existing schema belongs to [schema evolution](capability:schema-evolution).Serve your application over MCPCAPBTPABAPServe your application over MCPcapabilityExposing selected application data and business operations to an AI agent through the Model Context Protocol. An application may also integrate remote services through [service integration](capability:service-integration), connecting its exposed contract with [agent access to your systems](capability:agent-systems-access). Development assistance belongs to [agent access to your code](capability:agent-code-access).

Entries9

Group by9 of 9 entries
EntrySignals
Maintains5
cds-cachingv3.1.1
Functional boundary

CAP caching plugin for query results and remote service responses

cds-data-federationv0.4.0
none

Data federation for CAP via delegation, caching and replication

cds-data-pipelinev0.4.0
none

Scheduled READ, MAP, WRITE pipelines between CAP services

cds-dbmv0.1.4
Archived+1

Delta deployment and migrations for CAP database adapters

cds-kafkav0.1.4
none

Kafka adapter exposing topics as a CDS messaging service

Maintains: samples, sketches and references1
cap-ui5-gpt-chat
Functional boundary

Chat app on CAP and SAPUI5 against the OpenAI API

Contributes to3
@cap-js/mcpv1.5.0
Functional boundary

Exposes CAP services as MCP servers for AI agents

@quadrio/cds-dbmv0.0.41
Quiet

Fork of cds-dbm with deploy, load, diff and drop tasks

cds-pgv0.1.36
Archived

PostgreSQL adapter for SAP CDS from the SAP Mentors community

Writing and topics15

The atlas is now in betaTopic, edition 1

onedevatlas is open for browsing. Find tools for SAP development, compare their documented capabilities, ask your AI assistant, and join a flight during TechEd week.

Building onedevatlasTopic, edition 1

Building onedevatlas: the idea, the back-and-forth with AI, the wrong turns, and an orb who lost his permanent spot in the atlas.

12 of 12 pieces
Piece, what it offersStill applies
Federating, Replicating, and Caching Remote Data in CAP — Part 2
SAP Community, Mike Zaschka, part 2 of 2The reasoningA recipeRunnable code
nothing recorded
CAP just got faster: What's new in cds-caching 1.0
SAP Community, Mike ZaschkaThe reasoningA reference
Version drift
Boosting performance in SAP Cloud Application Programming Model (CAP) applications with cds-caching
SAP Community, Mike ZaschkaThe reasoningA recipe
Version drift
Using Apache Kafka for messaging in the SAP Cloud Application Programming Model (CAP) – Part 2/2
SAP Community, Mike Zaschka, part 2 of 2The reasoningA recipeRunnable code
nothing recorded
Using Apache Kafka for messaging in the SAP Cloud Application Programming Model (CAP) – Part 1/2
SAP Community, Mike Zaschka, part 1 of 2The reasoningRunnable code
nothing recorded
A ChatGPT-like chat app built with modern SAP technologies (CAP, SAPUI5) – Part 3/3
SAP Community, Mike Zaschka, part 3 of 3The reasoningRunnable code
1 stale part
A ChatGPT-like chat app built with modern SAP technologies (CAP, SAPUI5) – Part 2/3
SAP Community, Mike Zaschka, part 2 of 3The reasoningRunnable code
Gone quiet
A ChatGPT-like chat app built with modern SAP technologies (CAP, SAPUI5) – Part 1/3
SAP Community, Mike Zaschka, part 1 of 3The reasoningRunnable code
Gone quiet
Run and Deploy CAP with PostgreSQL on SAP BTP Cloud Foundry (Node.js)
SAP Community, Mike ZaschkaThe reasoningRunnable code
1 stale part
Getting started with CAP on PostgreSQL (Node.js)
SAP Community, Mike ZaschkaThe reasoningRunnable code
1 stale part
The Full Picture: Federating, Replicating, and Caching Remote Data in CAP — Part 1
SAP Community, Mike Zaschka, part 1 of 2The reasoning
nothing recorded
AI needs a foundation: A map of the plug-in ecosystem for CAP
SAP TechEd — session catalogue, Mike ZaschkaThe reasoning
nothing recorded

IN TOPICS

Building onedevatlasTopic, edition 1names cds-caching, cds-data-federation

Building onedevatlas: the idea, the back-and-forth with AI, the wrong turns, and an orb who lost his permanent spot in the atlas.

Details

History13
  • cds-kafkaprovides → capability:event-meshRe-read against the README and the maintainer's own two SAP Community posts. Every claim in all three is about emitting to and consuming from a broker; none describes deferred work, retries or periodic scheduling, and async processing's own description separates itself from messaging. Event Mesh is the concern that covers the mapping between a CDS event and a broker topic, and its CAP coverage already states that non-SAP brokers are what plugins add. The CAP Java counterpart, com.sap.cds:cds-feature-kafka, carries the same edge.
  • cds-kafkarequires → external:kafkaThe README names the broker and the client library it reaches it through, and the edge was missing while cds-nats, the sibling broker adapter, already carried its own.
  • cds-kafkacompat.cds_range → >=7cds-kafka 0.1.4 declares @sap/cds >=7 as a peer dependency in its npm record. Checked 2026-09-19 against the registry.
  • cds-kafkacompat.deployment → cf, localPart 2 of the maintainer's series runs the plugin against a Docker Kafka on a laptop, then deploys a CAP application that consumes from Confluent Cloud to SAP BTP Cloud Foundry with mbt build and cf deploy. Kyma is named there as somewhere a Kafka cluster may run, not as a deployment that was carried out, so it is left out.
  • cds-kafkaidentity.license → MITStated in the README's licensing section and in the npm record. It sits beside the SAP Developer License relation rather than replacing it: the package is MIT, the use inside an SAP Cloud Application is what the other instrument speaks to.
  • cds-kafkadescription.what_it_solves → written from the README and the maintainer's two SAP Community postsThe entry carried a one-line index entry and nothing answering what it does, so the page opened on readings. The paragraph states the gap the plugin fills, what it adds over CAP's messaging API, and the two places it stops.
  • cds-kafkaconnects → kafkacds-kafka required Apache Kafka as its broker; the connection says what the dependency could not: that messages run both ways, to and from topics.
  • cds-cachingdescription, compat.multitenancy, provides → Removed the unconditional compat.multitenancy flag; recorded the MTX default and user/locale conditions in prose and sourced caching facetsThe current README documents automatic MTX tenant keys and an explicit opt-out; the security guide qualifies user and locale separation.
  • cds-cachingrequires, description.what_it_solves → Required CAP runtime and conditional cache-store relationships; default memory and CDS reuse clarifiedThe maintainer Store Types table documents independently selectable storage modes and adapters.
  • cds-data-federationprovides, requires → Added caching relationship, strategy facets and conditional dependenciesMaintainer documentation describes two cache strategies; dependency on another cache provider does not exclude this API from the caching capability.
  • cds-cachingverdict_withheld → retiredWithheld verdicts retired with the rings. Nothing is recused from: facts about an entry are facts whoever maintains it, and a starting-point is answered by description.to_build_on_it.
  • cds-dbmverdict_withheld → retiredWithheld verdicts retired with the rings. Nothing is recused from: facts about an entry are facts whoever maintains it, and a starting-point is answered by description.to_build_on_it.
  • First entry seenDiscovered via GitHub API · mikezaschka, npm registry, The maintainer, claiming it, The discovery pass, npm registry · keywords:cds, awesome-cap.
Connected people1

Source speaker and Atlas actor linked using native records and an identity confirmation supplied by hand. Checked .

sap-developers:tsp:mike-zaschka → actor:mike-zaschka

Source relationships (1)
  • sap-developers:tes:ct1136 — presentedBy → sap-developers:tsp:mike-zaschka
For your agent