Revolt ํ”„๋กœ์ ํŠธ๋Š” Discord ํ”Œ๋žซํผ์— ๋Œ€ํ•œ ๊ฐœ๋ฐฉํ˜• ๋Œ€์•ˆ์„ ๊ฐœ๋ฐœ ์ค‘์ž…๋‹ˆ๋‹ค.

Revolt ํ”„๋กœ์ ํŠธ๋Š” ๋…์  Discord ๋ฉ”์‹ ์ €์˜ ๊ฐœ๋ฐฉํ˜• ์•„๋‚ ๋กœ๊ทธ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜๋Š” ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ํ”Œ๋žซํผ์„ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Discord์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ Revolt ํ”Œ๋žซํผ์€ ๊ณตํ†ต ๊ด€์‹ฌ์‚ฌ๋ฅผ ๊ฐ€์ง„ ์ปค๋ฎค๋‹ˆํ‹ฐ์™€ ๊ทธ๋ฃน ๊ฐ„์˜ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์„ ์กฐ์งํ•˜๊ธฐ ์œ„ํ•œ ํ”Œ๋žซํผ์„ ๋งŒ๋“œ๋Š” ๋ฐ ์ค‘์ ์„ ๋‘๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Revolt๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ตฌ๋‚ด์—์„œ ํ†ต์‹ ์„ ์œ„ํ•ด ์ž์ฒด ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์›น ์‚ฌ์ดํŠธ์™€์˜ ํ†ตํ•ฉ์„ ๋ณด์žฅํ•˜๊ฑฐ๋‚˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํด๋ผ์ด์–ธํŠธ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋น ๋ฅธ ์„œ๋ฒ„ ๋ฐฐํฌ๋ฅผ ์œ„ํ•ด Docker์šฉ ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

Revolt ์„œ๋ฒ„ ๋ถ€๋ถ„์€ Rust๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ ์ €์žฅ์„ ์œ„ํ•ด MongoDB DBMS๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  AGPLv3 ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ ๋ถ€๋ถ„์€ TypeScript๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ ๋ฐ์Šคํฌํ†ฑ ์‹œ์Šคํ…œ์šฉ ๋ฒ„์ „์€ Electron ํ”Œ๋žซํผ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๊ณ  ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฒ„์ „์€ Preact ํ”„๋ ˆ์ž„์›Œํฌ ๋ฐ Vite ํˆดํ‚ท์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ด์™€ ๋ณ„๋„๋กœ ์ด ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ์Œ์„ฑ ํ†ต์‹ ์šฉ ์„œ๋ฒ„, ํŒŒ์ผ ๊ตํ™˜ ์„œ๋น„์Šค, ํ”„๋ก์‹œ ๋ฐ ํŽ˜์ด์ง€์— ๋‚ด์žฅ๋œ ์œ„์ ฏ ์ƒ์„ฑ๊ธฐ์™€ ๊ฐ™์€ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Android ๋ฐ iOS์šฉ ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์ œ๊ณต๋˜์ง€ ์•Š์œผ๋ฉฐ, ๋Œ€์‹  PWA(Progressive Web Apps) ๋ชจ๋“œ์—์„œ ์ž‘๋™ํ•˜๋Š” ์„ค์น˜๋œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์ด ํ”Œ๋žซํผ์€ ์ดˆ๊ธฐ ๋ฒ ํƒ€ ํ…Œ์ŠคํŠธ ๋‹จ๊ณ„์— ์žˆ์œผ๋ฉฐ ํ˜„์žฌ ํ˜•ํƒœ์—์„œ๋Š” ํ…์ŠคํŠธ ๋ฐ ์Œ์„ฑ ์ฑ„ํŒ…๋งŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ํ•จ๊ป˜ ์ปดํ“จํ„ฐ ๊ฒŒ์ž„์„ ํ•˜๋ฉด์„œ ์˜์‚ฌ์†Œํ†ตํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ๊ธฐ๋Šฅ์—๋Š” ์‚ฌ์šฉ์ž ์ƒํƒœ ์„ค์ •, Markdown ๋งˆํฌ์—…์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœํ•„ ์ƒ์„ฑ, ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฐฐ์ง€ ์ฒจ๋ถ€, ์‚ฌ์šฉ์ž ๊ทธ๋ฃน, ์ฑ„๋„ ๋ฐ ์„œ๋ฒ„ ์ƒ์„ฑ, ๊ถŒํ•œ ๋ถ„๋ฆฌ, ์œ„๋ฐ˜์ž ์ฐจ๋‹จ/์ฐจ๋‹จ ํ•ด์ œ ๋„๊ตฌ, ์ดˆ๋Œ€(์ดˆ๋Œ€) ๋ณด๋‚ด๊ธฐ ์ง€์›์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ ๋ฆด๋ฆฌ์Šค์—์„œ๋Š” ๋ณธ๊ฒฉ์ ์ธ ์ค‘์žฌ ์‹œ์Šคํ…œ์ธ ๋ด‡๊ณผ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ํ”Œ๋žซํผ Discord ๋ฐ Matrix์™€์˜ ํ†ตํ•ฉ์„ ์œ„ํ•œ ๋ชจ๋“ˆ์— ๋Œ€ํ•œ ์ง€์›์ด ๊ธฐ๋Œ€๋ฉ๋‹ˆ๋‹ค. ์žฅ๊ธฐ์ ์œผ๋กœ๋Š” ์ฐธ๊ฐ€์ž ์ธก์—์„œ ์ข…๋‹จ ๊ฐ„ ์•”ํ˜ธํ™”๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ณด์•ˆ ์ฑ„ํŒ…(E2EE Chat) ์ง€์›์„ ๊ตฌํ˜„ํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค. ๋™์‹œ์— ์ด ํ”„๋กœ์ ํŠธ๋Š” ์—ฌ๋Ÿฌ ์„œ๋ฒ„๋ฅผ ๊ฒฐํ•ฉํ•˜๋Š” ๋ถ„์‚ฐํ˜• ๋ฐ ์—ฐํ•ฉํ˜• ์‹œ์Šคํ…œ์œผ๋กœ ๋ฐœ์ „ํ•  ์˜๋„๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. Revolt๋Š” Matrix์™€ ๊ฒฝ์Ÿํ•˜๋ ค๊ณ  ํ•˜์ง€ ์•Š์œผ๋ฉฐ, ํ”„๋กœํ† ์ฝœ ๊ตฌํ˜„์„ ๋ณต์žกํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  ์‹ถ์ง€ ์•Š์œผ๋ฉฐ, ์ €๋ ดํ•œ VPS์—์„œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋ณ„ ํ”„๋กœ์ ํŠธ ๋ฐ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์œ„ํ•ด ์ตœ์ ์œผ๋กœ ์ž‘๋™ํ•˜๋Š” ๋‹จ์ผ ์„œ๋ฒ„๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ํ‹ˆ์ƒˆ์‹œ์žฅ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

Revolt์— ๊ฐ€๊นŒ์šด ์ฑ„ํŒ… ํ”Œ๋žซํผ ์ค‘์—์„œ ์„œ๋ฒ„ ๋ถ€๋ถ„์ด JavaScript๋กœ ์ž‘์„ฑ๋˜๊ณ  Node.js ํ”Œ๋žซํผ์—์„œ ์‹คํ–‰๋˜๋ฉฐ MIT ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋˜๋Š” ๋ถ€๋ถ„์ ์œผ๋กœ ๊ณต๊ฐœ๋œ Rocket.Chat ํ”„๋กœ์ ํŠธ๋„ ์ฃผ๋ชฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋กœ์ผ“์ฑ—์—์„œ๋Š” ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋Šฅ๋งŒ ๊ณต๊ฐœ๋˜์–ด ์žˆ์œผ๋ฉฐ, ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์€ ์œ ๋ฃŒ ์• ๋“œ์˜จ ํ˜•ํƒœ๋กœ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. Rocket.Chat์€ ๋ฌธ์ž ๋ฉ”์‹œ์ง€์—๋งŒ ๊ตญํ•œ๋˜๋ฉฐ ์ฃผ๋กœ ํšŒ์‚ฌ ๋™๋ฃŒ ๊ฐ„์˜ ์˜์‚ฌ์†Œํ†ต์„ ๊ตฌ์„ฑํ•˜๊ณ  ๊ณ ๊ฐ, ํŒŒํŠธ๋„ˆ ๋ฐ ๊ณต๊ธ‰์—…์ฒด์™€์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ์ด‰์ง„ํ•˜๋Š” ๋ฐ ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€