프로덕트

팔로우 중인 프로덕트

AI로 만든 사내 웹앱을 팀에서 쉽게 배포하고 운영할 수 있는 플랫폼

아티클

전체 보기
김학범

김학범

백오피스 툴, 내부 도구 제품들

내부 도구 빌더 시장에서 Retool은 여전히 대표적인 선택지지만, 수년간 발전해온 관련 시장에서 팀 규모·개발 방식·운영 부담에 따라 더 잘 맞는 대안들이 존재합니다.


요즘은 “Retool이 맞느냐”보다 “현재 상황에서 우리 팀에 어떤 접근이 맞느냐”를 먼저 고민하는 경우도 많아졌고요.


이번 글에서는 내부툴 / 어드민을 만드는 7가지 선택지를 정리했습니다.


1. Select Admin – YAML 스펙 기반으로 빠르게 내부툴 구성

2. Softr – Sheets/Airtable 중심의 노코드 포털

3. Appsmith – 셀프 호스팅 가능한 오픈소스 로우코드

4. ToolJet – 로우코드 + JS/Python 확장

5. Refine dev – React 코드로 만드는 내부툴 프레임워크

6. Reflex dev – Python 기반 리액티브 UI

7. Forest Admin – 백엔드 연동으로 운영툴 자동 생성


내부 도구 선택지를 한 번 정리해보고 싶다면 가볍게 참고해보셔도 좋을 것 같습니다.

1
0
김학범

김학범

Chart.js 대시보드, 더 간단하게 만들 수 없을까?

Chart.js 대시보드를 위한 가장 단순한 환경

내부 데이터를 시각화해야 할 때, 대부분 두 가지 선택지 사이에서 고민하게 됩니다.

  • Metabase 같은 BI 툴을 쓸 것인가

  • 직접 프론트엔드/백엔드를 개발할 것인가

BI 툴은 설정이 간편하지만 커스터마이징이 어렵고, 직접 개발은 자유도가 높지만 리소스가 많이 듭니다.
둘 사이 어딘가에, 조금 더 가볍고 빠른 방법이 있을까 하는 생각에서 이번 구성을 시도해보게 됐습니다.


SQL + YAML + Chart.js 조합

이번에 구성해본 방식은 다음 세 가지 도구를 조합한 형태입니다.

  • SQL: 데이터를 가져오기 위한 쿼리

  • YAML: 페이지와 필터 등 구조 정의

  • Chart.js: 시각화 라이브러리

이 세 가지를 연결해주는 툴로는 셀렉트어드민을 사용했습니다.
복잡한 설정 없이도 대시보드를 만들 수 있는지 확인해보는 실험이었습니다.


기본 구조

YAML을 이용해 페이지와 필터를 정의하고,
SQL로 데이터를 조회하고,
Chart.js로 시각화를 구성합니다.

예시로는 이커머스 월별 매출 데이터를 시각화하는 대시보드를 구성해봤습니다.

menus:
  - path: pages/sales

pages:
  - path: pages/sales
    title: 매출 대시보드
    params:
      - key: date_range
        label: 분석 기간
        format: date
        range: true
    blocks:
      - id: monthly-sales
        type: query
        sql: SELECT ...
        display: chartjs
        displayFn: |
          // chart.js 설정

SQL 쿼리

YAML에서 정의한 필터 값은 자동으로 쿼리 파라미터에 바인딩됩니다.

SELECT 
  DATE_FORMAT(order_date, '%Y-%m') as month,
  SUM(total_amount) as total_revenue
FROM orders 
WHERE order_date >= :date_range1 
  AND order_date <= :date_range2
GROUP BY DATE_FORMAT(order_date, '%Y-%m')
ORDER BY month

Chart.js 설정

SQL 결과는 rows 배열로 전달되고, 이걸 그대로 Chart.js에 연결할 수 있습니다.

const labels = rows.map(row => row.month);
const revenueData = rows.map(row => row.total_revenue);

const data = {
  labels: labels,
  datasets: [{
    label: '매출 (원)',
    data: revenueData,
    backgroundColor: 'rgba(54, 162, 235, 0.6)'
  }]
};

const config = {
  type: 'bar',
  data: data,
  options: {
    responsive: true,
    scales: {
      y: {
        title: { display: true, text: '매출 (원)' }
      }
    }
  }
};

const myChart = new Chart(ctx, config);

실제 동작

위와 같이 구성하면 셀렉트어드민의 /pages/sales 경로 페이지에서 다음과 같은 대시보드가 만들어집니다.

  • 상단에는 날짜 필터가 있고

  • 그 아래에는 월별 매출 차트가 표시됩니다

  • 필터 값을 바꾸면 쿼리가 자동으로 다시 실행되고

  • 차트가 즉시 업데이트됩니다

프론트엔드 상태 관리나 별도 API 작성 없이도 이런 구조가 만들어졌습니다.


이 방식이 가질 수 있는 장점

  • 작성하는 코드는 매우 단순합니다 (YAML + SQL + Chart.js)

  • Chart.js 문법을 그대로 활용할 수 있어 시각화 자유도가 높습니다

  • 필터 값과 SQL 파라미터가 자동으로 연결됩니다

  • 인증이나 배포 같은 부분은 플랫폼에서 처리합니다


이런 상황이라면 어울릴 수 있습니다

  • 내부 팀이 빠르게 지표를 확인해야 할 때

  • 스타트업처럼 리소스가 제한된 환경에서

  • SQL은 가능하지만 프론트엔드는 부담스러운 경우

  • BI 툴로 표현이 어려운 복잡한 시각화가 필요한 경우


정리하며

SQL과 Chart.js만으로 대시보드를 구성하는 방법이 얼마나 실용적인지 확인해보고 싶었고,
이번 구성은 그런 가능성을 보여주는 좋은 실험이었습니다.

모든 상황에 적용할 수 있는 건 아니겠지만,
필요한 결과를 빠르게 만들고 개선해 나가는 구조로서는 꽤 괜찮은 선택이 될 수 있습니다.

전체 템플릿 예제나 구성 방식이 궁금하다면 아래 내용을 참고하셔도 좋습니다.


비슷한 고민을 하고 계셨다면, 이 방식이 하나의 힌트가 될 수 있을지도 모르겠습니다.

셀렉트 Select

스타트업을 위한 어드민, 백오피스 솔루션

2
0
김학범

김학범

높은 수준의 어드민을 만들어야 할 때, 무엇을 고려해야할까요?

고객들이 문의를 주실 때 공통적으로 나오는 질문들이 있습니다.

  • "권한별로 페이지 접근을 다르게 설정할 수 있나요?"

  • "특정 버튼을 특정 조건에서만 활성화할 수 있나요?"

  • "데이터를 입력할 때, 유효성 검사를 더 세밀하게 하고 싶어요."

단순한 페이지 이상의 것들이 필요할때, 이런 고민들을 셀렉트어드민이 대신 해결하기 위해 노력하고 있습니다. 이번 업데이트에서는 아래와 같은 개선들이 있었습니다.

updates-03 (1).png

필요한 기능을 원하는 방식으로 제어할 수 있도록

버튼을 특정 조건에서만 활성화하거나, 날짜 입력을 제한할 수 있도록 설정할 수 있습니다.

SQL 옵션도 더 유연하게 조정할 수 있어, 데이터를 더 정밀하게 다룰 수 있습니다.

UI를 다룰 때도 로딩 상태를 더 직관적으로 표시할 수 있도록 개선했습니다.

작은 변화 같지만, 어드민을 실제로 운영할 때는 이런 세밀한 조정이 업무 효율을 크게 좌우합니다.

다양한 데이터베이스 환경에서도 문제없이

OracleDB를 정식 지원합니다.

MySQL, PostgreSQL뿐만 아니라, 이제 더 다양한 데이터 환경에서도 사용할 수 있습니다.

어떤 데이터베이스를 쓰더라도, 쉽게 연동하고 관리할 수 있어야 합니다.

이번 업데이트로 그 범위를 더 확장했습니다.

로그인과 도메인, 더 자유롭게 설정할 수 있도록

이제 이메일/비밀번호(PW) 로그인 방식도 지원합니다.

SSO가 필수인 환경이 아니라면, 더 간편한 방식으로 접근할 수 있습니다.

커스텀 도메인 기능도 정식 오픈했습니다.

이제 기본 제공 URL이 아니라, 우리 조직에 맞는 도메인에서 서비스할 수 있습니다.

어드민을 만들 때 중요한 것

어드민은 단순한 관리 도구가 아닙니다.

업무의 속도를 결정하고, 데이터의 신뢰도를 높이고, 사용자의 접근성을 조정하는 중요한 역할을 합니다.

더 세밀한 컨트롤, 더 강력한 확장성, 더 직관적인 UX.

셀렉트 팀이 만드는 로우코드 어드민은 계속 발전해 나가겠습니다.

필요한 기능이 있다면 언제든 의견을 주세요.

저희는 계속 듣고, 반영하고, 개선해 나갑니다.

감사합니다.

셀렉트 Select

스타트업을 위한 어드민, 백오피스 솔루션

3
0
김학범

김학범

복잡한 어드민 기능을 셀렉트팀에게 맡겨보세요.

안녕하세요! 셀렉트 팀에서 12월 제품 업데이트를 공유드립니다.

이번 업데이트는 개발자의 생산성과 UX를 크게 향상시킬 수 있는 기능들로 가득합니다.

단순한 CRUD 페이지를 넘어서 어드민 고도화에 도움을 드릴 수 있는 다양한 옵션들을 빠르게 늘려나가고 있습니다.

모든 기능은 실제 업무 현장/고객사의 의견을 반영해 개발되었습니다. 고객분들의 의견으로 제품을 만듭니다!

어드민 개발에 고민이 있으시다면 참고해보셔도 좋겠습니다.

주요 업데이트 내용

Popper로 구현한 인터랙티브 UI

  • 페이지 전환 없이 팝업으로 데이터 상세 정보를 표시합니다.

  • 재고, 판매 상태, 가격 등 중요 정보를 빠르게 확인할 수 있어 UX가 개선됩니다.

  • 이를 통해 사용자 경험을 한층 더 인터랙티브하게 만들 수 있습니다.

데이터 테이블 커스터마이징

HTML 테이블에 커스텀 포맷팅을 적용할 수 있게 되었습니다

천 단위 구분기호, 날짜 형식, 통화 단위 등을 상황에 맞게 설정도 가능해 데이터 가독성이 크게 향상됩니다.

ListBox 다중 관리 기능

리스트박스를 이용해 여러 항목을 동시에 선택하고 관리할 수 있습니다. 이 기능은 대량의 데이터를 처리할 때 특히 유용합니다. 예를 들어:

  • 여러 상품의 판매 상태를 한 번에 변경

  • 상품 진열 순서 일괄 수정

효율적인 데이터 처리

선택한 항목들을 forEach로 일괄 처리하여 CSV로 다운로드할 수 있습니다.

기타 개선사항

  • type: toggle 블록을 사용해 페이지 내 여러 섹션을 접고 펼 수 있습니다.

  • 블록별 새로고침 기능(`showRefresh`)으로 필요한 부분만 업데이트할 수 있습니다.

  • display col + openModal, openAction을 통해 데이터 조회 후 모달을 열거나 액션을 실행할 수 있습니다.

메이커 여러분의 의견은 언제나 환영입니다. 이 업데이트를 통해 여러분의 어드민 관련 문제해결 경험이 한층 더 개선되길 바랍니다.

감사합니다.

자세한 사항은 여기에서 확인하실 수 있어요.

셀렉트 Select

스타트업을 위한 어드민, 백오피스 솔루션

2
1
김학범

김학범

파트너센터, 고객 포털 제작을 고민중인 개발자이신가요?

서비스 제공 과정에서 고객과 파트너의 만족도를 높이는 건 B2B서비스, 플랫폼 비즈니스 조직의 주요 고민입니다. 사내 데이터베이스와 SaaS의 연동이 쉽지 않기 때문에 파트너센터나 고객 포털을 직접 개발하는 것을 검토하게 되는데요.

셀렉트어드민은 이런 고민을 덜어드리기 위해 관련 기능을 추가하였습니다.


채널톡 연동부터 접근 권한 관리, 사용자 속성 동기화까지, 다양한 기능으로 고객과 파트너를 연결하고 소통을 원활하게 만들어보세요.


🛠 채널톡 연동으로 고객지원 품질을 높이세요!

셀렉트어드민을 통해 파트너센터와 고객 포털 제작시 채널톡 등을 설치하여 실시간 소통이 가능해졌습니다.

  • 채널톡 스크립트를 간단히 추가해 실시간 채팅 기능을 제공하세요.

  • 고객 데이터를 안전하게 암호화해 보안도 강화할 수 있습니다.

연동 가이드 확인하기


🔍 강화된 사용자 속성(User Property) 기능

이제 셀렉트어드민에서 사용자의 역할과 정보를 더 쉽게 입력할 수 있습니다.

  • 관리자 등급, 레벨 등을 규정된 방식으로 손쉽게 추가하고

  • 외부 API를 통해 고유 데이터를 실시간 반영할 수 있습니다.

