InfoGrab Docs

화이트 레이블링

요약

Embed를 사용하려면 embed 라이선스가 필요합니다. n8n 화이트 레이블링은 프론트엔드 스타일링과 에셋을 브랜드 아이덴티티에 맞게 커스터마이징하는 것을 의미합니다. 개발 머신에 다음이 설치되어 있어야 합니다: n8n의 저장소를 포크하고 새 저장소를 클론합니다.

기능 제공 범위

Embed를 사용하려면 embed 라이선스가 필요합니다. Embed 사용 시기, 비용 및 라이선스 절차에 대한 자세한 내용은 n8n 웹사이트의 Embed를 참조하세요.

n8n 화이트 레이블링은 프론트엔드 스타일링과 에셋을 브랜드 아이덴티티에 맞게 커스터마이징하는 것을 의미합니다. 이 프로세스는 n8n의 소스 코드 github.com/n8n-io/n8n에서 두 개의 패키지를 변경하는 것을 포함합니다:

사전 요구사항#

개발 머신에 다음이 설치되어 있어야 합니다:

  • git
  • Node.js 및 npm. 최소 버전은 Node 18.17.0입니다. Linux, Mac, WSL에서 nvm(Node Version Manager)을 사용하여 두 가지를 설치하는 방법은 여기에서 확인할 수 있습니다. Windows 사용자는 Microsoft의 Windows에 NodeJS 설치 가이드를 참고하세요.

n8n의 저장소를 포크하고 새 저장소를 클론합니다.

git clone https://github.com/<your-organization>/n8n.git n8n
cd n8n

모든 종속성을 설치하고, 빌드 후 n8n을 시작합니다.

npm install
npm run build
npm run start

변경 사항이 있을 때마다 n8n을 다시 빌드하고 재시작해야 합니다. 개발 중에는 npm run dev를 사용하면 코드 변경 시 n8n이 자동으로 다시 빌드되고 재시작됩니다.

테마 색상#

테마 색상을 커스터마이징하려면 packages/frontend/@n8n/design-system을 열고 다음으로 시작합니다:

_tokens.scss의 상단에서 HSL 색상으로 된 --color-primary 변수를 찾을 수 있습니다:

@mixin theme {
	--color-primary-h: 6.9;
	--color-primary-s: 100%;
	--color-primary-l: 67.6%;

다음 예시에서 기본 색상이 #0099ff로 변경됩니다. HSL로 변환하려면 색상 변환 도구를 사용할 수 있습니다.

@mixin theme {
	--color-primary-h: 204;
	--color-primary-s: 100%;
	--color-primary-l: 50%;

Example Theme Color Customization

테마 로고#

에디터의 로고 에셋을 변경하려면 packages/frontend/editor-ui/public을 참조하고 다음을 교체합니다:

  • favicon-16x16.png
  • favicon-32x32.png
  • favicon.ico
  • n8n-logo.svg
  • n8n-logo-collapsed.svg
  • n8n-logo-expanded.svg

이러한 로고 에셋을 교체합니다. n8n은 다음을 포함한 Vue.js 컴포넌트에서 이를 사용합니다:

다음 예시에서 n8n-logo-collapsed.svgn8n-logo-expanded.svg를 교체하여 메인 사이드바의 로고 에셋을 업데이트합니다.

Example Logo Main Sidebar

로고 에셋에 다른 크기나 배치가 필요한 경우 MainSidebar.vue 하단의 SCSS 스타일을 커스터마이징할 수 있습니다.

.logoItem {
	display: flex;
	justify-content: space-between;
	height: $header-height;
	line-height: $header-height;
	margin: 0 !important;
	border-radius: 0 !important;
	border-bottom: var(--border-width-base) var(--border-style-base) var(--color-background-xlight);
	cursor: default;

	&:hover, &:global(.is-active):hover {
		background-color: initial !important;
	}

	* { vertical-align: middle; }
	.icon {
		height: 18px;
		position: relative;
		left: 6px;
	}

}

텍스트 현지화#

n8n 또는 n8n.io와 같은 모든 텍스트를 브랜드 아이덴티티로 변경하려면 n8n의 영어 국제화 파일을 커스터마이징할 수 있습니다: packages/frontend/@n8n/i18n/src/locales/en.json.

n8n은 대부분의 UI 텍스트를 번역하기 위해 Vue.js용 Vue I18n 국제화 플러그인을 사용합니다. en.json 내의 텍스트를 검색하고 교체하려면 연결된 로케일 메시지를 사용할 수 있습니다.

다음 예시에서 n8n의 AboutModal.vue에 화이트 레이블을 적용하기 위해 _brand.name 번역 키를 추가합니다.

{
	"_brand.name": "My Brand",
	//replace n8n with link to _brand.name
	"about.aboutN8n": "About @:_brand.name",
	"about.n8nVersion": "@:_brand.name Version",
}

Example About Modal Localization

윈도우 제목#

n8n의 윈도우 제목을 브랜드 이름으로 변경하려면 다음을 편집합니다:

다음 예시에서 index.htmluseDocumentTitle.ts에서 n8nn8n.io의 모든 항목을 My Brand로 교체합니다.

<!DOCTYPE html>
<html lang="en">
<head>
	<!-- Replace html title attribute -->
	<title>My Brand - Workflow Automation</title>
</head>
import { useSettingsStore } from '@/stores/settings.store';

// replace n8n
const DEFAULT_TITLE = 'My Brand';
const DEFAULT_TAGLINE = 'Workflow Automation';

Example Window Title Localization

화이트 레이블링

원문 보기
요약

Embed를 사용하려면 embed 라이선스가 필요합니다. n8n 화이트 레이블링은 프론트엔드 스타일링과 에셋을 브랜드 아이덴티티에 맞게 커스터마이징하는 것을 의미합니다. 개발 머신에 다음이 설치되어 있어야 합니다: n8n의 저장소를 포크하고 새 저장소를 클론합니다.

기능 제공 범위

Embed를 사용하려면 embed 라이선스가 필요합니다. Embed 사용 시기, 비용 및 라이선스 절차에 대한 자세한 내용은 n8n 웹사이트의 Embed를 참조하세요.

n8n 화이트 레이블링은 프론트엔드 스타일링과 에셋을 브랜드 아이덴티티에 맞게 커스터마이징하는 것을 의미합니다. 이 프로세스는 n8n의 소스 코드 github.com/n8n-io/n8n에서 두 개의 패키지를 변경하는 것을 포함합니다:

사전 요구사항#

개발 머신에 다음이 설치되어 있어야 합니다:

  • git
  • Node.js 및 npm. 최소 버전은 Node 18.17.0입니다. Linux, Mac, WSL에서 nvm(Node Version Manager)을 사용하여 두 가지를 설치하는 방법은 여기에서 확인할 수 있습니다. Windows 사용자는 Microsoft의 Windows에 NodeJS 설치 가이드를 참고하세요.

n8n의 저장소를 포크하고 새 저장소를 클론합니다.

git clone https://github.com/<your-organization>/n8n.git n8n
cd n8n

모든 종속성을 설치하고, 빌드 후 n8n을 시작합니다.

npm install
npm run build
npm run start

변경 사항이 있을 때마다 n8n을 다시 빌드하고 재시작해야 합니다. 개발 중에는 npm run dev를 사용하면 코드 변경 시 n8n이 자동으로 다시 빌드되고 재시작됩니다.

테마 색상#

테마 색상을 커스터마이징하려면 packages/frontend/@n8n/design-system을 열고 다음으로 시작합니다:

_tokens.scss의 상단에서 HSL 색상으로 된 --color-primary 변수를 찾을 수 있습니다:

@mixin theme {
	--color-primary-h: 6.9;
	--color-primary-s: 100%;
	--color-primary-l: 67.6%;

다음 예시에서 기본 색상이 #0099ff로 변경됩니다. HSL로 변환하려면 색상 변환 도구를 사용할 수 있습니다.

@mixin theme {
	--color-primary-h: 204;
	--color-primary-s: 100%;
	--color-primary-l: 50%;

Example Theme Color Customization

테마 로고#

에디터의 로고 에셋을 변경하려면 packages/frontend/editor-ui/public을 참조하고 다음을 교체합니다:

  • favicon-16x16.png
  • favicon-32x32.png
  • favicon.ico
  • n8n-logo.svg
  • n8n-logo-collapsed.svg
  • n8n-logo-expanded.svg

이러한 로고 에셋을 교체합니다. n8n은 다음을 포함한 Vue.js 컴포넌트에서 이를 사용합니다:

다음 예시에서 n8n-logo-collapsed.svgn8n-logo-expanded.svg를 교체하여 메인 사이드바의 로고 에셋을 업데이트합니다.

Example Logo Main Sidebar

로고 에셋에 다른 크기나 배치가 필요한 경우 MainSidebar.vue 하단의 SCSS 스타일을 커스터마이징할 수 있습니다.

.logoItem {
	display: flex;
	justify-content: space-between;
	height: $header-height;
	line-height: $header-height;
	margin: 0 !important;
	border-radius: 0 !important;
	border-bottom: var(--border-width-base) var(--border-style-base) var(--color-background-xlight);
	cursor: default;

	&:hover, &:global(.is-active):hover {
		background-color: initial !important;
	}

	* { vertical-align: middle; }
	.icon {
		height: 18px;
		position: relative;
		left: 6px;
	}

}

텍스트 현지화#

n8n 또는 n8n.io와 같은 모든 텍스트를 브랜드 아이덴티티로 변경하려면 n8n의 영어 국제화 파일을 커스터마이징할 수 있습니다: packages/frontend/@n8n/i18n/src/locales/en.json.

n8n은 대부분의 UI 텍스트를 번역하기 위해 Vue.js용 Vue I18n 국제화 플러그인을 사용합니다. en.json 내의 텍스트를 검색하고 교체하려면 연결된 로케일 메시지를 사용할 수 있습니다.

다음 예시에서 n8n의 AboutModal.vue에 화이트 레이블을 적용하기 위해 _brand.name 번역 키를 추가합니다.

{
	"_brand.name": "My Brand",
	//replace n8n with link to _brand.name
	"about.aboutN8n": "About @:_brand.name",
	"about.n8nVersion": "@:_brand.name Version",
}

Example About Modal Localization

윈도우 제목#

n8n의 윈도우 제목을 브랜드 이름으로 변경하려면 다음을 편집합니다:

다음 예시에서 index.htmluseDocumentTitle.ts에서 n8nn8n.io의 모든 항목을 My Brand로 교체합니다.

<!DOCTYPE html>
<html lang="en">
<head>
	<!-- Replace html title attribute -->
	<title>My Brand - Workflow Automation</title>
</head>
import { useSettingsStore } from '@/stores/settings.store';

// replace n8n
const DEFAULT_TITLE = 'My Brand';
const DEFAULT_TAGLINE = 'Workflow Automation';

Example Window Title Localization