From da5c8e74a6ca04fdca0da4bc3596a5e93e275638 Mon Sep 17 00:00:00 2001 From: harlee-x Date: Wed, 3 Apr 2024 16:52:02 +0800 Subject: [PATCH] Docs: To add a default README file in English (#8) Signed-off-by: harlee-x --- README.md | 65 ++++++++++++++++----------- README_zh.md | 96 ++++++++++++++++++++++++++++++++++++++++ kdp-catalog-manager.png | Bin 48912 -> 28673 bytes 3 files changed, 134 insertions(+), 27 deletions(-) create mode 100644 README_zh.md diff --git a/README.md b/README.md index dab4336..e79fcca 100644 --- a/README.md +++ b/README.md @@ -1,47 +1,55 @@ -[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) +[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) ![Tests](https://github.com/linktimecloud/kdp-catalog-manager/actions/workflows/unit-test.yml/badge.svg) -![Build](https://github.com/linktimecloud/kdp-catalog-manager/actions/workflows/ci-build.yml/badge.svg) +![Build](https://github.com/linktimecloud/kdp-catalog-manager/actions/workflows/ci-build.yml/badge.svg) ![](https://img.shields.io/badge/python-3.10.13-green) -![](https://img.shields.io/badge/fastapi-0.110.0-green) +![](https://img.shields.io/badge/fastapi-0.110.0-green) ![image version](https://img.shields.io/docker/v/linktimecloud/kdp-catalog-manager) ![image size](https://img.shields.io/docker/image-size/linktimecloud/kdp-catalog-manager) # KDP Catalog Manager -## 项目描述 +English | [简体中文](./README_zh.md) +
-### 项目概述 -KDP Catalog Manager是一套大数据应用管理平台。基于应用功能进行分类查看、管理,降低应用管理的复杂度,从而使大数据管理人员更专注于数据的处理 +## Project Description -### 核心技术架构 +### Project Overview +KDP Catalog Manager is a big data application management platform. It categorizes and manages applications based on their functionalities, reducing the complexity of application management and allowing big data administrators to focus more on data processing. + +### Core Technical Architecture ![kdp-catalog-manager](kdp-catalog-manager.png) -### 功能模块描述 +### Functional Module Description #### api * view -定义 Restful API 并对用户输入参数执行基本验证及结果输出 +Defines Restful APIs and performs basic validation on user input parameters and output results. #### Domain + * service -业务逻辑 +Business logic. + * format -数据转换层,用于缓存数据与业务数据转换 +Data conversion layer, used for transforming data between cached data and business data. + * model -数据模型实体 +Data model entities. + ##### Modules * cache -数据存储层,静态数据存储于缓存中 +Data storage layer, where static data is stored in the cache. + * requests -外部数据调用,调用外部服务获取数据 +External data invocation, used to call external services to retrieve data. -## 目录结构 +## Directory Structure ```shell ├── CODEOWNERS ├── README.md @@ -57,33 +65,36 @@ KDP Catalog Manager是一套大数据应用管理平台。基于应用功能进    └── utils ``` -## 启动方式 -### 开发环境搭建 -* 使用python3.10+ +## Startup Procedure + +### Development Environment Setup + +* Requires Python3.10+ + -1. 克隆代码至本地 +1. Clone the code to your local machine. ```shell git clone xxx && cd kdp-catalog-manager ``` -2. 使用虚拟环境 +2. Set up a virtual environment: ```shell -#安装virtualenv +#Install virtualenv pip install virtualenv virtualenv -p /usr/local/bin/python3 venv -# 激活虚拟环境 +# Activate the virtual environment: source ./venv/bin/activate -# 关闭虚拟环境 +# Deactivate the virtual environment: deactivate ``` -3. 安装依赖 +3. Install dependencies: ```shell pip install -r docker/python/requirements.txt ``` -4. 服务启动 +4. Start the service: ```shell cd ~/kdp-catalog-manager \ && export PYTHONPATH=$PYTHONPATH:$(pwd) @@ -91,5 +102,5 @@ python kdp_catalog_manager/main.py ``` -### API 手册 -* 启动服务后通过 http://127.0.0.1:8000/docs 查看提供的接口列表 \ No newline at end of file +### API Manual +* After starting the service, you can view the list of available endpoints by accessing http://127.0.0.1:8000/docs. \ No newline at end of file diff --git a/README_zh.md b/README_zh.md new file mode 100644 index 0000000..25da870 --- /dev/null +++ b/README_zh.md @@ -0,0 +1,96 @@ +[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) +![Tests](https://github.com/linktimecloud/kdp-catalog-manager/actions/workflows/unit-test.yml/badge.svg) +![Build](https://github.com/linktimecloud/kdp-catalog-manager/actions/workflows/ci-build.yml/badge.svg) +![](https://img.shields.io/badge/python-3.10.13-green) +![](https://img.shields.io/badge/fastapi-0.110.0-green) +![image version](https://img.shields.io/docker/v/linktimecloud/kdp-catalog-manager) +![image size](https://img.shields.io/docker/image-size/linktimecloud/kdp-catalog-manager) + + +# KDP Catalog Manager + +## 项目描述 + +### 项目概述 +KDP Catalog Manager是一套大数据应用管理平台。基于应用功能进行分类查看、管理,降低应用管理的复杂度,从而使大数据管理人员更专注于数据的处理 + +### 核心技术架构 +![kdp-catalog-manager](kdp-catalog-manager.png) + + + +### 功能模块描述 + +#### api +* view +定义 Restful API 并对用户输入参数执行基本验证及结果输出 + +#### Domain +* service +业务逻辑 +* format +数据转换层,用于缓存数据与业务数据转换 +* model +数据模型实体 + + +##### Modules +* cache +数据存储层,静态数据存储于缓存中 +* requests +外部数据调用,调用外部服务获取数据 + + +## 目录结构 +```shell +├── CODEOWNERS +├── README.md +└── kdp_catalog_manager +   ├── api +   ├── common +   ├── config +   ├── main.py # 服务启动程序 +   ├── requirements.txt +   ├── test_main.py +   ├── domain +   ├── modules +   └── utils +``` + +## 启动方式 + +### 开发环境搭建 +* 使用python3.10+ + +1. 克隆代码至本地 +```shell +git clone xxx && cd kdp-catalog-manager +``` + +2. 使用虚拟环境 +```shell +#安装virtualenv +pip install virtualenv +virtualenv -p /usr/local/bin/python3 venv +# 激活虚拟环境 +source ./venv/bin/activate + +# 关闭虚拟环境 +deactivate +``` + +3. 安装依赖 +```shell +pip install -r docker/python/requirements.txt +``` + +4. 服务启动 +```shell +cd ~/kdp-catalog-manager \ +&& export PYTHONPATH=$PYTHONPATH:$(pwd) +python kdp_catalog_manager/main.py + +``` + +### API 手册 +* 启动服务后通过 http://127.0.0.1:8000/docs 查看提供的接口列表 \ No newline at end of file diff --git a/kdp-catalog-manager.png b/kdp-catalog-manager.png index 17b487409627642d987d67695a1f0cec54d345d2..32b1f3c7d085ce9ab5e10ca27d0e4978abbb9e82 100644 GIT binary patch literal 28673 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 literal 48912 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