Skip to content
sap-fiori-tools logo

SAP Fiori Tools Development Skill

sap-fiori-tools

Develops SAP Fiori applications using SAP Fiori tools extensions for VS Code and SAP Business Application Studio. Use when: generating Fiori Elements or Freestyle SAPUI5 applications, configuring Page Editor for List Report or Object Page, working with annotations and Service Modeler, setting up ...

secondsky/sap-skills0installs458stars

SKILL.md

Full skill instructions

SAP Fiori Tools Development Skill

Related Skills

  • sapui5: Use for underlying UI5 framework details, custom control development, and advanced UI patterns
  • sap-cap-capire: Use for CAP service integration, OData consumption, and backend service configuration
  • sap-abap-cds: Use when consuming ABAP CDS views as OData services or working with ABAP backends
  • sap-btp-cloud-platform: Use for deployment targets, BTP destination configuration, and Cloud Foundry deployment
  • sap-api-style: Use when documenting OData APIs or following API documentation standards for Fiori apps
  • dependency-upgrade: Use when tightening npm/​JavaScript supply-chain controls for UI tooling and dependency updates

Comprehensive guidance for developing SAP Fiori applications using SAP Fiori tools extensions.

Table of Contents

Overview

SAP Fiori tools is a collection of extensions that simplifies SAP Fiori elements and SAPUI5 application development. It includes six main components:

ComponentPurpose
Application WizardGenerate Fiori Elements and Freestyle SAPUI5 templates
Application ModelerVisual Page Map and Page Editor for configuration
Guided DevelopmentStep-by-step feature implementation guides
Service ModelerVisualize OData service metadata and annotations
Annotations Language ServerCode completion, diagnostics, i18n for annotations
Environment CheckValidate setup and destination configurations

Minimum SAPUI5 Version: 1.65+ Support Component: CA-UX-IDE

Sample Projects

Official SAP sample repository with Fiori Elements applications built using SAP Fiori tools:

Repository: SAP-samples/​fiori-tools-samples

FolderContent
V2/OData V2 Fiori Elements samples
V4/OData V4 Fiori Elements samples
cap/CAP project integration samples
app-with-tutorials/Tutorial companion projects

Quick Start:

git clone [https://github.com/​SAP-samples/​fiori-tools-samples](https://github.com/​SAP-samples/​fiori-tools-samples)
cd fiori-tools-samples/​V4/​apps/​salesorder
npm install
npm start

Quick Start Commands

Access features via Command Palette (Cmd/​Ctrl + Shift + P):

Fiori: Open Application Generator       # Create new application
Fiori: Open Application Info            # View project commands
Fiori: Open Page Map                    # Visual navigation editor
Fiori: Open Guided Development          # Feature implementation guides
Fiori: Open Service Modeler             # Explore OData service
Fiori: Add Deployment Configuration     # Setup ABAP or CF deployment
Fiori: Add Fiori Launchpad Configuration # Configure FLP tile
Fiori: Validate Project                 # Run project validation
Fiori: Open Environment Check           # Troubleshoot destinations

Application Generation

Fiori Elements Floorplans

FloorplanOData V2OData V4Use Case
List Report PageYesYesBrowse large datasets, navigate to details
Worklist PageYes1.99+Process work items, task completion
Analytical List PageYes1.90+Data analysis, KPI visualization
Overview PageYesYesRole-based dashboards, multi-card views
Form Entry Object PageYesYesStructured data entry
Custom PageNoYesExtensible custom UI with building blocks

Data Source Options

  1. SAP System - Connect to ABAP on-premise or BTP systems
  2. CAP Project - Use local Node.js or Java CAP project
  3. EDMX File - Upload metadata for mock-only development
  4. SAP Business Accelerator Hub - Development/​testing only (deprecated)

Generated Project Structure

webapp/
  ├── manifest.json          # App descriptor
  ├── Component.js           # UI5 component
  ├── localService/          # Mock data and metadata
  │   ├── metadata.xml
  │   └── mockdata/
  └── annotations/           # Local annotation files
package.json
ui5.yaml                     # UI5 tooling config
ui5-local.yaml               # Local development config

Page Editor Configuration

The Page Editor provides visual configuration for Fiori Elements pages.

List Report Page Elements

  • Filter Fields - Configure filter bar with value helps
  • Table - Configure columns, actions, row selection
  • Multiple Views - Create tabbed table views
  • Analytical Chart - Add data visualizations

Object Page Elements

  • Header - Configure header facets and actions
  • Sections - Form, Table, Identification, Chart, Group sections
  • Footer - Configure footer actions

Extension-Based Elements (OData V4)

ElementLocationDescription
Custom ColumnTableAdd custom columns with fragments
Custom SectionObject PageAdd custom sections with views
Custom ActionHeader/​TableAdd action buttons with handlers
Custom ViewList ReportAdd custom tab views
Controller ExtensionPageOverride lifecycle methods

For detailed configuration, see references/​page-editor.md.

Annotations Development

Language Server Features

  • Code Completion (Ctrl/​Cmd + Space) - Context-aware suggestions
  • Micro-Snippets - Insert complete annotation blocks
  • Diagnostics - Validation against vocabularies
  • i18n Support - Externalize translatable strings
  • Peek/​Go to Definition - Navigate to annotation sources

Supported Vocabularies

OASIS OData v4: Core, Capabilities, Aggregation, Authorization, JSON, Measures, Repeatability, Temporal, Validation

SAP Vocabularies: Analytics, CodeList, Common, Communication, DataIntegration, DirectEdit, Graph, Hierarchy, HTML5, ODM, PDF, PersonalData, Preview, Session, UI

Annotation Files Location

  • CDS files: CAP project .cds files
  • XML files: webapp/​annotations/​*.xml

For annotation patterns, see references/​annotations.md.

Preview Options

NPM Scripts

npm start           # Live data from backend
npm run start-mock  # Mock data via MockServer
npm run start-local # Mock data + local SAPUI5 resources
npm run start-noflp # Without Fiori launchpad sandbox

Run Control

Configure via launch.json in .vscode/ folder. Supports:

  • Multiple run configurations per workspace
  • VS Code and BAS integration
  • App-to-app navigation preview

Mock Data

  • Data Editor - Visual mock data management
  • AI Generation - Generate contextual mock data (requires SAP Build Code)
  • MockServer - Automatic mock server setup

For preview details, see references/​preview.md.

Deployment

ABAP Deployment

Prerequisites:

  • SAP_UI 7.53+
  • SAPUI5 ABAP Repository service enabled
  • S_DEVELOP authorization

Configuration:

npx fiori add deploy-config    # Generate ui5-deploy.yaml
npm run deploy                  # Execute deployment

Generated Files: ui5-deploy.yaml, updated package.json

Cloud Foundry Deployment

Prerequisites:

  • MTA tool: npm i -g mta
  • CF CLI with multiapps plugin
  • HTML5 Repository service instance

Configuration:

npx fiori add deploy-config    # Select Cloud Foundry
npm run build                   # Generate mta.yaml
npm run deploy                  # Deploy to CF

Generated Files: mta.yaml, xs-app.json, xs-security.json

For deployment details, see references/​deployment.md.

Fiori Launchpad Configuration

Add FLP tile configuration via:

Fiori: Add Fiori Launchpad Configuration

Required Parameters:

  • Semantic Object (unique identifier)
  • Action (e.g., "display")
  • Title
  • Subtitle (optional)

Configuration updates manifest.json with inbound navigation.

Adaptation Projects

Extend existing Fiori applications without modifying source code.

Prerequisites

On-Premise (VS Code):

  • SAP_UI 7.54+, SAPUI5 1.72+
  • Base app must have manifest.json
  • Cannot use ABAP Cloud packages

S/​4HANA Cloud & BTP ABAP:

  • Application must be "released for extensibility"
  • 3-system landscape with developer tenant
  • Required business catalogs assigned

Adaptation Workflow

  1. Create adaptation project via Template Wizard
  2. Make UI adaptations in Adaptation Editor
  3. Preview adaptation
  4. Deploy to ABAP repository

Adaptation Capabilities

AdaptationDescription
Control VariantsCreate page variants/​views
FragmentsAdd UI fragments to extension points
Controller ExtensionsOverride/​extend controller methods
App Descriptor ChangesModify manifest.json settings
OData ServiceAdd/​replace OData services
Component UsagesAdd SAPUI5 component references

For adaptation details, see references/​adaptation-projects.md.

AI-Powered Generation

Project Accelerator / Joule

Generate complete CAP projects with Fiori UI from business requirements.

Input Formats: Text, Images, or Combined

Generated Output:

  • Entity definitions and associations
  • Code lists and value helps
  • List Report applications
  • Object Page configurations
  • Sample data

Limitations:

  • No charts or specialized headers
  • Do not include personal/​sensitive data in requirements

AI Mock Data Generation

Generate contextual mock data using entity property names (requires SAP Build Code subscription).

Project Functions

FunctionCommand
Application InfoFiori: Open Application Info
Project ValidationFiori: Validate Project
Environment CheckFiori: Open Environment Check
Data EditorVia Application Info page
Service MetadataFiori: Open Service Modeler
System ConnectionsManage SAP Systems in VS Code

Project Validation Checks

  1. Project - Verify package.json, manifest.json, ui5.yaml
  2. Annotation - Validate annotation files
  3. Specification - Check manifest and changes folder
  4. ESLint - Run ESLint if configured

Building Blocks (OData V4)

Reusable UI components for custom pages and sections:

BlockUse Case
ChartData visualization
Filter BarQuery filtering
TableTabular data display
PageCustom page container
Rich Text EditorContent editing in custom sections

Troubleshooting

Common Issues

Port 8080 in use: System auto-selects next available port

HTTPS/​SSL errors: Configure browser to trust localhost certificates

Deployment 400 errors: Check /​IWFND/​ERROR_LOG, configure virus scan in /​IWFND/​VIRUS_SCAN

Debug deployment:

# macOS/​Linux
DEBUG=ux-odata-client npm run deploy

# Windows
set DEBUG=ux-odata-client & npm run deploy

CLI Help

npx fiori help              # List available commands
npx fiori deploy help       # Deployment command help

Migration from SAP Web IDE

Migrate existing projects using:

Fiori: Migrate Project for use in Fiori tools

Supported Types: Fiori Elements (V2/​V4), Freestyle SAPUI5, Adaptation Projects, Extensibility Projects

Post-Migration: Run npm run deploy-config to update deployment configuration.

For migration details, see references/​getting-started.md.

Guided Development (76+ Guides)

Access step-by-step implementation guides:

Fiori: Open Guided Development

Guide Categories:

  • Building Blocks (Chart, Filter Bar, Table)
  • Page Elements (Cards, Header Facets, Sections)
  • Table Enhancements (Column types, Actions)
  • Filtering & Navigation
  • Configuration (Variant management, Side effects)
  • Extensions (Custom actions, sections, columns)

Reference Documentation

For detailed information on specific topics:


MCP Tools (AI-Assisted Development)

The fiori-tools MCP server (@sap-ux/​fiori-mcp-server) integrates AI coding assistants directly with Fiori development, providing semantic documentation search and programmatic app generation.

Prerequisite: Node.js 20+. No authentication required.

Available Tools

ToolDescription
search_docsSemantic search across Fiori Elements, Annotations, UI5, and Fiori tools docs
list_fiori_appsScan a directory to identify existing Fiori apps available for modification
list_functionalitiesReturn supported operations for creating or modifying applications
get_functionality_detailsRetrieve required parameters for a specific operation
execute_functionalityExecute the creation or modification with provided parameters

Typical Workflow

  1. Use search_docs to find annotation patterns or Fiori Elements configuration options
  2. Use list_fiori_apps to discover apps in the current workspace
  3. Use list_functionalities to see what modifications are supported
  4. Use get_functionality_details to understand required parameters
  5. Use execute_functionality to apply the change

Complementary MCP Servers

SAP recommends using alongside:

  • sapui5 skill: includes @ui5/​mcp-server for UI5 framework tooling
  • sap-cap-capire skill: includes @cap-js/​mcp-server for CAP backend

Bundled Resources

Reference Documentation

  • references/​getting-started.md - Installation, migration, ADT integration, commands
  • references/​configuration.md - MTA, middlewares, SAPUI5 versions, project functions
  • references/​page-editor.md - Page Editor configuration details
  • references/​annotations.md - Annotation patterns and examples
  • references/​deployment.md - Deployment configuration details
  • references/​adaptation-projects.md - Adaptation project workflows
  • references/​preview.md - Preview and testing options

Documentation Sources

Primary Source: https://github.com/​SAP-docs/​btp-fiori-tools/​tree/​main/​docs

Last Updated: 2025-11-22

SectionDocumentation Link
Getting StartedGetting-Started-with-SAP-Fiori-Tools/
Generating AppsGenerating-an-Application/
DevelopingDeveloping-an-Application/
PreviewingPreviewing-an-Application/
DeployingDeploying-an-Application/
Project FunctionsProject-Functions/
Adaptation ProjectsRoot docs folder

SAP Resources:

More skills from secondsky

systematic-debugging logo
secondsky/claude-skills

systematic-debugging

Four-phase debugging framework that ensures root cause investigation before attempting fixes. Never jump to solutions. Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

226 0
View
sap-cloud-sdk-ai logo
secondsky/sap-skills

sap-cloud-sdk-ai

Integrates SAP Cloud SDK for AI into JavaScript/TypeScript and Java applications. Use when building applications with SAP AI Core, Generative AI Hub, or Orchestration Service. Covers chat completion, embedding, streaming, function calling, content filtering, data masking, document grounding, prom...

458 0
View

This skill provides comprehensive guidance for SAP Business Application Studio (BAS), the cloud-based IDE on SAP BTP built on Code-OSS. Use when setting up BAS subscriptions, creating dev spaces, connecting to external systems, deploying MTA applications, troubleshooting connectivity issues, mana...

458 0
View
supabase-postgres-best-practices logo
secondsky/claude-skills

supabase-postgres-best-practices

Postgres performance optimization and best practices from Supabase. Use this skill when writing, reviewing, or optimizing Postgres queries, schema designs, or database configurations.

226 0
View
cloudflare-agents logo
secondsky/claude-skills

cloudflare-agents

Build AI agents on Cloudflare Workers with MCP integration, tool use, and LLM providers.

226 0
View
openai-agents logo
secondsky/claude-skills

openai-agents

OpenAI Agents SDK for JavaScript/TypeScript (text + voice agents). Use for multi-agent workflows, tools, guardrails, or encountering Zod errors, MCP failures, infinite loops, tool call issues.

226 0
View
mobile-offline-support logo
secondsky/claude-skills

mobile-offline-support

Offline-first mobile apps with local storage, sync queues, conflict resolution. Use for offline functionality, data sync, connectivity handling, or encountering sync conflicts, queue management, storage limits, network transition errors.

226 0
View
vitest-testing logo
secondsky/claude-skills

vitest-testing

Modern TypeScript/JavaScript testing with Vitest. Fast unit and integration tests, native ESM support, Vite-powered HMR, and comprehensive mocking. Use for testing TS/JS projects.

226 0
View
cloudflare-workers-security logo
secondsky/claude-skills

cloudflare-workers-security

Cloudflare Workers security with authentication, CORS, rate limiting, input validation. Use for securing APIs, JWT/API keys, or encountering auth failures, CORS errors, XSS/injection vulnerabilities.

226 0
View
react-composition-patterns logo
secondsky/claude-skills

react-composition-patterns

React composition patterns that scale. Use when refactoring components with boolean prop proliferation, building flexible component libraries, or designing reusable APIs. Triggers on tasks involving compound components, render props, context providers, or component architecture.

226 0
View
sap-hana-ml logo
secondsky/sap-skills

sap-hana-ml

SAP HANA Machine Learning Python Client (hana-ml) development skill. Use when: Building ML solutions with SAP HANA's in-database machine learning using Python hana-ml library for PAL/APL algorithms, DataFrame operations, AutoML, model persistence, and visualization. Keywords: hana-ml, SAP HANA,...

458 0
View
sapui5-cli logo
secondsky/sap-skills

sapui5-cli

Manages SAPUI5/OpenUI5 projects using the UI5 Tooling CLI (@ui5/cli). Use when initializing UI5 projects, configuring ui5.yaml or ui5-workspace.yaml files, building UI5 applications or libraries, running development servers with HTTP/2 support, creating custom build tasks or server middleware, ma...

458 0
View

Popular AI tools

Kaiber logo
Video

Kaiber

Generate, edit, and beat-sync AI video with leading models in one workspace.

Paid
View
Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View

Transform Your Design with AI Designer by ImgCreator.ai

Freemium
View
Akool AI logo
Content & writing

Akool AI

Revolutionizing Video Production with AI-Powered Creativity

Paid
View

Extend an image past the frame and let AI fill the new aspect ratio.

Freemium
View
StarByFace logo
Security

StarByFace

Discover your celebrity doppelgänger with StarByFace!

Free
View
C

ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.

Freemium
View
Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View