
이번에는 유저들의 면접 영상을 재생할 때 구현했던 플레이어 제작 과정을 소개하고자 한다. 플레이어를 제작하기 위한 사용한 라이브러리는 React Player이다. 다양한 API를 제공하고, 많은 개발자가 사용하며 최근까지도 업데이트가 활발이 되고 있어 선택하게 되었다. 추가적으로 플레이어에서 재생바 역할을 하는 부분만 스타일 잡는데 줘야 할 값들이 너무 많아 시간이 오래 소요될 것을 우려하여 mui의 Slider를 가져와서 사용하였다. 플레이어에 있는 기능은 Youtube와 Vimeo에 있는 기능을 넣으려고 노력하였다. 구현한 기능은 아래와 같다. 1. 재생, 멈춤 2. 3초 앞, 3초전 3. 소리 조절 + 음소거 4. 배속 (0.5배속, 1배속, 1.5배속, 2배속) 5. 전체화면 6. 재생시간 툴팁으..

오늘은 프로젝트에서 면접 영상을 찍은 후 업로드하는 과정에서 클라이언트, 서버, S3가 어떻게 영상을 주고받았는지에 대해 써보도록 하겠다. Pre-signed URL 방식을 택한 이유 클라이언트에서 S3에 파일을 업로드 하는 방법으로는 크게 2가지가 있다. 1. AWS SDK를 이용해 직접 업로드 2. API 서버에 파일을 전달하고 API 서버에서 S3에 업로드 1 번의 방법은 서버를 거치지 않지만, AWS SDK를 써서 S3이용이 가능해야 하기 때문에 브라우저에서 AWS SDK를 사용하는 시점에는 결국 AWS Access Key와 Secret Key 정보를 알고 있어야 한다. 이는 Key 정보가 브라우저에서 노출될 수 있고 악성 해커가 이를 이용하면 S3 리소스를 탈취해 갈 수 있는 위험성이 있다. 2..

지난 포스팅에서 프로젝트 주제와 기술 챌린지에 대한 간략한 내용을 담았다. 지난 포스팅을 토대로 오늘은 영상을 다루는 프로젝트를 시작하면서 처음 진행한 리서치에 대해 써보도록 하겠다. 오늘 다룰 내용은 크게 세 가지이다. 1. HTML5 video 2. WebRTC API, Library찾기 3. 모든 브라우저에 호환 가능한 코덱 찾기 웹캠, HTML5의 getUserMedia()의 역사 영상 쪽은 처음 공부하는 거라 몰랐던 부분이었는데 사실 영상을 촬영하는 것은 html5를 사용하는 것만으로도 가능하다는 것을 알았다. html5rocks.com에서 소개하는 튜토리얼을 통해 어떻게 우리가 영상을 브라우저에서 간단히 다룰 수 있게 되었는지의 역사를 알 수 있게 되었다. 오래된 포스팅이지만, 역사는 변하지 ..
프로젝트 주제 우리의 프로젝트 주제는 화상 면접 연습 커뮤니티 사이트이다. 여러 아이디어가 나왔지만 이 주제가 더더욱 와닿았던 것은 내가 직접 경험해 봤기 때문이다. 나의 경우에는 대학 졸업 후 바로 호주에서 회사생활을 2년 동안 하다가 왔다. 2년 전 구직활동을 하던 당시 대부분의 회사의 지원 조건에는 워킹홀리데이 비자는 해당되지 않은 곳 수두룩했다. 그렇게 지원조건이 안됨에도 포트폴리오와 커버레터를 정성스레 적어 보내고는 했다. 그러다가 한 회사에서 면접 제안이 왔고, 나는 단 한 번뿐인 그 기회를 꼭 잡아야겠다고 생각했다. 타지에서 모든 것을 혼자 준비했었기에 아무도 봐줄 사람이 없었고, 그때 내가 택한 방법은 나의 면접 모습을 녹화하는 것이었다. 예상가는 면접질문을 미리 정리하고, 그 질문에 대해..

엘리님의 자바스크립트 강의를 들은 걸 토대로 게임을 만들어보았다. 최대한 응용하고 발전시키려고 생각하다보니 거스름돈을 계산해 주는 게임을 만들면 좋을 것 같다는 생각을 해서 만들게 되었다. github address https://github.com/AlgoRoots/Kmoney-Math-Game-for-kids 아이들을 위한 거스름 돈 계산 게임 https://algoroots.github.io/Kmoney-Math-Game-for-kids/ 위 링크를 클릭해 게임을 실행해보세요! 편의를 위해 console창에 거스름 돈 값이 출력되도록 설정했습니다. 게임 bg를 넣어 소리가 갑자기 튀어나올 수 있어요! Introduction 아이들이 스스로 물건을 구입하게 하고 얼마의 거스름 돈을 받아야할지 계산하는..

노마드코더 바닐라 js 마지막 챌린지 제출 완료 Momentum Web https://algoroots.github.io/Momentum_Web/ github link https://github.com/AlgoRoots/Momentum_Web 총 3일의 충분한 시간이 주어졌지만, 몸이 좋지 않아 금요일 까지 피그마로 디자인을 마친 후 코딩작업은 일요일에시작했다..월요일 아침 6시까지 제출이었는데, 늦게 시작한 덕에 밤을 새버렸다. 노마드코더 강의안에 있는 내용도 물론 적용했지만, 뭔가 나만의 즐겨찾기 웹페이지를 시각화하고 싶어서 꼭 필요한 것만 가져왔다. (playlist, todolist, bookmarks, analog clock 등 추가) Music playlist를 만드는 과정에서 시간이 많이 지..
엘리님의 브라우저 101이라는 강의를 듣고 있다. 사실 직접해보는 시간을 가지고, 또 강의를 듣는 과정을 반복하니 어려웠던 함수를 선언하고 호출하는 것도 '아 이거구나!' 하는 순간이 왔다. 하지만 class를 이용해 리펙토링하는 과정에서 정말 너무 부족함을 깨달았다. 그 전과는 다른 어려움이랄까.. 항상 하루에 드는 깨달음이 있으면 글을 적는 편인데, 이번에는 그런게 없었고, 계속 '왜 그런 거지?'라는 의문이 들었다. 유튜브에 있는 class와 콜백 함수와 관련해 있는 강의는 다 보았다. 봐도 좀 어려웠지만, 반복해서 보니 이해가 좀 되는 것 같다 싶어 다시 강의를 보면 '왜?'라는 생각이 들었다. 그리고 다시 유투브강의들을 보고, 문법책도 보았다. 주말에 약속이있어 약속 장소를 가는 버스에서도, 자..

아직 토이 프로젝트를 할만한 실력은 아니지만, 그래도 앨리님 유튜브 무료 강의와 애플 코딩 강의를 들으며 추가하고 싶은 기능을 추가하며 만들어보았다. 이것 또한 다 만들어진 것은 아니며 오류를 해결 못한 부분도 있어 추후 업데이트할 예정이나, 우선 나중에 내가 얼마나 성장했는지 기록하기 위해 글을 남긴다. 사용한 이미지는 unplash에서 받은 무료 이미지를 사용하였다. 1. Navigation bar 스크롤 효과 스크롤바를 내리면 bar 컬러와 바뀌고 로고 크기가 살짝 바뀌게 구현했다. 2. 타이포 이펙트 추가 배운 이펙트라 써보고 싶어서 굳이 굳이 타이틀에 넣어봤다.. 나중에 완성되면 뺄 예정 3. 로그인창 구현 이메일, 비밀번호 형식에 안 맞을 시 그에 따른 문구 뜸 이메일 형식 추가 및 비밀번호 ..
- Total
- Today
- Yesterday
- 자바스크립트
- github
- 프로그래머스 베스트앨범 자바스크립트
- React
- 프로그래머스
- GIT
- reactquery
- network
- 알고리즘자바스크립트
- html
- python
- css
- 무한스크롤
- 모두를 위한 컴퓨터 과학
- 리액트네이티브
- 백준
- 타입스크립트
- cs50
- 자바스크립트 비동기 처리
- 프로그래머스 자바스크립트
- javascript
- React Query
- 네트워크
- 자바스크립트 클로저
- 자바스크립트알고리즘
- 클로저
- 모두를위한컴퓨터과학
- 실전프로젝트
- 리액트
- 항해99
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |