Skip to content

snovak/cf-create-app

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Header Image


Table of Contents

About The Project

This project is meant to simplify the initial configuration needed to create and deploy an end-to-end application to a Cloud Foundry account in SAP Cloud Platform.

What cf-create-app does for you?

  1. Creates a basic CAP application
  2. Adds a simple React, Angular or Vue application to your project
  3. Adds an HTML5 Deployer to the project
  4. Adds an Application Router to the project
  5. Adds the HTML5 Application Repository service (app-host and app-runtime) to the project
  6. Adds the Authentication and Authorization service (XSUAA) to the project
  7. Bind all modules together as a MTA application, ready to be deployed in a Cloud Foundry environment

Built With

cf-create-app uses the following technologies and frameworks:

Getting Started

Setting and end-to-end application in SAP Cloud Platform is not a trivial task.

This tool creates a project with all the components you need to build (and easily deploy) a web application with a CAP backend exposing OData services, and an HTML5 application ready to consume those services.

Prerequisites

Pre-requisite Description Documentation
Node.js v12 Required runtime for this boilerplate. Recommended install it with NVM Download
cf cli Cloud Foundy CLI tool Download

Cloud prerequisites

To be able to deploy this application you need an SAP Cloud Platform account in the Cloud Foundry (CF) environment.

In your CF account space, the following services must be available:

  • HTML5 Application Repository | html5-apps-repo
  • SAP HANA Schemas & HDI Containers | hana
  • Authorization & Trust Management | xsuaa

Recommended tools

Tools Description Documentation
VS Code CDS extension VS Code extension with code complete and other tools for CDS development Download
MTA Plugin for CF CLI Plugin to add useful commands to manage MTA applications using CF CLI Download
HTML5 Applications Repository CF CLI Plugin Plugin to add useful commands to manage HTML5 Application Repository apps using CF CLI Download

Usage

Create your app

Open a terminal in your workspace directory and run:

npx cf-create-app YOUR_APP_NAME

In the comand prompt, choose the frontend framework you prefer:

UI framework command prompt

In the comand prompt, choose the frontend framework you prefer:

UI framework command prompt

The new project contains these folders and files, following the recommended project layout:

File / Folder Purpose
app/ content for UI frontends go here
approuter/ Application Router configuration files
db/ your domain models and data go here
html5Deployer/ helper application to deploy HTML5 apps to the HTML5 Application Repository service in SAP Cloud Platform
srv/ your service models and code go here
package.json project metadata and configuration
README.md this getting started guide

Add your business logic

  • Add/modify entities to your DB schema on db/ folder
  • Add/modify services to your backend app in the srv/ folder
  • Add/modify your custom HTML5 application in the app/ folder
  • Modify the Application Router behaviour on approuter/xs-app.json

Deploy the app

Open a terminal in the project root directory and run:

mbt build
cf deploy mta_archives/yourAppMtarArchiveName.mtar

Next steps

HOW TO: Run and develop your app in localhost

Learn more about localhost development on: Localhost Development

HOW TO: Create this boilerplate manually step-by-step

Learn more about manual configuration on: Manual Configuration

Roadmap

These are some of our backlog items

  • Add UI5 app via setup script and document it
  • Include test automation to the setup script and documentation
  • Add CI/CD pipeline with Jenkins

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License.

Contact

  • Alberto Delgado - LinkedIn
  • Rafael López - LinkedIn
  • Sergio Delgado - LinkedIn

Project Link: https://github.com/Turutupa/cf-create-app

Acknowledgements

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%