> For the complete documentation index, see [llms.txt](https://simian114.gitbook.io/blog/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://simian114.gitbook.io/blog/undefined.md).

# 공부

- [HTML, CSS](https://simian114.gitbook.io/blog/undefined/html-css.md)
- [GRID](https://simian114.gitbook.io/blog/undefined/html-css/grid.md)
- [emmet](https://simian114.gitbook.io/blog/undefined/html-css/emmet.md)
- [position](https://simian114.gitbook.io/blog/undefined/html-css/position.md)
- [CSS Unit](https://simian114.gitbook.io/blog/undefined/html-css/css-unit-7.md)
- [단위 정리](https://simian114.gitbook.io/blog/undefined/html-css/css-unit-7/undefined.md)
- [기준을 정해보자](https://simian114.gitbook.io/blog/undefined/html-css/css-unit-7/undefined-2.md)
- [em의 정확한 기준은 뭐야?](https://simian114.gitbook.io/blog/undefined/html-css/css-unit-7/em.md)
- [flex](https://simian114.gitbook.io/blog/undefined/html-css/flex.md)
- [NAVBAR 실습](https://simian114.gitbook.io/blog/undefined/html-css/navbar.md)
- [유튜브 화면 만들어보기](https://simian114.gitbook.io/blog/undefined/html-css/undefined.md)
- [SQL](https://simian114.gitbook.io/blog/undefined/sql.md)
- [이론](https://simian114.gitbook.io/blog/undefined/sql/theory.md)
- [1강 데이터베이스](https://simian114.gitbook.io/blog/undefined/sql/theory/chapter1.md)
- [2강 다양한 데이터 베이스](https://simian114.gitbook.io/blog/undefined/sql/theory/chapter2.md): DBMS에는 여러 종류가 있따 데이터베이스의 사용 용도나 이를 제어하는 프로그래밍 환경 등 각각의 조건에 들어맞는 다양한 DBMS가 고안되었기 때문. DB중에서도 SQL로 데이터를 다루는 DB를 관계형 데이터베이스 라고 한다.
- [3강 데이터베이스 서버](https://simian114.gitbook.io/blog/undefined/sql/theory/chapter3.md): 많은 RDBMS가 클라이언트 - 서버 모델을 채택해 가동중
- [명령어](https://simian114.gitbook.io/blog/undefined/sql/practice.md)
- [DB 관리](https://simian114.gitbook.io/blog/undefined/sql/practice/db.md): DB를 생성하고 삭제하는 명령에 대해 학습합니다.
- [TABLE 관리](https://simian114.gitbook.io/blog/undefined/sql/practice/table.md): 테이블의 생성과 삭제, 열을 관리하는 명령에 대해 학습합니다.
- [Constraints](https://simian114.gitbook.io/blog/undefined/sql/practice/constraints.md): 제약들에 대해 학습합니다.
- [SQL 명령어 - 1](https://simian114.gitbook.io/blog/undefined/sql/practice/untitled-2.md)
- [SQL 명령어 - 2](https://simian114.gitbook.io/blog/undefined/sql/practice/untitled-1.md): JOIN, UNION, GROUP BY, HAVING 에 대해 학습합니다.
- [SQL 명령어 - 3](https://simian114.gitbook.io/blog/undefined/sql/practice/untitled.md): 서브쿼리에 대해 학습합니다.
- [SQL 명령어 - 4](https://simian114.gitbook.io/blog/undefined/sql/practice/sql-4.md): ANY, ALL, SELECT INTO, INSERT INTO SELECT 를 학습합니다.
- [SQL 명령어 - 5](https://simian114.gitbook.io/blog/undefined/sql/practice/sql-5.md): CASE, NULL에 대해 학습합니다.
- [Ruby](https://simian114.gitbook.io/blog/undefined/ruby.md): 루비 언어를 학습합니다.
- [루비 객체와 클래스](https://simian114.gitbook.io/blog/undefined/ruby/undefined.md): '루비를 깨우치다' 책의 5장을읽고 정리했습니다.
- [곡괭이](https://simian114.gitbook.io/blog/undefined/ruby/1.md): 루비 언어를 학습합니다.
- [Chapter2. Ruby.new](https://simian114.gitbook.io/blog/undefined/ruby/1/chapter2.md): 간단히 루비 맛을 본다.
- [Chapter3. 클래스, 객체, 변수](https://simian114.gitbook.io/blog/undefined/ruby/1/chapter3.md)
- [Chapter4. 컨테이너, 블록, 반복자](https://simian114.gitbook.io/blog/undefined/ruby/1/chapter4.md): 참 신기해
- [Chapter5. 기능 공유하기](https://simian114.gitbook.io/blog/undefined/ruby/1/chapter5..md)
- [Chapter6. 표준 타입](https://simian114.gitbook.io/blog/undefined/ruby/1/chapter6..md)
- [Chapter8. 메서드 파헤치기](https://simian114.gitbook.io/blog/undefined/ruby/1/chapter8..md)
- [Python](https://simian114.gitbook.io/blog/undefined/undefined-2.md)
- [유용한 링크](https://simian114.gitbook.io/blog/undefined/undefined-2/untitled.md)
- [RubyOnRails](https://simian114.gitbook.io/blog/undefined/rubyonrails.md): ROB를 학습합니다.
- [아직 정리하지 못한 것들](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-4.md)
- [RSPEC 을 이용한 테스트 완전 자동화](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-4/rspec.md)
- [레일즈 이니셜라이징 과정](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-4/undefined-1.md)
- [액션케이블 구체적으로 정리하기](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-4/undefined.md)
- [웹팩으로 자바스크립트 모듈 관리하기](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-4/untitled.md)
- [ACTIVE JOB](https://simian114.gitbook.io/blog/undefined/rubyonrails/active-job.md)
- [액티브잡의 기본](https://simian114.gitbook.io/blog/undefined/rubyonrails/active-job/undefined.md)
- [실전! 액티브 잡을 이용한 스케쥴링](https://simian114.gitbook.io/blog/undefined/rubyonrails/active-job/undefined-2.md)
- [서버를 껏다 키면 스케쥴링 된 이벤트가 사라진다!](https://simian114.gitbook.io/blog/undefined/rubyonrails/active-job/undefined-1.md)
- [ACTION CABLE](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-6.md)
- [액션케이블 Consumer를 이용해서 문제 해결](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-6/consumer.md)
- [액션케이블 연결 순서](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-6/undefined-4.md)
- [ACTIVE STORAGE](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-2.md)
- [모델](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7.md)
- [validation](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/validation-1.md)
- [seeds 데이터 validation 스킵](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/validation-1/seeds-validation.md)
- [validation 검사가 save, update, create 모든 경우에 일어난다](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/validation-1/validation-save-update-create.md)
- [validator 클래스](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/validation-1/validator.md)
- [커스텀Validation](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/validation-1/validation.md): 너무 오랜만이다...
- [validates format(정규표현식)](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/validation-1/validates-format.md)
- [액티브레코드 find의 다양한 활용](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/find.md)
- [한 레코드에 동시 접속 막자!! with\_lock](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/with_lock.md)
- [레일즈 where 사용법](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/where.md)
- [레일즈에서 모델 관련 이슈](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/undefined-3.md): 컨트롤러는 가볍게 모델은 두껍게
- [모델이름바꿀때명심할것](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/undefined-1.md)
- [모델의 includes 메서드](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/includes.md)
- [연관 모델을 다른 이름으로 설정하고 가져오기](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-7/undefined.md)
- [기본 상식](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3.md)
- [form으로 전달되는 params를 분석해보자](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/form-params.md): 동작하는 순서를 따라가면서 분석함
- [StrongParameter 쿼리 배열 받기](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/strongparameter.md)
- [view helper로 디버깅 하는 방법](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/view-helper.md)
- [css 파일을 수정했는데 적용이 안된다?](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/css.md)
- [StrongParameter 일반데이터와 객체 데이터 한번에 받기](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/strongparameter-1.md)
- [wrap-parameter body가 두 번씩 날라오는 이유](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/wrap-parameter-body.md)
- [컬렉션 map에서 요소 스킵하는법](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/map.md)
- [CASE를 이용해서 정렬(일반적인 정렬 X)](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/case-x.md)
- [문자열(정규표현식)](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/undefined-5.md)
- [TIME ZONE 설정하기](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/time-utc-vs-local.md)
- [커스텀exception](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined-3/exception.md)
- [RSPEC으로 모델 테스트하기](https://simian114.gitbook.io/blog/undefined/rubyonrails/rspec.md)
- [한 눈에 읽는 루비 온 레일즈](https://simian114.gitbook.io/blog/undefined/rubyonrails/undefined.md): 구름에서 제공하는 강의입니다
- [Perfect RubyOnRails](https://simian114.gitbook.io/blog/undefined/rubyonrails/perfect-rubyonrails.md)
- [Chapter1. 소개](https://simian114.gitbook.io/blog/undefined/rubyonrails/perfect-rubyonrails/chapter1..md)
- [Chapter2. RubyOnRails 기본](https://simian114.gitbook.io/blog/undefined/rubyonrails/perfect-rubyonrails/chapter2.-rubyonrails.md): 기본이 중요하다..!
- [Chapter3. 스캐폴딩](https://simian114.gitbook.io/blog/undefined/rubyonrails/perfect-rubyonrails/untitled.md): 스캐폴딩은 한번에 아주 기초적인 CRUD를 만들어줍니다.
- [Chapter7. 라우팅](https://simian114.gitbook.io/blog/undefined/rubyonrails/perfect-rubyonrails/chapter7..md): 라우팅은 요청 URL에 따라 응답 처리 대상(액션)을 결정하는 것 또는 그 구조 자체를 말한다.
- [Chapter8. 테스트](https://simian114.gitbook.io/blog/undefined/rubyonrails/perfect-rubyonrails/chapter8..md): 아주 재밌었다. 앞으로 자주 사용해야겠다.
- [Javascript](https://simian114.gitbook.io/blog/undefined/javascript.md)
- [var, let, const 차이](https://simian114.gitbook.io/blog/undefined/javascript/var-let-const.md)
- [브라우저 동작 원리](https://simian114.gitbook.io/blog/undefined/javascript/undefined-6.md)
- [디바운싱과 쓰로틀링](https://simian114.gitbook.io/blog/undefined/javascript/undefined-1.md): 로대쉬의 DOC 을 보면 매우 쉽게 이해, 사용이 가능하다.
- [Tagged Template Literal(styled-components)](https://simian114.gitbook.io/blog/undefined/javascript/tagged-template-literal-styled-components.md)
- [IntersectionObserver 를 사용해서 스크롤 이벤트의 부하 줄여주기](https://simian114.gitbook.io/blog/undefined/javascript/intersectionobserver.md)
- [EVENT LOOP](https://simian114.gitbook.io/blog/undefined/javascript/event-loop.md)
- [자바스크립트에서 어떻게 비동기적인 실행이 가능한걸까?](https://simian114.gitbook.io/blog/undefined/javascript/event-loop/undefined.md): 브라우저에게 맡긴다.
- [이벤트 루프의 동작](https://simian114.gitbook.io/blog/undefined/javascript/event-loop/undefined-1.md)
- [setTimeout이 실행되면 어떤 동작이 일어날까?](https://simian114.gitbook.io/blog/undefined/javascript/event-loop/settimeout.md)
- [블록은 실행이 보장된다](https://simian114.gitbook.io/blog/undefined/javascript/event-loop/undefined-3.md)
- [콜스택에 있는 블록이 보장된다는 점을 이용해서 브라우저 죽이기](https://simian114.gitbook.io/blog/undefined/javascript/event-loop/undefined-2.md): 콜백메서드는 가볍게 만들자
- [setTimeout 무한반복으로 브라우저는 죽을까?](https://simian114.gitbook.io/blog/undefined/javascript/event-loop/settimeout-1.md): setTimeout의 콜백은 TASK QUEUE에 쌓인다. 결론은 죽지 않는다.
- [Promise 무한반복으로는 브라우저를 죽일 수 있을까?](https://simian114.gitbook.io/blog/undefined/javascript/event-loop/untitled-1.md): Promose로 전달된 call back 은 micro task queue로 전달된다.
- [RAF는 그럼 뭐야?](https://simian114.gitbook.io/blog/undefined/javascript/event-loop/untitled.md): RAF는 Request Animation Frame 의 약자. 렌더링 되기전에 수행되어야 하는 콜백을 지정하는 Web API 다.
- [forEach는 반복도중 멈출 방법이 throw 밖에 없다!](https://simian114.gitbook.io/blog/undefined/javascript/foreach-throw.md)
- [임시](https://simian114.gitbook.io/blog/undefined/javascript/undefined-5.md)
- [정리할 것 목록](https://simian114.gitbook.io/blog/undefined/javascript/undefined-5/undefined-1.md)
- [자바스크립트 기본 문법](https://simian114.gitbook.io/blog/undefined/javascript/undefined-5/undefined-1/undefined.md)
- [이벤트 임시 정리](https://simian114.gitbook.io/blog/undefined/javascript/undefined-5/undefined.md)
- [유용한 링크](https://simian114.gitbook.io/blog/undefined/javascript/undefined-3.md)
- [arrow function 을 이용한 bind 이슈 해결](https://simian114.gitbook.io/blog/undefined/javascript/arrow-function-bind.md)
- [preventDefault - passive](https://simian114.gitbook.io/blog/undefined/javascript/preventdefault-passive.md)
- [CRITICAL-RENDERING-PATH](https://simian114.gitbook.io/blog/undefined/javascript/critical-rendering-path.md): 명심하고 성능에 유의해서 코드를 짜도록하자.
- [setInterval에 클로져 개념 사용하기](https://simian114.gitbook.io/blog/undefined/javascript/setinterval.md)
- [오디오 문제 이슈](https://simian114.gitbook.io/blog/undefined/javascript/undefined-4.md)
- [자바스크립트의 식과 문](https://simian114.gitbook.io/blog/undefined/javascript/undefined-2.md)
- [식과 문이란 무엇인가...](https://simian114.gitbook.io/blog/undefined/javascript/undefined-2/....md)
- [식](https://simian114.gitbook.io/blog/undefined/javascript/undefined-2/undefined-1.md)
- [1. 기본값과 래퍼객체](https://simian114.gitbook.io/blog/undefined/javascript/undefined-2/undefined-1/1..md)
- [2. 참조값과 가비지컬렉팅](https://simian114.gitbook.io/blog/undefined/javascript/undefined-2/undefined-1/2..md)
- [식을 조금 더 자세히 알아보자](https://simian114.gitbook.io/blog/undefined/javascript/undefined-2/undefined.md)
- [prototype, \[\[Prototype\]\] 차이](https://simian114.gitbook.io/blog/undefined/javascript/prototype-prototype.md)
- [export, import 학습](https://simian114.gitbook.io/blog/undefined/javascript/export-import.md)
- [ESlint](https://simian114.gitbook.io/blog/undefined/javascript/eslint.md)
- [아주아주기본](https://simian114.gitbook.io/blog/undefined/javascript/undefined.md)
- [Chatper1. 기본](https://simian114.gitbook.io/blog/undefined/javascript/undefined/chatper1..md)
- [Chapter2. 타입](https://simian114.gitbook.io/blog/undefined/javascript/undefined/chapter2..md)
- [Chapter3. 연산자](https://simian114.gitbook.io/blog/undefined/javascript/undefined/chapter3..md)
- [Chapter4. 제어문](https://simian114.gitbook.io/blog/undefined/javascript/undefined/chapter4..md)
- [Chapter5. 배열](https://simian114.gitbook.io/blog/undefined/javascript/undefined/chapter5..md)
- [Chapter6. 함수](https://simian114.gitbook.io/blog/undefined/javascript/undefined/chapter6..md)
- [Chapter7-1. 객체](https://simian114.gitbook.io/blog/undefined/javascript/undefined/chapter7-1..md)
- [Chapter7-2. 객체](https://simian114.gitbook.io/blog/undefined/javascript/undefined/chapter7-2..md)
- [Chapter8. 표준객체](https://simian114.gitbook.io/blog/undefined/javascript/undefined/chapter8..md)
- [Chapter9. DOM](https://simian114.gitbook.io/blog/undefined/javascript/undefined/chapter9.-dom.md)
- [이벤트 위임](https://simian114.gitbook.io/blog/undefined/javascript/untitled.md)
- [이벤트가 버블링 되서 root 까지 가다보면... 부모의 부모의 ... 모든 click 이벤트를 발동시키는거 아니야?](https://simian114.gitbook.io/blog/undefined/javascript/root-...-...-click.md): 자바스크립트의 세계는 정말...
- [classList](https://simian114.gitbook.io/blog/undefined/javascript/classlist.md)
- [BackboneJS](https://simian114.gitbook.io/blog/undefined/backbonejs.md)
- [Backbone Model 프로토타입에 메서드 구현하기](https://simian114.gitbook.io/blog/undefined/backbonejs/backbone-model.md)
- [BackboneJS의 각 요소의 역할과 책임을 확실히 이해하자](https://simian114.gitbook.io/blog/undefined/backbonejs/backbonejs.md)
- [Window 이벤트를 listenTo로 감시하기](https://simian114.gitbook.io/blog/undefined/backbonejs/window-listento.md)
- [뷰 자신이 자신을 지워야 할 때를 감지하려면 어떻게 해야하는가?](https://simian114.gitbook.io/blog/undefined/backbonejs/undefined.md)
- [백본 VIEW의 remove와 jquery의 remove 는 다르다!](https://simian114.gitbook.io/blog/undefined/backbonejs/view-remove-jquery-remove.md)
- [백본 컬렉션 URL에 쿼리 붙이기](https://simian114.gitbook.io/blog/undefined/backbonejs/url.md)
- [index.html.erb와 BackboneJS의 결합](https://simian114.gitbook.io/blog/undefined/backbonejs/index.html.erb-backbonejs.md)
- [백본 모델과 컬렉션에서 fetch 를 통해 JSON 가져오기!](https://simian114.gitbook.io/blog/undefined/backbonejs/fetch-json.md)
- [모델은 urlRoot, 컬렉션은 url](https://simian114.gitbook.io/blog/undefined/backbonejs/urlroot-url.md)
- [ISSUE](https://simian114.gitbook.io/blog/undefined/backbonejs/issue.md)
- [Absolute Beginner](https://simian114.gitbook.io/blog/undefined/backbonejs/absolute-beginner.md)
- [Part1](https://simian114.gitbook.io/blog/undefined/backbonejs/absolute-beginner/part1.md): Backbone은 프레임워크가 아니라 라이브러리다.
- [Part2](https://simian114.gitbook.io/blog/undefined/backbonejs/absolute-beginner/part2.md): Models, Collection and Views
- [Part3](https://simian114.gitbook.io/blog/undefined/backbonejs/absolute-beginner/part3.md): CRUD!
- [Part4](https://simian114.gitbook.io/blog/undefined/backbonejs/absolute-beginner/part4.md): Router
- [문제풀이](https://simian114.gitbook.io/blog/undefined/undefined-1.md)
- [01. 유효한 팰린드롬(leetcode: 125)](https://simian114.gitbook.io/blog/undefined/undefined-1/01.-leetcode-125.md)
- [02. 문자열 뒤집기(leetcode: 344)](https://simian114.gitbook.io/blog/undefined/undefined-1/02.-leetcode-344.md)
- [03. 로그파일 재정렬(leetcode 937)](https://simian114.gitbook.io/blog/undefined/undefined-1/03.-leetcode-937.md)
- [04. 가장 흔한 단어(leetcode: 819)](https://simian114.gitbook.io/blog/undefined/undefined-1/04.-leetcode-819.md)
- [05. 그룹 애너그램(leetcode: 49)](https://simian114.gitbook.io/blog/undefined/undefined-1/05.-leetcode-49.md)
- [06. 가장 긴 팰린드롬 문자열(leetcode: 5)](https://simian114.gitbook.io/blog/undefined/undefined-1/06.-leetcode-5.md)
- [07. 두 수의 합(leetcode: 1)](https://simian114.gitbook.io/blog/undefined/undefined-1/07.-leetcode-1.md)
- [08. 빗물 트래핑](https://simian114.gitbook.io/blog/undefined/undefined-1/08..md)
- [09. 세 수의 합(leetcode: 15)](https://simian114.gitbook.io/blog/undefined/undefined-1/09.-leetcode-15.md)
- [BlackCoffeeStudy](https://simian114.gitbook.io/blog/undefined/blackcoffeestudy.md)
- [level1](https://simian114.gitbook.io/blog/undefined/blackcoffeestudy/zzz.md)
- [1주차](https://simian114.gitbook.io/blog/undefined/blackcoffeestudy/zzz/1.md)
- [express](https://simian114.gitbook.io/blog/undefined/express.md)
- [Untitled](https://simian114.gitbook.io/blog/undefined/express/untitled.md)
- [구글 애널리틱스 연결하기](https://simian114.gitbook.io/blog/undefined/express/undefined-1.md)
- [passport를 활용한 로그인](https://simian114.gitbook.io/blog/undefined/express/passport.md)
- [express-init 명령어 사용](https://simian114.gitbook.io/blog/undefined/express/express-init.md)
- [ec2와 DBeaver](https://simian114.gitbook.io/blog/undefined/express/ec2-dbeaver.md)
- [mariadb 설치](https://simian114.gitbook.io/blog/undefined/express/mariadb.md)
- [sequelize 설치 및 사용법](https://simian114.gitbook.io/blog/undefined/express/sequelize.md)
- [sequelize 설치](https://simian114.gitbook.io/blog/undefined/express/sequelize/sequelize.md)
- [sequelize-cli 사용법](https://simian114.gitbook.io/blog/undefined/express/sequelize/sequelize-cli.md)
- [모델 간 연관관계 맺기](https://simian114.gitbook.io/blog/undefined/express/sequelize/undefined.md)
- [Hook 사용하기](https://simian114.gitbook.io/blog/undefined/express/sequelize/hook.md)
- [express-ejs-layout 활용하기](https://simian114.gitbook.io/blog/undefined/express/express-ejs-layout.md)
- [Bootstrap](https://simian114.gitbook.io/blog/undefined/express/bootstrap.md)
- [npm install로 설치한 모듈 ejs에서 사용하기](https://simian114.gitbook.io/blog/undefined/express/npm-install-ejs.md)
- [미들웨어](https://simian114.gitbook.io/blog/undefined/express/undefined.md)
- [cypress](https://simian114.gitbook.io/blog/undefined/cypress.md)
- [window.alert 테스트는 어떻게 하지?](https://simian114.gitbook.io/blog/undefined/cypress/window.alert.md)
- [상수를 어디에 저장할건가?](https://simian114.gitbook.io/blog/undefined/cypress/undefined.md)
- [before()와 beforeEach()](https://simian114.gitbook.io/blog/undefined/cypress/before-beforeeach.md): before와 beforeEach
- [aws](https://simian114.gitbook.io/blog/undefined/aws.md)
- [aws로 프로젝트를 배포해보자!](https://simian114.gitbook.io/blog/undefined/aws/aws.md)
- [nginx로 리버스프록시 서버를 만들자](https://simian114.gitbook.io/blog/undefined/aws/nginx.md): 이전시간에 EC2 인스턴스에 필요한 프로그램을 설치하고 실제 프로젝트까지 배포해봤다. 하지만 우리의 프로젝트는 4000번 포트로 배포가 되고 있기 때문에 외부 웹브라우저로 접근하기 위해서는 IP:4000 이라는 아주 불편한 형태로 들어와야만 했다. 물론, 포트를 80으로 바꾸면 되긴하지만, 더 좋은 방법이 없는걸까?
- [github actions 로 푸쉬되면 자동으로 업데이트 하는 기능 만들어보기](https://simian114.gitbook.io/blog/undefined/aws/github-actions.md)
- [react](https://simian114.gitbook.io/blog/undefined/react.md)
- [Drag & Drop 를 이용해서 리스트 요소 순서 바꾸기](https://simian114.gitbook.io/blog/undefined/react/drag-and-drop.md)
- [CRA에서 CRACO 사용하지 않고 절대경로 import(NODE\_PATH)](https://simian114.gitbook.io/blog/undefined/react/cra-craco-import-node_path.md)
- [useEffect내에서 state의 dependency 문제](https://simian114.gitbook.io/blog/undefined/react/useeffect-state-dependency.md)
- [IntersectionObserverAPI로 무한스크롤 구현](https://simian114.gitbook.io/blog/undefined/react/intersectionobserverapi.md)
- [react-testing-library](https://simian114.gitbook.io/blog/undefined/react/react-testing-library.md)
- [기본](https://simian114.gitbook.io/blog/undefined/react/react-testing-library/undefined.md)
- [react-router-dom 에서의 에러](https://simian114.gitbook.io/blog/undefined/react/react-testing-library/react-router-dom.md)
- [event 발생시키기](https://simian114.gitbook.io/blog/undefined/react/react-testing-library/event.md)
- [Integration testing하기](https://simian114.gitbook.io/blog/undefined/react/react-testing-library/integration-testing.md): 별거 없다
- [async하게 렌더링 되는 요소 잡기](https://simian114.gitbook.io/blog/undefined/react/react-testing-library/async.md)
- [Mocking 하기](https://simian114.gitbook.io/blog/undefined/react/react-testing-library/mocking.md)
- [CRA로 만든 앱에서 절대경로로 import 해오기(alias하기)](https://simian114.gitbook.io/blog/undefined/react/cra-import-alias.md)
- [커스텀 훅 만들기](https://simian114.gitbook.io/blog/undefined/react/undefined.md)
- [타입스크립트](https://simian114.gitbook.io/blog/undefined/undefined-3.md)
- [조건부타입 (Conditional types)](https://simian114.gitbook.io/blog/undefined/undefined-3/conditional-types.md): 들어오는 input 에 따라 타입을 결정하는건 아주 중요한 작업이다. 꼭 내껄로 만들자
- [Generics](https://simian114.gitbook.io/blog/undefined/undefined-3/generics.md)
- [Keyof 타입 오퍼레이터](https://simian114.gitbook.io/blog/undefined/undefined-3/keyof.md)
- [Indexed Access Types](https://simian114.gitbook.io/blog/undefined/undefined-3/indexed-access-types.md)
- [타입 챌린지](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined.md)
- [easy](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy.md)
- [00. Awaited](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy/0.-awaited.md)
- [01. Concat](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy/1.-concat.md)
- [02. Exclude](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy/untitled.md)
- [03. First Of Array](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy/03.-first-of-array.md)
- [04. If](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy/04.-if.md)
- [05. Includes](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy/05.-includes.md): 이번 문제는 업데이트되면서 난이도가 상승했다. 업데이트 이전으로 작성한다.
- [06. Pick](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy/06.-pick.md)
- [07. Readonly](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy/07.-readonly.md)
- [08. Length](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy/08.-length.md)
- [09. Tuple to Object](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/easy/09.-tuple-to-object.md)
- [mediun](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/mediun.md)
- [01. Absolute](https://simian114.gitbook.io/blog/undefined/undefined-3/undefined/mediun/01.-absolute.md)
- [Firebase](https://simian114.gitbook.io/blog/undefined/firebase.md)
- [파이어스토어 규칙](https://simian114.gitbook.io/blog/undefined/firebase/undefined.md)
- [기타](https://simian114.gitbook.io/blog/undefined/undefined.md)
- [협업 프로세스](https://simian114.gitbook.io/blog/undefined/undefined/undefined-2.md): 협업을 어떻게 진행할지에 대해 정리한다.
- [UUID](https://simian114.gitbook.io/blog/undefined/undefined/uuid.md)
- [구글애널리틱스 설치하기](https://simian114.gitbook.io/blog/undefined/undefined/undefined-1.md)
- [드림코딩 강의](https://simian114.gitbook.io/blog/undefined/undefined/undefined.md)
- [포트폴리오](https://simian114.gitbook.io/blog/undefined/undefined/undefined/undefined-1.md)
- [CSS](https://simian114.gitbook.io/blog/undefined/undefined/undefined/undefined-1/css-1.md)
- [nth-child](https://simian114.gitbook.io/blog/undefined/undefined/undefined/undefined-1/css-1/nth-child.md)
- [CSS 팁](https://simian114.gitbook.io/blog/undefined/undefined/undefined/undefined-1/css-1/css.md)
- [자바스크립트](https://simian114.gitbook.io/blog/undefined/undefined/undefined/undefined-1/undefined.md)
- [1. 스크롤에 따른 navbar 의 색 변경하기](https://simian114.gitbook.io/blog/undefined/undefined/undefined/undefined-1/undefined/1.-navbar.md)
- [2. navbar 버튼을 누르면 해당 페이지로 스크롤링 되게 만들자](https://simian114.gitbook.io/blog/undefined/undefined/undefined/undefined-1/undefined/untitled.md)
- [3. 스크롤 다운 하면 arrow-up 버튼 나오게 하기](https://simian114.gitbook.io/blog/undefined/undefined/undefined/undefined-1/undefined/arrow-up.md)
- [4. project 필터링 구현](https://simian114.gitbook.io/blog/undefined/undefined/undefined/undefined-1/undefined/4.-project.md)
- [5. project 필터링에 transition 효과 넣기](https://simian114.gitbook.io/blog/undefined/undefined/undefined/undefined-1/undefined/5.-project-transition.md)
- [GIT](https://simian114.gitbook.io/blog/undefined/undefined/git.md)
- [기본 사용법 정리](https://simian114.gitbook.io/blog/undefined/undefined/git/undefined.md)
- [git remote update - remote 브랜치 가져오기](https://simian114.gitbook.io/blog/undefined/undefined/git/git-remote-update-remote.md)
