Skip to content

[NoCode] Create template composer and customization toolΒ #50

@jisung-02

Description

@jisung-02

πŸ“‹ Summary

ν…œν”Œλ¦Ώ μ‘°ν•© 및 μ»€μŠ€ν„°λ§ˆμ΄μ§• 도ꡬ

🎯 Objectives

  • μ—¬λŸ¬ ν…œν”Œλ¦Ώ μ‘°ν•©
  • ν…œν”Œλ¦Ώ μ»€μŠ€ν„°λ§ˆμ΄μ§• μœ„μ €λ“œ
  • μ„€μ • 프리셋
  • μ˜μ‘΄μ„± μžλ™ ν•΄κ²°

βœ… Acceptance Criteria

  • ν…œν”Œλ¦Ώ μ‘°ν•© μ‹œμŠ€ν…œ
  • μ»€μŠ€ν„°λ§ˆμ΄μ§• μœ„μ €λ“œ
  • 좩돌 감지 및 ν•΄κ²°
  • 프리셋 관리
  • μ˜μ‘΄μ„± μžλ™ μ„€μΉ˜
  • λ§ˆμ΄κ·Έλ ˆμ΄μ…˜ κ°€μ΄λ“œ

πŸ“ Template Composition

Combining Templates

interface TemplateComposition {
  base: Template;
  features: Template[];
  integrations: Template[];
  customizations: Record<string, any>;
}

// Example: Compose a full-stack app
const composition: TemplateComposition = {
  base: templates.get("basic-api"),
  features: [
    templates.get("user-management"),
    templates.get("file-upload")
  ],
  integrations: [
    templates.get("postgresql"),
    templates.get("redis-cache")
  ],
  customizations: {
    port: 3000,
    database_name: "myapp",
    enable_cors: true
  }
};

// Compose into a single project
const project = await composer.compose(composition);

Customization Wizard

Step 1: Choose Base Template
  β—‹ Basic API
  β—‹ Auth API
  ● CRUD App
  β—‹ Microservice

Step 2: Select Features
  β˜‘ User Management
  β˜‘ File Upload
  ☐ Payment Integration
  ☐ Email Service

Step 3: Configure Integrations
  Database: PostgreSQL β–Ό
  Cache: Redis β–Ό
  Storage: Local Filesystem β–Ό

Step 4: Customize Settings
  Port: [3000]
  API Prefix: [/api/v1]
  Enable CORS: β˜‘
  
Step 5: Review & Generate
  [Preview Configuration]
  [Generate Project]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions