새 프로젝트를 시작할 때 프레임워크 및 기술 스택 정하는 방법

새 프로젝트를 시작할 때 프레임워크 및 기술 스택 정하는 방법
Cozy CodingPosted On Sep 10, 202431 min read

프로그래밍 언어, JavaScript 프레임워크, 패키지 관리자 및 웹 및 모바일 개발을 위한 지원 도구에 대한 심층적인 개요

제가 추천 멤버로 지원해 주시면 너무나 기쁠 것 같아요. 그러나 이 플랫폼에서의 기여로 받은 수입이 제가 희망했던 업데이트 빈도를 유지하기에 충분하지 못했습니다. 이 현실을 직시하며, 저는 새로운 수입 수단을 탐색하기로 어려운 결정을 내렸습니다. 그러나 이것이 끝이 아니라 새로운 시작임을 알려드립니다. 저는 흥분하며 제가 설립한 투자 시스템에 대해 탐구하고 IT 기술의 엄청난 잠재력을 활용하며 투자 전략에 시스템 사고 방식을 채택하는 제 곧 시작될 Substack 뉴스레터를 발표할 예정입니다. 영감이 치를 때는 여전히 게시할 것이니 안심하세요.

도구, 프레임워크 및 기술

언어

  • JavaScript — ES6 모듈 및 ECMAScript 모듈.
  • Python — 모듈 및 패키지
  • Java — 패키지
  • C# — 네임스페이스 및 어셈블리
  • Ruby — 젬 및 모듈 (젬은 패키지이며, 모듈은 메서드와 상수를 그룹화하는 데 사용됨)
  • PHP — Composer 및 네임스페이스 (Composer는 종속성 관리자이며, 네임스페이스는 클래스의 논리적 그룹화에 사용됨)
  • Swift — 모듈
  • Go — 패키지
  • Rust — 크레이트 및 모듈
  • TypeScript — ES6 모듈
  • Kotlin — 패키지
  • Scala — 패키지 및 임포트
  • Perl — 모듈 및 패키지
  • Haskell — 모듈 (모듈은 관련된 함수 및 타입을 그룹화함)
  • Dart — 패키지 및 라이브러리
  • R — 패키지
  • Julia — 모듈 및 패키지
  • Objective-C — 모듈
  • Lua — 모듈
  • Smalltalk — 패키지
  • Eiffel — 클러스터 및 라이브러리
  • Ada — 패키지
  • F# — 모듈 및 네임스페이스
  • Elixir — 모듈
  • Shell 스크립트 — 라이브러리
  • SML (Standard ML) — 구조체 및 펑터
  • OCaml — 모듈 및 펑터
  • Fortran — 모듈
  • VHDL — 라이브러리
  • MATLAB — 패키지 및 함수 (패키지는 관련 함수와 클래스를 구성함)
  • ActionScript — 패키지
  • COBOL — 프로그램 및 단락
  • SAS — 매크로와 라이브러리 (매크로는 재사용 가능한 코드용이며, 라이브러리는 데이터셋과 컴파일된 코드의 컬렉션임)
  • Prolog — 모듈
  • Tcl — 패키지 및 네임스페이스
  • HCL (HashiCorp Configuration Language) — 모듈
  • Forth — 단어 및 어휘 (Forth는 스택 기반 언어임)
  • Erlang — 모듈
  • APL — 네임스페이스
  • Racket — 모듈
  • Nim — 모듈
  • Haxe — 패키지
  • Lisp — 패키지
  • XSLT — 스타일시트
  • ANTLR — 문법

프론트엔드 프레임워크

JavaScript 프레임워크 및 라이브러리 (웹)

기반 컴포넌트

  • React.js — 사용자 인터페이스를 구축하기 위한 구성 요소 기반 아키텍처.
  • Vue.js — UI 및 싱글 페이지 응용 프로그램을 위한 구성 요소 기반 시스템.
  • Svelte — 빌드 시 최적화된 JavaScript로 컴파일되어 성능이 우수합니다.
  • Preact.js — 비슷한 API를 가진 React의 가벼운 대안.
  • Ember.js — 기본 라우터와 상태 관리가 내장된 설정을 준수하는 프레임워크.
  • Lit.js — 표준을 사용하여 웹 구성 요소를 빌드하기 위한 가벼운 라이브러리.
  • Riot.js — 간단한 API를 가진 구성 요소 기반 프레임워크.
  • Solid.js — UI를 구축하기 위한 세세한 반응성 모델.
  • SvelteKit — SSR 및 SSG 기능이 탑재된 다양한 기능을 제공하는 프레임워크.
  • Qwik — 세세한 지연 로딩과 성능에 주안점을 둔 프레임워크.
  • Remix — SSR 지원이 있는 현대 웹 프레임워크.
  • Next.js — SSR 및 정적 사이트 생성(SSG) 지원이 있는 React 프레임워크.
  • Nuxt.js — SSR 및 SSG 지원이 있는 Vue.js 프레임워크.
  • Inferno — 고성능 React와 유사한 라이브러리.
  • Aurelia — 깔끔하고 모듈식 아키텍처에 중점을 둔 프레임워크.
  • Dojo — 성능 및 모듈성에 중점을 둔 다양한 기능을 갖춘 프레임워크.
  • Quasar — 고성능 웹 및 모바일 애플리케이션을 위한 Vue.js 프레임워크.
  • Stencil — 표준을 준수하는 웹 구성 요소를 생성합니다.
  • Hyperapp — 가상 DOM 및 상태 관리를 사용하는 웹 앱을 위한 작은 프레임워크.
  • Marko — 구성 요소 기반 아키텍처와 SSR을 갖춘 고성능 프레임워크.
  • Cycle.js — 반응형 스트림에 중점을 둔 기능적 및 반응형 프레임워크.

MVVM 및 다른 패턴

  • Knockout.js — 동적 UI를 위한 MVVM 라이브러리.
  • Vuex — MVVM 원칙을 따르는 Vue.js용 상태 관리 라이브러리.
  • AngularJS — MVVM 패턴을 가진 구조형 프레임워크(현재는 일반적으로 덜 사용됨).

함수형 프로그래밍 중심

  • Ramda.js — 함수형 프로그래밍 기법을 사용하는 라이브러리.
  • Lodash — 함수형 프로그래밍 기능을 제공하는 유틸리티 라이브러리.
  • Immutable.js — 불변 데이터 구조를 제공합니다.
  • Mori — ClojureScript에서 영감을 받은 불변 데이터 구조.
  • Folktale — 함수형 프로그래밍을 위한 라이브러리 모음.
  • Sanctuary — 안전한 유틸리티 함수 모음을 제공합니다.

JavaScript Frameworks & Libraries (Mobile)

컴포넌트 기반 프레임워크

  • Svelte Native — Svelte를 사용하여 네이티브 모바일 앱을 개발할 수 있습니다.
  • React Native — React를 사용하여 네이티브 모바일 앱을 개발할 수 있습니다.
  • NativeScript — Angular, Vue.js 또는 순수 JavaScript를 사용하여 네이티브 모바일 앱을 개발할 수 있습니다.
  • Weex — Vue.js를 사용하여 네이티브 앱을 개발할 수 있습니다.
  • Flutter (Dart) — 네이티브 앱을 개발하기 위한 컴포넌트 기반 아키텍처를 사용합니다.
  • Expo — React Native의 도구 모음으로 모바일 개발을 간소화합니다.

스타일링 라이브러리

CSS-in-JS 라이브러리

  • Glamor — 성능에 중점을 둔 CSS-in-JS 라이브러리.
  • Styled Components — 리액트를 위한 스코프 지정 및 동적 스타일링.
  • Emotion — Styled Components와 유사하나 더 많은 유연성을 제공하는 라이브러리.
  • JSS — 성능 및 동적 스타일링에 초점을 맞춘 라이브러리.
  • Radium — 인라인 스타일을 위한 고차 컴포넌트.
  • Aphrodite — 성능에 중점을 둔 CSS-in-JS 라이브러리.
  • Linaria — Zero-runtime CSS-in-JS 라이브러리.
  • Stitches — 디자인 시스템에 중점을 둔 CSS-in-JS 라이브러리.
  • Vanilla Extract — Zero-runtime CSS-in-JS 라이브러리.
  • Astroturf — 빌드 시간에 스타일을 별도의 CSS 파일로 추출.
  • Styletron — 성능에 중점을 둔 원자적 CSS-in-JS 라이브러리.
  • Typestyle — TypeScript 지원이 있는 잘 타입드된 CSS-in-JS 라이브러리.
  • CXS — 자바스크립트에서 스타일을 정의하는 함수적 접근 방식.
  • Fela — 동적 스타일링이 가능한 선언적 CSS-in-JS 라이브러리.

유틸리티-퍼스트 CSS 프레임워크

  • Tailwind CSS — 유틸리티 우선 CSS 프레임워크.
  • Twind — 유틸리티 우선 CSS-in-JS 라이브러리.
  • Windi CSS — 필요에 따른 CSS 생성이 가능한 유틸리티 우선 CSS 프레임워크.
  • UnoCSS — 사용자 정의 가능한 유틸리티 우선 CSS 엔진.

전처리기

  • Sass — CSS에 변수와 믹스인을 추가합니다.
  • Less — 변수와 믹스인을 갖춘 CSS 전처리기.
  • Stylus — 동적 CSS 전처리기.

다른 CSS 프레임워크

  • 부트스트랩 — 인기 있는 반응형 CSS 프레임워크.
  • Foundation — 반응형 프론트엔드 프레임워크.
  • Bulma — 플렉스박스 기반의 CSS 프레임워크.
  • Materialize — 머터리얼 디자인 기반의 프레임워크.
  • UIkit — 모듈화된 프론트엔드 프레임워크.
  • Semantic UI — 자연어 원칙에 기반한 UI 프레임워크.
  • PostCSS — JavaScript 플러그인을 이용하여 CSS를 변환합니다.
  • CSS 그리드 레이아웃 — 네이티브 CSS 그리드 레이아웃 시스템.
  • CSS Flexbox — 네이티브 CSS 레이아웃 모듈.
  • Gridlex — 경량 CSS 그리드 프레임워크.
  • Basscss — 기능적이고 저수준의 CSS 툴킷.

미니멀리즈트 & 경량 프레임워크 (웹)

  • Backbone.js — 모델과 이벤트를 이용한 최소한의 구조 제공.
  • Mithril.js — 싱글 페이지 응용프로그램용 경량 프레임워크.
  • Hyperapp — 미니멀리즈트하고 함수형 프로그래밍 접근.
  • Choo — 간결함에 초점을 맞춘 작은 JavaScript 프레임워크.
  • Marko — 빠르고 가벼운 프레임워크.
  • Flight — Twitter의 경량 컴포넌트 기반 프레임워크.
  • Polymer — HTML, CSS 및 JavaScript를 이용하여 사용자 정의 요소 생성.
  • Surplus — 빠른 JSX 기반 UI 라이브러리.
  • Nano JSX — React에서 영감을 받은 경량 라이브러리.
  • Alpine.js — 간단한 상호 작용을 위한 선언적 행동.
  • T7.js — React에서 영감을 받은 경량 템플릿 라이브러리.
  • uhtml — 동적인, 컴포넌트 기반의 웹 응용프로그램을 위한 작은 라이브러리.

모바일

  • Vonic — Vue를 기반으로 한 가벼운 프레임워크
  • Framework7 — 모바일 우선 접근 방식을 가진 가벼운 프레임워크
  • Tabris.js — 크로스 플랫폼 네이티브 앱을 위한 미니멀한 프레임워크

CSS 프레임워크 및 라이브러리 (웹)

디자인 시스템 및 컴포넌트 라이브러리

  • Ant Design — React 컴포넌트로 구성된 디자인 시스템
  • Chakra UI — 접근성 있는 React 컴포넌트 라이브러리
  • Blueprint — React에서 복잡한 UI를 위한 툴킷
  • Vaadin — UI 컴포넌트를 갖춘 엔터프라이즈급 프레임워크
  • Evergreen — 현대적인 웹 앱을 위한 React UI 프레임워크
  • Element — Vue.js를 위한 UI 툴킷
  • Grommet — 접근성과 반응형 디자인에 중점을 둔 React 기반 프레임워크

하이브리드 (웹 및 모바일)

  • Onsen UI — Angular, React 및 Vue.js로 하이브리드 모바일 앱 빌드.
  • Ionic — UI 구성 요소 및 테마로 하이브리드 모바일 앱 제작.

디자인 시스템

  • Material Design Lite (MDL) — 구글의 Material Design 구현.
  • Material-UI — Material Design을 기반으로 한 React UI 프레임워크.
  • Neumorphism UI — 누머피즘 디자인 트렌드를 구현하도록 설계됨.
  • Atlassian Design System — Atlassian 제품에서 사용하는 디자인 가이드라인 및 구성 요소.

웹 빌더 도구

  • GrapesJS — 오픈 소스 웹 빌더 프레임워크.
  • Webflow — 반응형 웹사이트를 위한 시각적 웹 디자인 도구.
  • Tilda — 반응형 웹사이트를 만들기 위한 드래그 앤 드롭 인터페이스.
  • Editor X — 유연성을 갖춘 고급 웹 디자인 도구.
  • Figma — 개발 워크플로와 잘 통합되는 디자인 도구.

풀 스택 플랫폼 (JavaScript 기반)

  • Meteor.js — 웹 및 모바일 앱을 위한 풀 스택 플랫폼.
  • Feathers — 실시간 애플리케이션을 위한 경량 프레임워크.
  • LoopBack — API를 구축하기 위한 프레임워크.
  • NestJS — TypeScript로 서버 측 애플리케이션을 위한 프레임워크.
  • Sapper — Svelte로 만든 범용 웹 앱을 위한 프레임워크.
  • Sails.js — Node.js를 위한 MVC 프레임워크.
  • Blitz.js — Next.js를 기반으로 한 풀 스택 React 프레임워크.

자바스크립트를 사용하지 않는 프런트엔드 기술들

웹 컴포넌트(브라우저 네이티브 API)

  • Shadow DOM — 구성 및 스타일의 캡슐화
  • Custom Elements — 새로운 HTML 요소 정의
  • HTML 템플릿 — HTML 조각 정의

기타 언어

  • TypeScript — 정적 타이핑이 있는 JavaScript의 상위 집합.
  • Dart — 웹 및 모바일 앱을 구축하기 위해 Flutter와 함께 사용됨.

점진적 웹 앱 (PWAs)

  • Workbox — 캐싱과 같은 기능을 제공하는 PWAs를 구축하기 위한 라이브러리.
  • Lighthouse — PWAs의 성능, 접근성, SEO를 감사합니다.
  • PWA Builder — 웹사이트를 PWAs로 변환합니다.

빌드 도구 (번들러 및 작업 실행기)

프론트엔드

  • Webpack — 포괄적인 구성을 갖춘 모듈 번들러.
  • Gulp — 자동화를 위한 작업 실행기.
  • Grunt — JavaScript 작업 실행기.
  • Babel — 다음 세대 JavaScript 기능을 사용하기 위한 컴파일러.
  • Rollup — 라이브러리 및 소규모 프로젝트용 최적화된 번들러.
  • Snowpack — 번들되지 않은 개발.
  • Esbuild — 빠른 번들러 및 축소화 도구.
  • Parcel — 구성 필요 없는 번들러.
  • Astro — 컴포넌트 지원을 갖춘 정적 사이트 생성기.
  • Vite — 빠른 프론트엔드 빌드 도구.
  • Turborepo — Monorepo 관리.
  • NPM — Node.js 패키지 관리자로서 작업 실행기로도 사용됨.
  • Yarn — 빠른 종속성 설치를 제공하는 패키지 관리자.
  • Browserify — 브라우저 JavaScript를 위한 번들링 도구.

백엔드 프레임워크

JavaScript 및 TypeScript (웹 및 모바일)

  • Express.js — 웹 애플리케이션을 위한 간결하고 유연한 Node.js 프레임워크입니다.
  • Koa.js — 표현력이 풍부하고 강력한 기반을 위한 혁신적인 Node.js 프레임워크입니다.
  • Hapi.js — 강력한 플러그인 지원을 통해 응용프로그램 및 서비스를 구축하는 데 사용되는 풍부한 프레임워크입니다.
  • AdonisJS — 단순함과 속도에 초점을 맞춘 MVC 프레임워크입니다.
  • Sapper — Svelte를 사용하는 웹 앱을 위한 프레임워크로, SvelteKit으로 이어집니다.
  • NestJS — TypeScript 지원을 통해 확장 가능한 서버 측 애플리케이션을 위한 혁신적인 프레임워크입니다.
  • Feathers.js — 실시간 애플리케이션 및 REST API를 위한 가벼운 프레임워크입니다.
  • Sails.js — 데이터 주도 API를 구축하기 위한 MVC 프레임워크입니다.
  • Derby.js — 실시간 협업 기능이 있는 풀 스택 프레임워크입니다.
  • LoopBack — 데이터 소스 및 커넥터에 중점을 둔 API를 구축하기 위한 프레임워크입니다.
  • Python

  • Django — ORM, 인증 및 기타 기능이 포함된 고수준 프레임워크.

  • Flask — 가벼우며 유연한 프레임워크.

  • FastAPI — 현대적이고 고성능의 API 프레임워크.

  • Pyramid — 다양한 애플리케이션 크기에 유연하게 사용할 수 있는 프레임워크.

  • Falcon — 가벼우며 고성능의 API 프레임워크.

  1. Ruby
  • Ruby on Rails — 설정보다 규약을 우선시하는 프레임워크.
  • Sinatra — 소규모 응용 프로그램을 위한 미니멀한 프레임워크.
  • Hanami — 모듈식 루비 프레임워크.
  • Padrino — Sinatra 기반으로 구축되며 추가 기능을 제공하는 프레임워크.
  • Cuba — 단순성과 성능에 초점을 맞춘 마이크로 프레임워크.
  • Grape — 루비용 API 전용 프레임워크.
  • Rails API — 루비 온 레일즈의 API에 초점을 맞춘 하위 집합.
  1. PHP
  • Laravel — 인기 있는 기능이 풍부한 PHP 프레임워크.
  • Symfony — 고성능 PHP 프레임워크.
  • CodeIgniter — 가벼운 PHP 프레임워크.
  • Zend Framework/Laminas — 기업용 PHP 프레임워크.
  • Yii — 고성능 PHP 프레임워크.
  • CakePHP — 빠른 개발을 위한 프레임워크.
  • FuelPHP — 유연하고 모듈식 PHP 프레임워크.
  • Slim — 간단한 API용 미니멀한 프레임워크.
  • Phalcon — C 확장으로 높은 성능을 제공하는 PHP 프레임워크.
  • Silex — Symfony 컴포넌트를 기반으로 한 미니멀한 프레임워크 (더 이상 유지되지 않음).
  1. Java
  • Spring Boot — 모듈화된 구성 요소로 개발을 간소화하는 Java 프레임워크.
  • JavaServer Faces (JSF) — 컴포넌트 기반 UI 프레임워크.
  • Grails — Groovy 기반 웹 프레임워크.
  • Vert.x — 반응형 애플리케이션을 위한 툴킷.
  • Dropwizard — RESTful 웹 서비스에 초점을 맞춘 프레임워크.
  • Quarkus — GraalVM용으로 최적화된 Kubernetes 네이티브 Java 프레임워크.
  • Micronaut — 모듈식 마이크로서비스를 위한 현대적인 프레임워크.
  • Javalin — Express.js에서 영감을 받은 가벼운 웹 프레임워크.
  1. C# (.NET)
  • ASP.NET Core — 현대 애플리케이션을 위한 크로스 플랫폼 프레임워크.
  • Blazor — C#을 사용한 대화형 UI 프레임워크.
  • ASP.NET Web API — RESTful 웹 서비스를 위한 프레임워크.
  • Nancy — 경량 웹 프레임워크.
  • Ocelot — .NET Core용 API 게이트웨이.
  • Orchard Core — 모듈식 및 확장 가능한 CMS.
  • ServiceStack — API 및 웹 서비스를 위한 고성능 프레임워크.
  1. Go (Golang)
  • Gin — 고성능 웹 프레임워크.
  • Echo — 확장 가능하고 미니멀한 프레임워크.
  • Revel — 전체 기능을 갖춘 웹 프레임워크.
  • Buffalo — 신속한 개발을 위한 Go 프레임워크.
  • Beego — ORM 및 내장 모듈을 갖춘 MVC 프레임워크.
  • Fiber — 고성능 미니멀한 프레임워크.
  • Chi — 경량이면서 직관적인 라우터 및 미들웨어.
  • Gorilla — 라우팅과 세션을 위한 구성 요소를 갖춘 Web 툴킷.
  • Mango — 미들웨어 및 라우팅이 내장된 모듈식 프레임워크.
  • Kataras — 웹 어플리케이션을 위한 유틸리티 프레임워크.
  1. Rust
  • Rocket — 빠르고 안전한 웹 프레임워크.
  • Actix — Actor 기반 동시성을 갖춘 강력한 프레임워크.
  • Warp — hyper HTTP 라이브러리를 기반으로한 가벼운 프레임워크.
  • Tide — 간결함에 중점을 둔 비동기 프레임워크.
  • Gotham — 안전성과 동시성을 강조하는 프레임워크.
  • Axum — 웹 애플리케이션을 위한 견고하고 확장 가능한 기반.
  • Salvage — 웹 애플리케이션을 위한 가벼운 간단한 프레임워크.
  1. Swift
  • Vapor — API 및 웹 애플리케이션을 위한 웹 프레임워크.
  • Kitura — IBM에서 개발한 포괄적인 도구를 갖춘 웹 프레임워크.
  • Perfect — Swift를 위한 웹 서버 및 도구 모음.
  • Hummingbird — 가벼우면서 성능이 우수한 웹 프레임워크.
  • SwiftNIO — 고성능 애플리케이션을 위한 저수준 네트워킹 라이브러리.
  1. Elixir
  • Phoenix — 고성능 및 확장 가능한 웹 프레임워크.
  • Nerves — 임베디드 소프트웨어를 구축하기 위한 프레임워크.
  • Ecto — 데이터베이스 래퍼 및 쿼리 생성기.
  • Absinthe — Phoenix와 통합이 용이한 GraphQL 구현.
  • Broadway — 동시 데이터 처리 파이프라인을 위한 프레임워크.
  • Distillery — 배포 및 릴리스 관리를 위한 도구.
  • Mix — Elixir용 빌드 도구 및 작업 실행기.
  1. Scala
  • Play Framework — 고성능 애플리케이션을 위한 풀스택 프레임워크.
  • Akka — 병행성 및 분산 시스템을 위한 툴킷.
  • http4s — HTTP 서비스용 함수형 라이브러리.
  • Finagle — 비동기 RPC 서버 및 클라이언트를 위한 라이브러리.
  • Lagom — 마이크로서비스 구축을 위한 프레임워크.
  • Slick — 함수형 관계 매핑 라이브러리.
  • Scalatra — Sinatra를 영감으로 한 가벼운 웹 프레임워크.
  • Stencil — 고성능 웹 프레임워크.
  1. Haskell Frameworks
  • Yesod — 웹 애플리케이션의 유형 안전성과 고성능을 강조합니다.
  • Snap — Haskell 웹 개발을 위한 속도와 확장성에 중점을 둡니다.
  • Servant — RESTful API를 정의하고 구현하는 안전한 방법을 제공하며 부가 코드를 최소화합니다.
  • Spock — Haskell을 위한 가볍고 유연한 프레임워크로 Sinatra에서 영감을 받았습니다.
  • Scotty — Sinatra에서 영감을 받은 미니멀한 프레임워크로 소규모에서 중규모의 웹 앱에 적합합니다.
  • Happstack — HTTP 지원, 템플릿 및 상태 관리를 포함한 웹 개발에 대한 포괄적인 도구를 제공합니다.
  1. Clojure Frameworks
  • Luminus — Clojure로 애플리케이션을 구축하기 위한 웹 프레임워크입니다.
  • Compojure — 경로 및 핸들러 정의를 단순화하는 라우팅 라이브러리입니다.
  • Ring — HTTP 요청 및 응답을 처리하는 많은 Clojure 프레임워크의 핵심 구성 요소입니다.
  • Liberator — RESTful 서비스를 구축하기 위한 선언적 접근 방식을 제공합니다.
  • Bidi — 양방향 라우팅과 URL 처리에 중점을 둡니다.
  • Hiccup — Clojure 웹 애플리케이션에서 HTML을 생성하는 데 사용됩니다.
  1. Kotlin Frameworks
  • Ktor — Kotlin으로 웹 애플리케이션을 구축하기 위한 프레임워크입니다.
  • Spring Boot (Kotlin support) — Kotlin의 간결한 구문과 Spring Boot의 생태계를 활용합니다.
  • Vert.x (Kotlin support) — Kotlin 지원을 통해 고성능 애플리케이션을 위한 반응형 툴킷입니다.
  • Exposed — 데이터베이스를 위한 안전한 타입 API를 제공하는 Kotlin ORM 프레임워크입니다.
  • Arrow — Kotlin을 위한 함수형 프로그래밍 도구를 제공합니다.
  • Kotlinx.coroutines — 코루틴을 사용하여 비동기 프로그래밍을 지원합니다.
  1. Racket
  • Racket 웹 서버 — 라우팅, HTML 템플릿, 세션 관리, 데이터베이스 통합 및 동시성 지원을 위한 웹 애플리케이션을 제공합니다.

