WebSocket = 실시간으로 연결해주는 통신 통로 STOMP = 그 통로에서 메시지를 어떻게 보내고 받을지 정해주는 규칙 1. 왜 라이브러리가 달라질까? 백엔드에서 어떤 WebSocket 기술을 사용하는지에 따라 프론트에서 사용하는 라이브러리도 달라진다.
1. 그래프 요구사항 측정 시간을 24시간 기준의 연속된 x축으로 변환 날짜가 바뀌어도 시간 흐름이 이어지도록 표현 측정 간격이 8시간 이상이면 선 연결 중단 연결 가능한 측정값은 영역 그래프로 표시 단독 측정값은 점으로만 표시 정상 안압 범위인 10~21mmHg를
구현하려는 그래프 BoxPlot은 기본 차트가 아니라 highcharts-more 모듈을 등록해야 해. 저 위에 2가지를 꼭 해야함 참고로 Highcharts 버전에 따라 modules/boxplot이 없고 highcharts-more에 BoxPlot이 포함되어
시력(UDVA)은 Line Chart를 사용하고, 구면도수(SPH)와 난시도수(CYL)는 Bar Chart를 사용했지만 대부분의 설정은 공통으로 사용하였다. 실제로 차트 종류만 다를 뿐, ResponsiveContainer CartesianGrid XAxis
견적 결과지 화면을 PDF로 생성해 서버에 저장하고, 이후 카카오톡으로 전송하는 기능을 구현했다. 화면에 보이는 UI를 그대로 PDF로 만들어야 했기 때문에 html2canvas-pro로 DOM을 이미지처럼 캡처하고, jsPDF를 이용해 PDF 파일로 변환하는 방식을
시력교정술 예측 서비스에서는 단순히 하나의 수술 결과를 보여주는 것이 아니라 여러 수술 방식을 한 화면에서 비교할 수 있어야 한다. 사용자는 다음과 같은 수술 방식의 예측 결과를 확인할 수 있다. LASIK LASEK SMILE ICL 또한 각 수술 방식에 대해
NICEPAY는 별도의 React 라이브러리나 npm 패키지를 제공하지 않는다. 대신 브라우저에서 JS SDK를 로드한뒤 AUTHNICE.requestPay()를 호출하는 방식으로 결제 진행 공식 문서에서도 JS SDK URL(https://pay.nicepay.co.
1. gitlab 프로젝트의 ssh 주소 복사 2. 원격 저장소 연결 2-1. 이미 origin이 있다면 아래처럼 변경 origin = 내 프로젝트가 연결된 원격 저장소 이름 git remote -v 이런 게 나오면 이미 GitLab이랑 연결돼 있다 = origi
파이프라인을 거치지 않고 직접 반영해야할 때 수동 배포를 사용함 1. 서버 접속 2. 프로젝트 폴더로 이동 3. 배포 파일 업로드 파일 수정 후 npm run build 꼭 하기!!! 로컬에서 빌드 결과물을 압축 생성된 압축 파일을 서버로 전송 4. deplo
dev 브랜치 -> 테스트 서버 배포 main 브랜치 -> 운영 서버 배포 전체 파이프라인 구조 stages: setup : 패키지 설치 test : 코드 검사 build : Next.js 빌드 deploy : 서버 배포 예시 파이프라인 구조 빌드 환경 image
## 요구사항 - 조회된 데이터를 엑셀로 다운로드 - 선택한 기간을 파일명에 포함 - 선택한 필터 정보를 파일명에 포함 - 헤더 스타일 적용 - 컬럼 너비 지정 - 숫자 데이터 가독성 향상 - 예) 충전금내역_2026-05-01_2026-05-31_충전금_열람.xlsx
이 버전은 비회원도 가능 로그인한 회원만 가능할 때 무조건 성공 또는 실패 후 페이지 이동 필수 백엔드에게 정보 보내기 실패 결제 시간 초과 결제 실패 토스에서 제공하는 에러 코드 PAYPROCESSABORTED 사용자가 결제창을 닫음 "결제가 취소되었습니
refresh API가 기존 axios 인스턴스를 타면, 자기 자신을 가로채는 interceptor 때문에 무한 루프가 생길 수 있다. 1️⃣ 기본 axios 인스턴스(api)는 “토큰 관리용”이다 보통 우리가 쓰는 api 인스턴스에는 이런 역할이 들어가 있음 req
request 인터셉터 토큰을 어디에 넣을지 헤더 형식 Request Interceptor: Access Token 자동 첨부 Access Token은 SessionStorage에 저장해두고, 모든 요청에 자동으로 붙인다. response 인터셉터 “언제 재발급할지
1. 내가 직접 하던 일(CI 없을 때) 2. CI를 쓰면 뭐가 달라질까? CI는 이 코드가 merge 되어도 괜찮은지 자동으로 검사하는 역할 lint / test / build를 자동으로 실행 하나라도 실패하면 merge 불가 사람이 빼먹을 수 없음 merge 가능
2025년을 한 줄로 요약하자면,고통 끝에 낙이 온다는 사자성어가 가장 잘 어울리는 해였다.취업 준비를 다시 시작해야겠다고 마음먹은 순간부터 불안은 자연스럽게 따라왔다.다시 취준생이 되었고, 어디로 가게 될지 알 수 없는 상태에서 하루하루를 보냈다.서류는 셀 수 없을
GitLab CI/CD는 GitLab에 기본으로 내장된 CI/CD 시스템이다. 별도의 CI 툴(Jenkins, CircleCI 등)을 붙이지 않아도, 저장소 하나만 있으면 바로 파이프라인을 구성할 수 있다. 별도 툴 설치 ❌ GitLab 저장소에 바로 연동 ⭕ > 파이
CI/CD는 코드를 더 자주, 더 안전하게, 더 자동으로 배포하기 위한 개발 문화이자 자동화 파이프라인이다.Continuous Integration, 지속적 통합개발자가 코드를 자주(main 브랜치에) 병합하고, 그때마다 자동으로 빌드·테스트를 실행하는 방식각자 로컬에
회사를 다니기 전에는 개발이라고 하면 자연스럽게 코드를 먼저 떠올렸다. 하지만 실무에 들어와 보니, 실제 개발은 코드를 작성하기 전 단계에서 이미 절반 이상 결정되고 있었다. 입사 후 한 달 동안 나는 실제 구현에 앞서 다음 4가지 문서를 작성해보았다. - 유스케이
Tailwind 4.0으로 넘어오면서 “공식 문서에 있는 차이점”보다, 실제로 코드를 치면서 바로 체감되는 변화가 있었다. 내 경우엔 크게 두 가지였다. 파일 삽입 방식이 바뀌었다 커스텀 유틸리티를 @utility로 정의하는 흐름이 생겼다 폰트 커스텀 설정 방식이 바뀌