create-ks-ext
v0.0.8
Published
Heavily inspired by create-next-app and create-react-app. This CLI tool can help you quickly setting up a KubeSphere extension project. You don't need to install or configure tools like webpack, Babel, TypeScript, etc. Just run the command and your projec
Downloads
14
Readme
Create KS Ext
Heavily inspired by create-next-app and create-react-app. This CLI tool can help you quickly setting up a KubeSphere extension project. You don't need to install or configure tools like webpack, Babel, TypeScript, etc. Just run the command and your project will be ready to go.
Prerequisites
- Access to a Unix-based operating system, such as Linux, MacOS or Windows Subsystem for Linux
curl
orwget
installed- Node.js Active LTS Release installed using one of these
methods:
- Using
nvm
(recommended) - Binary Download
- Package manager
- Using
yarn
Installationgit
installation- Ensure the ports 8000 and 8001 is available for the local environment, we use the two ports for the bff server and webpack-dev-server.
Install
Run the command:
yarn create ks-ext
The wizard will ask you the directory name(default is my-app
) to be installed in. and create the directory in the current directory.
Inside that directory, it will generate the initial project structure and install the dependencies.
It might take a little while, but as soon as the message below, you can go to the next step.
Success! Created my-ext at /Users/chenzhen/Workspace/qingcloud/create-ks-app/dist/my-ext
Inside that directory, you can run several commands:
yarn create:ext
Create a new extension.
yarn dev
Starts the development server.
yarn build:prod
Builds the app for production.
yarn start
Runs the built app in production mode.
We suggest that you begin by typing:
cd my-ext
yarn create:ext
And
yarn dev
Options
create-ks-ext
comes with the following option:
- -f, --fast-mode - Install dependencies from a tarball.
Create your KubeSphere extension
Switch to the directory you just created and run the command:
yarn create:ext
the wizard will ask you the extension name, displayName, description and author.
$ ksc create:ext
? Extension Name demo
? Display Name Demo
? Description this is demo
? Author chenzhen
? Language JavaScript
? Are you sure you want to create extension: [demo] ? Yes
✨ Done in 12.64s.
Then the extension will be created in the extensions
directory. The files structure of the extension is as follows:
.
├── Dockerfile
├── README.md
├── package.json
└── src
├── App.jsx
├── index.js
├── locales
│ ├── en
│ │ ├── base.json
│ │ └── index.js
│ ├── index.js
│ └── zh
│ ├── base.json
│ └── index.js
└── routes
└── index.js
Run development environment
- Edit the local_config.yaml file in the
configs
directory. Replace the apiServer value with the real value
server:
apiServer:
url: http://apiserver.local
wsUrl: ws://apiserver.local
- run the dev
yarn dev
And open the browser to http://localhost:8000/, you will see the kubesphere page. for more information about the development environment, please refer to the development documentation