자바스크립트 테스트 프레임워크

  • Mocha.js — 기능이 풍부한 테스트 프레임워크.
  • Jest — 간단한 인터페이스로 어서티케이션 및 모의 객체를 제공합니다.
  • Cypress — 웹 앱을 위한 엔드 투 엔드 테스트 프레임워크.
  • Puppeteer — 고수준 API를 사용하여 크롬 또는 크로미움을 제어합니다.
  • Ava — 비동기 코드를 위한 최소주의 테스트 러너입니다.
  • Jasmine — 가독성이 높은 구문을 가지는 행위 주도 프레임워크입니다.
  • Karma — 다양한 프레임워크를 위한 테스트 러너로, 여러 브라우저에서 결과를 제공합니다.
  • Enzyme — 리액트 컴포넌트를 위한 테스트 유틸리티입니다.
  • React Testing Library — 사용자 상호작용에 기반한 리액트 컴포넌트를 테스트합니다.
  • QUnit — 사용 편의성과 뛰어난 성능에 중점을 둡니다.
  • TestCafe — 엔드 투 엔드 테스트를 위해 현대적인 자바스크립트와 타입스크립트를 지원합니다.

자바스크립트 디버깅 도구

  • Debugger.js — 자바스크립트 디버깅을 위한 도구입니다.
  • Redux DevTools — Redux 상태 관리를 디버깅합니다.
  • Chrome DevTools — 디버깅 및 프로파일링을 위한 내장 브라우저 도구입니다.
  • VS Code Debugger — Visual Studio Code에서 통합된 디버깅 지원을 제공합니다.
  • Node.js Inspector — 크롬 DevTools 또는 VS Code와 함께 사용할 수 있는 Node.js 디버깅 도구입니다.
  • WebStorm Debugger — JetBrains WebStorm에 통합된 고급 디버깅 도구입니다.
  • Firebug — 더 이상 사용되지 않는 도구로, 기능은 이제 파이어폭스 개발자 도구로 통합되었습니다.
  • React Developer Tools — 리액트 컴포넌트를 검사하고 디버깅하기 위한 브라우저 확장 프로그램입니다.

서버 측 기술

웹 서버

  • Apache HTTP Server — 널리 사용되고 다재다능한 웹 서버.
  • Nginx — 고성능 웹 서버 및 리버스 프록시.
  • LiteSpeed — 속도와 보안으로 유명한 고성능 서버.
  • Caddy — 자동 HTTPS 및 간편한 구성을 갖춘 현대적인 웹 서버.
  • Cherokee — 속도와 간결함에 초점을 맞춘 고성능 서버.
  • Node.js — Express.js와 같은 프레임워크를 사용하여 경량 서버로 사용할 수 있음.
  • Tomcat — Java Servlet, JSP 및 Java Expression Language 사양을 구현함.
  • OpenResty — 웹 애플리케이션 개발용 모듈을 갖춘 Nginx 기반 플랫폼.

데이터베이스 관리 시스템

관계형 데이터베이스

  • MySQL — 인기 많고 널리 사용되는 오픈 소스 관계형 데이터베이스.
  • PostgreSQL — 기능과 확장성으로 유명한 고급 오픈 소스 관계형 데이터베이스.
  • SQLite — 내장용으로 이상적인 경량 서버리스 SQL 데이터베이스 엔진.
  • MariaDB — MySQL의 포크로, 추가 기능과 향상된 호환성을 갖춘 데이터베이스.
  • Oracle Database — 강력하고 확장 가능하며 기업 환경에서 널리 사용됨.
  • Microsoft SQL Server — Microsoft 제품과 잘 통합되며 복잡한 쿼리 및 분석을 지원함.
  • IBM Db2 — 확장성과 다양한 데이터 유형 지원으로 유명한 엔터프라이즈급 RDBMS.
  • CockroachDB — 강력한 일관성과 높은 가용성을 제공하는 분산 SQL 데이터베이스.

NoSQL 데이터베이스

  • MongoDB — 유연하고 확장 가능한 문서 기반 데이터베이스.
  • CouchDB — 사용 편의성과 복제에 중점을 둔 데이터베이스.
  • Cassandra — 대량의 데이터 처리와 높은 가용성을 처리하는 분산 데이터베이스.
  • Redis — 성능과 다양한 데이터 구조 지원으로 유명한 메모리 기반 키-값 저장소.
  • DynamoDB — 고성능 및 확장성을 위해 설계된 Amazon의 관리형 NoSQL 서비스.
  • RavenDB — 풀텍스트 검색 및 고급 쿼리와 같은 기능을 갖춘 문서 기반 데이터베이스.
  • ElasticSearch — Lucene 기반으로 구축된 풀텍스트 검색 및 분석을 위한 분산 검색 엔진.

NewSQL 데이터베이스

  • Google Spanner — NoSQL 확장성과 SQL 일관성을 결합한 데이터베이스입니다.
  • CockroachDB — 강력한 일관성과 높은 가용성을 제공하는 NewSQL 데이터베이스입니다.

캐싱 기술

  • Redis — 고성능 캐싱을 위한 인메모리 저장소입니다.
  • Memcached — 분산 메모리 객체 캐싱 시스템입니다.
  • Varnish — 웹 애플리케이션을 위한 HTTP 가속기입니다.
  • Hazelcast — 분산 캐싱과 계산을 제공하는 인메모리 데이터 그리드입니다.
  • Ehcache — 인메모리와 영속적 저장을 지원하는 Java 기반 캐싱 솔루션입니다.
  • Apache Ignite — 분산 캐싱 및 계산 기능을 갖춘 인메모리 컴퓨팅 플랫폼입니다.
  • Couchbase — 고성능 액세스를 위한 통합 캐싱 기능이 있는 NoSQL 데이터베이스입니다.
  • Infinispan — 분산 인메모리 키-값 저장소 및 캐시입니다.

에지 캐싱

  • Cloudflare CDN — 에지 캐싱, DDoS 방어 및 성능 최적화를 제공합니다.
  • Akamai — 에지 캐싱 및 웹 성능 향상이 제공되는 글로벌 CDN.

메시지 브로커 및 스트리밍

  • RabbitMQ — 다양한 프로토콜을 지원하는 널리 사용되는 메시지 브로커입니다.
  • Apache Kafka — 고 처리량 및 분산 데이터에 맞게 설계된 이벤트 스트리밍 플랫폼입니다.
  • ActiveMQ — 다양한 메시징 프로토콜을 지원하는 오픈 소스 메시지 브로커입니다.
  • Apache Pulsar — 멀티 테넌시와 지리적 복제를 갖춘 분산 메시징 및 스트리밍 플랫폼입니다.
  • NATS — 클라우드 네이티브 애플리케이션을 위한 경량이면서 고성능 메시징 시스템입니다.
  • ZeroMQ — 다양한 패턴을 위한 고성능 비동기 메시징 라이브러리입니다.

스트리밍 기술

  • Apache Flink — 고성능 및 정확한 데이터 스트리밍을 위한 스트림 처리 프레임워크.
  • Apache Storm — 대량 데이터 스트림 처리를 위한 실시간 계산 시스템.
  • Google Cloud Pub/Sub — 응용 프로그램 간 메시지 교환을 위한 메시징 서비스.
  • Amazon Kinesis — 데이터 스트림, Firehose 및 분석을 비롯한 실시간 데이터 처리를 위한 서비스 모음.
  • Redis Streams — 실시간 데이터 스트림을 관리하기 위한 Redis 데이터 구조.

자바스크립트 상태 관리 라이브러리

  • Vuex — Vue.js 애플리케이션의 상태 관리.
  • Redux — JavaScript 앱을 위한 예측 가능한 상태 컨테이너.
  • XState — 상태 및 상태 차트 관리를 위한 라이브러리.
  • Recoil — 유연성과 성능에 중점을 둔 React 상태 관리 라이브러리.
  • MobX — 단순성과 반응성에 중점을 둔 상태 관리 라이브러리.
  • Zustand — React를 위한 가벼운 상태 관리.
  • Akita — RxJS 기반의 Angular를 위한 상태 관리 패턴.
  • Effector — JavaScript 및 TypeScript 애플리케이션을 위한 반응적 상태 관리 라이브러리.
  • Rematch — Redux 기반의 간소화된 상태 관리 라이브러리.
  • Immer — 변이 없이 새로운 상태를 생성하여 불변 상태 작업을 더 편리하게 할 수 있도록 함.
  • Hookstate — 단순성과 성능을 강조하는 React를 위한 현대적인 상태 관리.
  • UState — 훅을 사용하는 React를 위한 작은 상태 관리 라이브러리.
  • NuclearJS — 단방향 데이터 흐름에 중점을 둔 상태 관리 라이브러리.

헤드리스 CMS

  • Contentful — 현대 애플리케이션을 위한 콘텐츠 관리에 초점을 맞춘 유연한 API 및 사용자 인터페이스를 제공합니다.
  • Prismic — 사용자 정의 콘텐트 모델 및 워크플로를 갖춘 유연한 콘텐츠 관리 인터페이스를 제공합니다.
  • Strapi — 사용자 친화적인 관리자 패널과 사용자 정의 API를 갖춘 오픈 소스 헤드리스 CMS입니다.
  • Sanity.io — 구조화된 콘텐츠 관리 및 사용자 정의 옵션을 제공하는 실시간 헤드리스 CMS입니다.
  • Directus — 콘텐츠 및 데이터 관리에 적합한 사용자 정의 API와 직관적인 관리자 인터페이스를 갖춘 오픈 소스 CMS입니다.
  • Ghost — 간편성과 성능을 강조한 출판 및 콘텐츠 관리에 최적화된 CMS입니다.
  • ButterCMS — 다양한 애플리케이션 통합을 위해 설계된 API 접근이 가능한 사용자 친화적 인터페이스를 제공합니다.
  • Kentico Kontent — 강력한 콘텐츠 관리 및 통합 기능을 갖춘 클라우드 기반 헤드리스 CMS입니다.
  • GraphCMS — GraphQL을 활용하여 콘텐츠를 쿼리하는 현대 애플리케이션을 지원하는 CMS로, 강력한 개발자 지원이 제공됩니다.
  • Contentstack — 로컬라이제이션, 콘텐트 모델링 및 플랫폼 통합 기능을 갖춘 콘텐츠 관리를 위한 강력한 API를 제공합니다.
  • Agility CMS — 다중 채널을 통해 콘텐츠를 관리하기 위한 엔터프라이즈급 기능을 제공하는 클라우드 기반 CMS입니다.
  • Dotcms — 확장성 및 유연성에 초점을 맞춘 오픈 소스 CMS입니다.

빌드 도구 (백엔드)

  • Maven — Java 프로젝트를 위한 빌드 자동화 및 의존성 관리 도구입니다.
  • Gradle — 다양한 언어를 지원하는 다재다능한 빌드 자동화 도구입니다.
  • SBT — 스칼라 프로젝트를 위한 특별한 빌드 도구입니다.
  • Make — 주로 C/C++ 프로젝트에서 사용되는 빌드 도구입니다.
  • Ant — 유연성으로 알려진 Java 기반 빌드 도구로, Maven과 Gradle에 거의 대체되었습니다.
  • NPM/Yarn — JavaScript 패키지 관리자로, 스크립트를 통해 빌드 작업을 처리합니다.
  • Rake — 자동화 작업을 위한 루비 기반 빌드 도구입니다.
  • CMake — C/C++ 프로젝트를 위한 크로스 플랫폼 빌드 시스템 생성기입니다.
  • Bazel — 대규모 코드베이스를 위해 속도와 정확성에 중점을 둔 빌드 도구입니다.
  • Buck — 페이스북이 개발한 빠르고 확장 가능한 빌드 도구입니다.
  • Gradle Kotlin DSL — 개선된 IDE 지원을 제공하는 Gradle 빌드 스크립트를 위한 코틀린 기반 확장입니다.
  • Meson — C/C++ 프로젝트와 함께 자주 사용되는 속도와 사용 편의성에 중점을 둔 현대적인 빌드 시스템입니다.
  • Scons — 유연한 빌드 환경을 제공하는 파이썬 기반 빌드 도구입니다.
  • Ninja — 속도에 중점을 둔 작은 빌드 시스템으로, 낮은 수준의 빌드 도구로 자주 사용됩니다.

버전 컨트롤 시스템 (VCS)

  • Git — 브랜치, 머지, 분산 개발을 지원하는 널리 사용되는 버전 컨트롤 시스템.
  • Subversion (SVN) — 기본적인 브랜치와 머지 기능으로 알려진 중앙 집중식 버전 컨트롤 시스템.
  • Mercurial — Git과 유사한 분산 버전 컨트롤 시스템으로, 간결함과 속도로 유명합니다.
  • Perforce (Helix Core) — 대규모 프로젝트를 위해 설계된 버전 컨트롤 시스템으로, 고성능과 확장성을 제공합니다.
  • CVS (Concurrent Versions System) — 기본적인 브랜치 및 머지 기능을 갖춘 오래된 중앙 집중식 버전 컨트롤 시스템.
  • Bazaar — 중앙 집중식 및 분산을 포함한 여러 워크플로우를 지원하는 분산 버전 컨트롤 시스템.
  • Fossil — 통합된 버그 추적, 위키 및 인터페이스를 갖춘 분산 버전 컨트롤 시스템.
  • ClearCase — 복잡한 브랜치와 대규모 프로젝트를 지원하는 엔터프라이즈급 VCS.
  • Monotone — 단순함과 버전 이력 무결성에 중점을 둔 분산 버전 컨트롤 시스템입니다.

패키지 매니저

JavaScript

  • NPM — 자바스크립트 프로젝트의 의존성 관리 도구입니다.
  • Yarn — NPM의 대안으로, 빠른 속도와 오프라인 기능으로 알려져 있습니다.
  • Bower — 더 이상 사용되지 않는 프론트엔드 라이브러리 관리 도구로, 대부분 NPM 또는 Yarn으로 대체되었습니다.
  • pnpm — 디스크 공간을 절약하고 성능을 향상시키기 위해 콘텐츠 주소 지정 저장 메커니즘을 사용하는 효율적인 패키지 관리자입니다.
  • Rush — 다수의 패키지가 포함된 대규모 프로젝트용 모노 레포(모놀리틱 저장소) 관리 도구입니다.
  • jspm — 현대적인 자바스크립트 애플리케이션을 위한 모듈 로딩 및 의존성 관리에 중점을 둔 도구입니다.

Python

  • Pip — 기본적인 패키지 관리 도구입니다.
  • Poetry — 의존성 관리와 패키지 공개를 간편하게 하는 도구입니다.
  • Conda — 데이터 과학 분야에서 널리 사용되는 패키지 및 환경 관리 도구입니다.
  • Pipenv — 의존성 관리와 가상 환경을 결합한 도구입니다.

Java

  • Maven — 빌드 자동화 및 의존성 관리.
  • Gradle — 구루비 또는 코틀린 DSL을 사용하는 빌드 자동화 도구로, Java 및 다른 언어를 지원합니다.
  • Ant — XML 기반 빌드 도구로, 종종 Apache Ivy와 함께 의존성 관리에 사용됩니다.
  • SBT (Scala Build Tool) — 주로 스칼라 프로젝트용이지만 Java도 지원하며, 구성을 위해 스칼라 기반 DSL을 사용합니다.

C#

  • NuGet — .NET용 패키지 관리.

PHP

  • Composer - 의존성 관리와 자동 로딩.

Rust

  1. Cargo - 패키지 관리 및 빌드.

Ruby

  • Bundler — Ruby gem을 관리해줍니다.

macOS

  • Homebrew — 소프트웨어 설치를 관리해줍니다.

Windows

  • Chocolatey — 소프트웨어 설치 및 업데이트를 자동화합니다.

Linux

  • APT (Advanced Package Tool) — 우분투와 같은 데비안 기반 배포판에서 사용됩니다.
  • Yum/DNF — 페도라와 CentOS와 같은 레드햇 기반 배포판에서 사용됩니다.

기타 언어/기술

  • Elm — Elm 패키지 및 종속성을 관리하는 elm-package입니다.
  • Haskell — Haskell 프로젝트를 빌드하고 종속성을 관리하는 Stack입니다.

템플릿 엔진

일반

  • Liquid — Jekyll과 같은 정적 사이트 생성기에서 사용됩니다.
  • Twig — PHP용 유연한 템플릿 엔진입니다.
  • Mustache — 논리 없는 템플릿 구문입니다.
  • Handlebars — Mustache의 확장으로 추가 기능이 포함되어 있습니다.
  • Jinja — Python 템플릿 엔진입니다.
  • EJS — 임베디드 JavaScript 템플릿 엔진입니다.
  • Pug — Haml과 Jade에서 영감을 받은 고성능 템플릿 엔진입니다.
  • Nunjucks — Jinja2에서 영감을 받은 강력한 JavaScript 템플릿 엔진입니다.
  • Hogan.js — Mustache를 기반으로 한 가벼운 템플릿 엔진입니다.

다음은 Python 및 Ruby의 템플릿 엔진 목록입니다:

Python

  • Chameleon — 빠르고 안전하며, Zope Page Templates (ZPT)와 호환됩니다.
  • Mako — 유연하고 강력한 Python 템플릿 엔진입니다.

Ruby

  • ERB (Embedded Ruby) — 텍스트 문서 내에서 루비 코드를 포함하는 템플릿 시스템입니다.

PHP

  • Blade — 웹 애플리케이션의 템플릿을 작성하기 위한 Laravel의 기본 템플릿 엔진으로, 깔끔한 구문으로 유명합니다.

Java

  • Thymeleaf — HTML, XML, JavaScript, CSS 및 텍스트를 위한 최신 서버 측 템플릿 엔진입니다.

아래는 Markdown 형식으로 변경된 내용입니다.

Go

  • html/template — Go의 표준 라이브러리 템플릿 엔진으로, 안전하게 HTML을 생성하도록 설계되었습니다.

Others

  • Pug (이전 이름 Jade) — 자바스크립트뿐만 아니라 쉽게 읽고 쓸 수 있는 문법을 가지고 있습니다.
  • EJS (내장 JavaScript) — 주로 자바스크립트 템플릿 엔진이지만, 다양한 서버 측 및 클라이언트 측 환경에서도 사용할 수 있습니다.

마크다운 형식 기반 도구

마크다운 기본 사항

  • 마크다운 — 텍스트 서식 지정을 위한 가벼운 마크업 언어.
  • Pandoc — 다양한 형식 간 문서를 변환해주는 도구로, 마크다운 포맷도 지원합니다.
  • Markdown-it — 자바스크립트용 빠른 마크다운 파서.

마크다운 파서 및 라이브러리

  • Marked — 자바스크립트용 빠르고 확장 가능한 마크다운 파서 및 컴파일러.
  • CommonMark — 구현 간 호환성을 보장하기 위해 마크다운 구문 분석을 표준화합니다.
  • Remark — 사용자 정의 및 변환을 위한 플러그인 지원이 있는 마크다운 프로세서.

마크다운 편집기

  • Typora — 라이브 프리뷰 기능이 있는 마크다운 편집기.
  • Obsidian — 고급 마크다운 링킹 및 노트 작성 기능이 있는 지식 관리 도구.
  • Mark Text — 간단한 인터페이스를 가진 오픈 소스 마크다운 편집기.

변환 도구

  • Grip — 지금 GitHub에서 보이는 대로 Markdown 파일을 로컬에서 미리 볼 수 있습니다.
  • Markdown2PDF — 사용자 정의 스타일로 Markdown 파일을 PDF로 변환합니다.

서버 측 렌더링 (SSR)

언어 및 프레임워크

  • PHP — 동적 콘텐츠를 위한 서버 측 스크립팅 언어.
  • Ruby on Rails — Ruby에서 서버 측 HTML 렌더링을 위한 프레임워크.
  • Django — Python 프레임워크로 서버 측 HTML 렌더링에 사용됩니다.
  • Flask — 경량 Python 프레임워크로 서버 측 렌더링에 사용됩니다.
  • ASP.NET Razor Pages — Microsoft에 의한 서버 측 프레임워크입니다.

자바스크립트 프레임워크

  • Angular Universal — Angular 애플리케이션을 위한 서버 측 렌더링.
  • Next.js — SSR 및 정적 사이트 생성 기능을 갖춘 React 프레임워크.
  • Nuxt.js — SSR 및 정적 사이트 생성을 제공하는 Vue.js 프레임워크.
  • Remix — SSR 및 개발자 생산성에 중점을 둔 React 프레임워크.
  • SvelteKit — SSR 및 정적 사이트 생성을 위한 Svelte 프레임워크.
  • Gatsby — API 경로를 통해 SSR 기능을 갖춘 정적 사이트 생성기.
  • Rakkas.js — SSR 지원을 제공하는 풀 스택 React 프레임워크.

웹 컴포넌트 (네이티브 브라우저 API)

  • HTML5 — 웹 콘텐츠 구조화를 위한 표준.
  • Shadow DOM — 컴포넌트를 위한 캡슐화 제공.
  • Custom Elements — 새로운 HTML 요소 정의.
  • HTML Templates — 재사용할 수 있는 HTML 조각.

웹 컴포넌트를 위한 라이브러리

  • Slim.js — 웹 컴포넌트를 구축하기 위한 가벼운 라이브러리.
  • Lit — 빠르고 가벼운 웹 컴포넌트 생성을 위한 라이브러리.
  • Vaadin — 웹 애플리케이션을 위한 UI 컴포넌트 및 도구를 제공합니다.
  • Hybrids — 반응형 웹 컴포넌트를 생성하기 위한 간단한 API.
  • SkateJS — 웹 컴포넌트를 구축하기 위한 유틸리티 라이브러리.
  • X-Tag — 커스텀 엘리먼트 생성을 위한 라이브러리.
  • Svelte — 컴파일 타임 방식으로 웹 컴포넌트를 생성하는 데 사용할 수 있습니다.

웹어셈블리 (WebAssembly, Wasm)

언어 및 도구링

  • AssemblyScript — 웹어셈블리로 컴파일되는 TypeScript와 유사한 언어입니다.
  • wasmer — 웹어셈블리 이진 파일을 실행하기 위한 런타임입니다.
  • Rust WebAssembly — 고성능 앱을 위해 Rust를 웹어셈블리로 컴파일합니다.
  • WASI: — 웹어셈블리를 사용하여 호스트 OS와 상호작용하는 시스템 인터페이스입니다.
  • Emscripten — C/C++ 코드를 웹어셈블리로 컴파일합니다.
  • WebAssembly Studio — 웹어셈블리 애플리케이션을 개발하기 위한 온라인 IDE입니다.
  • Wasm-bindgen — Rust-JavaScript 통신을 용이하게 합니다.
  • Blazor WebAssembly — C#과 웹어셈블리로 대화형 UI를 구축하기 위한 프레임워크입니다.
  • Pyodide — 웹어셈블리로 컴파일된 Python 인터프리터입니다.
  • QuickJS — 웹어셈블리로 컴파일된 소규모 JavaScript 엔진입니다.

DevOps 도구

  • Docker — 컨테이너에서 애플리케이션을 개발, 배포 및 실행할 수 있는 플랫폼입니다.
  • Kubernetes — 컨테이너화된 애플리케이션을 관리하기 위한 컨테이너 오케스트레이션 플랫폼입니다.
  • Helm — Kubernetes를 위한 패키지 매니저입니다.
  • Terraform — 클라우드 리소스를 프로비저닝하고 관리하기 위한 인프라 코드 도구입니다.

API 개발

  • GraphQL — API에 대한 쿼리 언어 및 서버 사이드 런타임입니다.
  • RESTful APIs — 네트워크 응용 프로그램을 설계하는 아키텍처 스타일입니다.
  • JSON API — JSON 형식의 API를 구축하기 위한 명세서입니다.
  • Apollo — 데이터 중심 애플리케이션을 구축하기 위한 GraphQL 구현입니다.
  • gRPC — 서비스 간 통신을 위한 고성능 RPC 프레임워크입니다.

API 설계 및 문서화

  • Swagger/OpenAPI — API를 설계하고 문서화하는 프레임워크입니다.
  • Postman — API를 테스트하고 문서화하는 도구입니다.
  • API Blueprint — API를 설계하고 문서화하기 위한 설명 언어입니다.
  • Redoc — OpenAPI 명세서를 위한 문서 생성기입니다.
  • Apiary — API 설계 및 문서화를 지원하는 도구로, API Blueprint 및 OpenAPI를 지원합니다.
  • Stoplight — OpenAPI 및 기타 표준을 지원하는 API 설계, 문서화 및 테스트 플랫폼입니다.
  • ReDocly — 추가 기능이 포함된 ReDoc로 API 문서 및 설계를 위한 스위트입니다.
  • Docusaurus — API 문서화를 위해 Swagger/OpenAPI와 같은 도구와 통합할 수 있는 문서 생성기입니다.
  • SwaggerHub — Swagger/OpenAPI를 통합하여 API를 설계, 문서화 및 공유하는 협업 플랫폼입니다.
  • Apimatic — 다양한 API 형식을 지원하는 API 설계, 문서화 및 SDK 생성 도구입니다.
  • OpenAPI Generator — OpenAPI 명세서에서 클라이언트 라이브러리, 서버 스텁 및 문서를 생성합니다.
  • GraphQL Playground — GraphQL API를 탐색하고 테스트할 수 있는 대화형 도구입니다.

API 게이트웨이

  • 콩 — 오픈 소스 API 게이트웨이 및 마이크로서비스 관리 도구.
  • 타이크 — 오픈 소스 API 게이트웨이 및 관리 플랫폼.

서버리스 프레임워크

  • AWS Lambda — 아마존 웹 서비스의 서버리스 컴퓨팅 서비스.
  • Azure Functions — 마이크로소프트의 서버리스 컴퓨팅 서비스.
  • Google Cloud Functions — 구글 클라우드의 서버리스 컴퓨팅 서비스.
  • Serverless Framework — 서버리스 애플리케이션을 구축하고 배포하기 위한 오픈 소스 프레임워크.

서버리스 플랫폼

  • Vercel — 프론트엔드 프레임워크와 정적 사이트를 배포하는 플랫폼.
  • Netlify — 정적 및 JAMstack 사이트를 위한 지속적 배포 플랫폼.
  • Firebase Hosting — 통합 기능이 있는 개발자를 위한 웹 호스팅.
  • AWS Amplify — 웹 및 모바일 앱을 위한 풀스택 서버리스 플랫폼.
  • Azure Static Web Apps — 최신 웹 앱과 정적 사이트를 배포하는 서비스.
  • Google Cloud Run — 컨테이너화된 앱을 배포하는 관리되는 서버리스 플랫폼.

테스팅 및 린트(웹)

단위 및 통합 테스트

  • Jest — JavaScript를 위한 테스팅 프레임워크.
  • Mocha — Node.js 및 브라우저용 테스팅 프레임워크.
  • Jasmine — JavaScript를 위한 테스팅 프레임워크.
  • Karma — JavaScript를 위한 테스트 러너.
  • Cypress — 엔드 투 엔드 테스팅 프레임워크.
  • Puppeteer — 헤드리스 크롬 Node.js API.
  • WebdriverIO — 엔드 투 엔드 테스팅 프레임워크.
  • Testing Library — DOM 기반 테스팅을 위한 유틸리티.

린팅 및 코드 품질

  • ESLint — JavaScript 및 TypeScript용 린터.
  • Prettier — 강렬한 코드 포매터.
  • Stylelint — 스타일시트용 린터.
  • JSLint — JavaScript용 코드 품질 도구.
  • TSLint — TypeScript용 린터.
  • Husky — 편리한 Git 후크.
  • Lint-Staged — 스테이징된 Git 파일에 린터 실행.

DevOps 및 CI/CD

자동화

  • CircleCI — 지속적 통합 및 전달 플랫폼.
  • Jenkins — 프로젝트 빌드 및 배포를 자동화하는 서버.
  • Travis CI — 지속적 통합 서비스.
  • GitHub Actions — GitHub에 통합된 CI/CD 파이프라인.
  • GitLab CI — GitLab에 내장된 지속적 통합 및 전달 도구.
  • Buddy — 웹 개발자를 위한 CI/CD 도구.
  • AWS CodeBuild — 코드를 컴파일하고 테스트를 실행하는 지속적 통합 서비스.

정적 사이트 생성기

JavaScript 기반

  • Gatsby — GraphQL을 사용한 정적 사이트 생성기.
  • Graviton — 현대적인 JS 기능을 갖춘 가벼운 프레임워크.
  • Nuxt.js — SSR 및 SSG를 갖춘 Vue.js 프레임워크.
  • Elder.js — Svelte 기반의 정적 사이트 생성기.
  • Scully — Angular용 정적 사이트 생성기.
  • Astra — 최적화된 정적 사이트 생성기.
  • 11ty (Eleventy) — 간단하고 유연한 정적 사이트 생성기.

루비 기반

  • Jekyll — 루비 기반 정적 사이트 생성기.
  • Middleman — 루비 기반 정적 사이트 생성기.

다른 언어

  • Hugo — Go로 작성된 빠른 정적 사이트 생성기.
  • Eleventy — 간단하고 유연한 정적 사이트 생성기.
  • Hexo — 블로그용 간단한 정적 사이트 생성기.
  • Pelican — 파이썬 기반의 정적 사이트 생성기.
  • Nikola — 파이썬 기반의 정적 사이트 생성기.
  • Jigsaw — Laravel 기반의 정적 사이트 생성기.
  • Zola — Rust로 작성된 빠른 정적 사이트 생성기.
  • Docusaurus — 문서 웹 사이트를 위해 최적화된 도구.
  • Mavo — HTML로부터 웹 애플리케이션을 생성하는 프레임워크.
  • Next.js — 서버 측 렌더링으로 유명하지만 정적 사이트 생성도 지원하는 정적 익스포트 기능을 갖춘 도구.

데이터 처리 및 분석

  • Redux-Saga — Redux의 부작용을 처리하는 미들웨어입니다.
  • Redux-Thunk — Redux에서 비동기 로직을 관리하는 미들웨어입니다.
  • RxJS — JavaScript용 반응형 프로그래밍을 가능케 하는 Reactive Extensions입니다.
  • GraphQL Subscriptions — GraphQL을 통해 실시간 업데이트를 제공합니다.
  • React Query — React에서 서버 상태를 가져오고 캐싱하고 동기화할 수 있는 훅을 제공합니다.
  • TanStack Query — 강력한 캐싱과 동기화를 위한 React 쿼리 라이브러리입니다.
  • Apollo Client — GraphQL을 사용하는 JavaScript 앱을 위한 상태 관리 라이브러리입니다.
  • Recoil — React를 위한 상태 관리 라이브러리입니다.
  • Relay — React에서 GraphQL 데이터를 관리하고 가져오는 프레임워크입니다.

마이크로서비스 프레임워크

  • Spring Cloud (Java)— Spring 프레임워크를 기반으로 한 마이크로서비스 구축을 위한 도구 모음으로, 서비스 검색, 구성 관리, 회로 차단 등을 포함합니다.
  • Micronaut (Java, Groovy, Kotlin)— 의존성 주입, 서비스 검색, HTTP 라우팅을 포함한 현대적인 JVM 기반 프레임워크로, 마이크로서비스를 구축하는 데 사용됩니다.
  • Quarkus (Java)— GraalVM 및 OpenJDK에 최적화된 Kubernetes 원생 Java 프레임워크로, 고성능 마이크로서비스를 위해 설계되었습니다.
  • Dropwizard (Java)— RESTful 웹 서비스 개발을 위한 Java 프레임워크로, 빠른 개발을 지원하고 운영 문제에 대한 도구를 제공합니다.
  • Node.js with Express (JavaScript)— 특별히 마이크로서비스 프레임워크는 아니지만, Express.js를 사용하여 Node.js 환경에서 마이크로서비스를 구축할 수 있습니다.
  • Django (with Django REST Framework) (Python)— 견고한 마이크로서비스를 구축하기 위한 Django REST Framework를 제공하는 고수준 Python 웹 프레임워크입니다.
  • Flask (Python) — 단순함과 유연성으로 인해 마이크로서비스를 구축하는 데 사용되는 가벼운 Python 웹 프레임워크입니다.
  • Vert.x (Java, JavaScript, Groovy, Kotlin, Ruby, Ceylon, Scala)— JVM에서 반응형 및 고동시성 애플리케이션을 구축하는 데 적합한 도구 모음으로, 마이크로서비스에 적합합니다.
  • Golang (Go)— 성능 및 동시성 지원으로 인해 종종 마이크로서비스에 사용되는 프로그래밍 언어로, Gin과 Echo와 같은 라이브러리가 마이크로서비스 구축을 지원합니다.
  • Akka (Scala, Java)— 동시성, 분산 및 탄력있는 애플리케이션을 구축하기 위한 도구로, 종종 마이크로서비스에 사용됩니다.
  • Lagom (Java, Scala)— 개발자 생산성에 중점을 둔 확장 가능하고 견고한 마이크로서비스를 생성하기 위한 프레임워크입니다.
  • Elixir with Phoenix (Elixir)— 확장 가능하고 유지보수 가능한 마이크로서비스 애플리케이션을 지원하는 Elixir의 웹 프레임워크입니다.

지원 도구 및 플랫폼

  • AWS Lambda — 이벤트에 대한 코드 실행을 허용하는 서버리스 컴퓨팅 서비스로, 서버리스 마이크로서비스 아키텍처에 유용합니다.
  • 서비스 매쉬 (예: Istio, Linkerd) — 마이크로서비스 통신, 관찰성 및 보안을 관리하기 위한 인프라를 제공하며, 복잡한 마이크로서비스 환경에서 자주 사용됩니다.

서버리스 프레임워크

  • Serverless Framework — 클라우드 프로바이더 간에 서버리스 앱을 간편하게 배포하도록 도와줍니다.
  • Architect — 서버리스 배포를 위한 간소함과 생산성에 중점을 둡니다.
  • Chalice — JavaScript/TypeScript 바인딩을 통해 Python으로 서버리스 앱을 구축하는 마이크로프레임워크입니다.
  • AWS SAM — AWS에서 서버리스 앱을 개발하기 위한 오픈소스 프레임워크입니다.
  • Claudia.js — Node.js 프로젝트를 AWS Lambda로 간단하게 배포하도록 도와줍니다.
  • Vercel — Next.js와 같은 프레임워크용 서버리스 함수를 호스팅합니다.
  • Zappa — AWS Lambda에서 파이썬 앱을 위한 서버리스 프레임워크입니다.
  • Fn Project — 어떤 환경에서도 사용할 수 있는 오픈소스 서버리스 함수 프레임워크입니다.
  • Kubeless — Kubernetes에서 서버리스 함수를 사용할 수 있습니다.
  • OpenFaaS — Docker 및 Kubernetes를 활용한 서버리스 함수 프레임워크입니다.
  • KEDA — 이벤트 소스를 기반으로 쿠버네티스에서 서버리스 스케일링을 가능하게 합니다.
  • AWS Lambda Powertools — 로깅, 추적 및 지표를 통해 AWS Lambda 함수를 향상시키는 유틸리티가 제공됩니다.

모니터링 및 로깅

  • Prometheus — 모니터링 및 경고 툴킷.
  • Grafana — 모니터링 및 관찰용 플랫폼.
  • ELK Stack — (Elasticsearch, Logstash, Kibana) 로그 데이터를 검색하고 분석하며 시각화하는 도구들.
  • Jaeger — 마이크로서비스 모니터링을 위한 분산 추적 시스템.
  • Zipkin — 지연 문제 해결을 위한 분산 추적 시스템.

만약 제 글 중 어떤 것이 도움이 되었거나 유용하다고 느꼈다면, 제 작업을 지원해 주시거나 후원해 주실 생각이 있다면 아래 방법을 통해 커피한 잔 사주실 수 있습니다😊

Patreon

Ko-fi.com

buymeacoffee

마지막으로, 아직 Medium 회원이 아니시고 회원이 되려는 계획이 있다면 아래 링크를 사용해 부탁드립니다. 회원 가입 비용에 추가 비용 없이 저에게 일부가 돌아갑니다.

이것은 제 첫 제휴 프로그램이며, 시스템 지식을 더 향상시키고 싶다면 링크를 클릭하고 강의를 구매할 수 있습니다. 솔직히 말씀드리면, 귀하의 강의 비용 중 20%가 추가 비용 없이 제게 전달됩니다. 무제한으로 강의에 접근할 수 있으며 시간 제한이 없으며 미래 업데이트에 대한 무료 업데이트에도 액세스할 수 있습니다.

친절한 한국어로 🚀

In Plain English 커뮤니티에 참여해 주셔서 감사합니다! 떠나시기 전에:

  • 작가를 클랩하고 팔로우해주세요 ️👏️️
  • 팔로우하기: X | LinkedIn | YouTube | Discord | Newsletter
  • 다른 플랫폼 방문하기: CoFeed | Differ
  • PlainEnglish.io에서 더 많은 콘텐츠 만나보세요