Callback 설정법과 API 가이드를 확인하세요.


🔑 정교한 권한 관리로 안전하고 맞춤화된 환경 제공

페이지 및 모달(팝업창)에 대한 접근 권한을 사용자 그룹별로 세밀하게 설정하세요.

  • 특정 그룹에게만 보이는 맞춤형 페이지

  • 상황에 맞는 역할 기반 모달 접근제어 제공

페이지 권한 설정 가이드
모달 접근 관리 방법


파트너센터와 고객 포털 제작이 필요한데 리소스가 부족하셨다면 셀렉트어드민을 한번 고려해보세요. 다양한 기능을 활용해 더 효율적이고 효과적인 서비스를 제공할 수 있게 돕고 있습니다.

감사합니다.

셀렉트 Select

스타트업을 위한 어드민, 백오피스 솔루션

3
2

포스트

전체 보기
김학범

김학범

과거 운영팀 일을 도우며 Zendesk, Intercom, 채널톡, 구글시트 등 여러 도구를 써봤습니다.

하지만 늘 같은 질문에 멈췄습니다. “이게 우리가 실제로 일하는 방식이랑 맞나?”


현실의 운영 업무는 보통 주문을 먼저 보고, 문제가 있는지 확인한 뒤, 고객 응대나 처리를 합니다.
즉 주문·결제·배송 같은 기존 데이터가 출발점입니다.


하지만 대부분의 티켓 시스템은 이 흐름보다 티켓 자체를 중심으로 설계돼 있었고, 주문 데이터를 보려면 연동과 비용 부담이 뒤따랐습니다. 그렇다고 직접 만들기엔 여유가 없었습니다.

그래서 질문이 하나로 정리됐습니다. “굳이 완성된 티켓 시스템을 써야 할까?” “주문을 기준으로 이슈를 관리하면 안 될까?”


이 질문에서 출발해 데이터 위에서 운영 업무를 정리하는 방식의 아주 단순한 어드민 도구를 직접 구성해보게 되었습니다.

https://blog.selectfromuser.com/custom-ticket-tool/

1
1
김학범

김학범

ChatGPT, Claude를 쓸때 무엇이 가장 중요할까요?


저는 요즘 생각나는 모든 일에 LLM을 써보고 있습니다. 최근들어 좀더 많이 써보는중인것 같아요. 아직 LLM에 대해 모르는게 많고 원리나 의도를 하나씩 배워가고 있지만, 직접 많이 써보니 직감적으로 느껴지는것들도 있습니다. 이번에는 LLM으로 대시보드를 만들어보면서 경험한것을 정리해봤습니다.

모델 성능보다 중요한건 따로 있었습니다.

https://blog.selectfromuser.com/llm-dashboard-claude-vs-chatgpt/

셀렉트 Select

스타트업을 위한 어드민, 백오피스 솔루션

1
0
김학범

김학범

한국에 프로그래머(개발자) 대상으로 Dev tool이나 SaaS를 제공하는 팀이 모여있는 커뮤니티가 있을까요?

1
0
김학범

김학범

서비스 관리자/운영 매니저가 가장 많이 하는 작업은 무엇일까요?

바로 데이터를 검색하고 관리하는 일입니다. 셀렉트에서는 고객분들이 손안대고 코풀수 있게 데이터를 찾고 입력하는 다양한 컴포넌트를 지원합니다.

1. 풍부한 검색 경험
원하는 데이터를 더욱 빠르고 정확하게 찾을 수 있습니다. 담당자를 배정할때 이름, 이메일 등 알고 있는 정보가 한정적이어도 쉽게 찾을 수 있고, 입력은 일관되게 처리할 수 있어요.

2. 테이블 데이터를 활용한 필터 기능
다른 테이블의 데이터를 불러와 필요한 정보를 바로 검색하고 선택할 수 있습니다. 예를 들어, 고객의 과거 주문 목록에서 특정 주문을 골라 입력하는 작업이 가능해졌습니다.

3. 계층형 카테고리 메뉴
대·중·소 카테고리 구성으로 데이터를 더욱 체계적으로 분류할 수 있습니다. 예를 들어, 상품 관리에서 카테고리를 "전자제품 > 노트북 > 게이밍"으로 세분화해 관리하면 편리합니다.

직접 개발하지 말고 셀렉트어드민을 통해 문제를 해결해보세요.

셀렉트 Select

스타트업을 위한 어드민, 백오피스 솔루션

1
1