•  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

the seed(비교)

r131 vs r132
1
[[분류:알파위키의 기능]][[분류:위키 엔진]]
2
[include(틀:회원 수정)]
3
[include(틀:알파위키)]
1
[include(틀:회원수정2)]
2
[include(틀:다른 )]
3
* [[메이플스토리]]의 던전 - [[더 시드]]
4
* [[소드 아트 온라인]]에 등장하는 가상의 소프트웨어 - [[더 시드(소드 아트 온라인)]]
5
* [[Shirosky]]의 네번째 EP앨범 - [[The Seed]]
6
[include(틀:나무위키)]
47
[목차]
8
9
'''[[https://feedback.theseed.io|더시드 포럼]]'''
10
511
== 개요 ==
6
[[위키 엔진]] 일종. 정식 명칭은 the seed이다. 2019년 1월 21일 전까지 [[나무위키|옆동네]]에선 the seed engine으로 불렸다. --그래알파위키 '''the seed'''로 부르는군![* 알파위키와 나무위키는 관계가 최악 자체다.]-- [[namu]], PPPP, kasio등의 개발자들이 만들었다. Node.js의 Express 프레임워크으로 작성되었다.
12
[[나무위키]]에서 사용하는 [[위키 엔진]]으로 [[namu]], [[나무위키:전직 특수 운영진#PPPP|PPPP]], [[나무위키:전직 특수 운영진#kasio|kasio]] 개발했다. the seed라는 이름은 개발 단계에통용되는 코드네임[* 이대한 [[https://namu.wiki/topic/2816#26|PPPP의 답변]]]이었으나 나무위키의 엔진을 지칭하공식적인 이름이 것으로 보인다.([[https://namu.wiki/License|#]]) 엔진은 [[Node.js]]의 Express.js [[프레임워크]]를 사용했다. 2016년 5월 7일 the seed의 라이센싱 계약이 [[namu|개발자]] 측과 [[umanle S.R.L.]] 측 사이에 체결되었다.
713
8
== 이 엔진을 사용하는 위키 ==
9
* [[알파위키]]
10
* [[나무위키]]
11
* [[더시드위키]]
12
* --[[더 시드(위키)|더 시드]]-- 위의 더시드위키와는 또 다르다. [[Tor]] 인트라넷 에서 구동되는 [[다크 웹]] 기반 위키.[* 쉽게 해서 [[히든위키]]와 비슷하다.] 현재는 폐쇄되었다.
13
* --[[R18위키]]--[* 유저가 없어진 뒤 호스트 서버 오류로 실상 폐쇄되었(...). 현재는 아예 도메인이 팔렸다.]
14
== [[나무위키:문법 도움말|문법]] ==
15
[include(틀: 내용, 문서명=나무위키:문법 도움)]
16
[[나무위키]]에선 '나무마크'라는 자체적인 스트 문법을용한다.
1417
15
== [[/업데이트 내역|업데이트 내역]] ==
16
[include(틀:상세 내용, 문서명=the seed/업데이트 내역)]
18
== [[the seed/업데이트|업데이트 내역]] ==
19
[include(틀:상세 내용, 문서명=the seed/업데이트)]
1720
18
== 여담 ==
19
* the seed 버전 보와 라이선스를 확하려면 '''/License''' 페이지에 가면 된다. [[https://awiki.theseed.io/License|예시]]
20
* 엔진 관련 술적 내용을 논의[* 기추가 요청, 버그 제보 등]을 논의하는 곳이 있다. [[https://feedback.theseed.io|바로가기]]
21
* 클로즈 소스인 관계로 볼 수 있는 소스는 웹 브라우저의 개발 도구를 열면 보이는 HTML, CSS 그리고 [[https://theseed.io/js/theseed.js|theseed.js]] 하나 그리고 스킨 스크립트이다. 게다가 이것은 Node.js이 아니라 그냥 자바스크립트이다.[* 당연한거다. Node.js 런타임은 서버 있기 때문.] 참고로 이 스크립트는 현재도 남아있으나 내부 작동방식이 완전히 변경되면작동하지 않고 사용되지도 않는다.
22
* 2018년 7월 기준 IP 차단 페이지인 IPACL에서 규칙 삭제(차단 해제) 시 뜨는 확인 메시지 내용이 "정말로?"이다(...). 문서 ACL에서는 "삭제하시겠습니까?". 현재는 IPACL은 사라졌다.
23
* 405 오류를 404로 표시한다(...).[* 다만 Express.js 특성상 이렇게 되기는 한다. 거기에서는 {{{app.get}}}로 GET 요청을, {{{app.post}}}로 POST 요청을 처리하는데 POST 전용 페이지의 경우 {{{app.get}}} 코드가 아예 없다면 404가 뜨게 되는 것. 그런데 {{{app.all}}}를 사용하면 모든 메소드에 대한 요청을 처리할 수 있기는 하다.]
24
* 비로그인 상태로 편집 후 계정을 만든 후 기여를 이전하면 기여 목록에서 사용자 문서 생성 전에 기여있게 다.
25
* 4.16.0 버전부터 구 프론트엔드 사용 불가능하다.
26
* 나무위키에서 사용되는 the seed 엔진은 약간의 차이가 있다. 예를 들어서 기존 난수 토론 주소 접속 시 나무위키에서만 리다이렉트가 된다.
27
* 4.13.0부터 API도 추가되었다. 다만 그냥 요청하면 400 코드가 반환되고 헤더를 약간 변경해야 한다. 이를 통해 브라우저를 통한 위키 접속 없이도 문서 조회 등이 가능하게 되었다.
28
* [[:파일:tsdjserr.gif|오래된 브라우저에서 접속할 때 붉은색 로딩 화면이 뜨는 경우가 있다.]]
29
* 기존에는 요청 헤더에 사용자 에이전트가 없으면 역사 및 이미지가 작동하지 않았다.
30
* 일부 표기가 영어로 되어있다. 예를 들어 편집요청, 뒤로 및 다음 페이지 단추 등. 그런데 옛날 나무위키 스크린샷을 보면 IPACL 페이지에 스페인어(...)[* AL 활성화 확인란 레이블이 Si(스페인어로 '예'라는 뜻이다)라고 되어있었다.]도 있었던 듯하다.
31
* 구 프론트엔드는 스크립트를 압축하지 않은 버전도 접근이 가능했고 클래스명도 알아보기 쉬워서 커스텀 JS나 CSS를 만드는 것이 쉬웠'''었'''다. 신 프론트엔드는 스크립트가 Vue.js+webpack+obfuscator로 컴파일되었고, 클래스명은 한 자리이거나 아예 없고, data-v-xxxxxxxx이라는 속성명을 사용하는데, 이것은 계속 바뀌기 때문에(...), 직접 CSS/JS를 제작하는 것이 조금 어렵게 되었다.
32
* '''현재 부분적으로 코드가 공개되었다.''' 현재 볼 수 있는 코드는 프론트엔드 렌더링 소스코드와[* 개발자 도구를 열고 {{{<script src="<숫자>.<A, B, C, D, E, f 및 숫자로 이루어진 긴 문자열>.js" defer>}}}가 있을 것이다. 그것이 프론트엔드 렌더링 코드이다. 최근 토론 페이지의 코드를 보려면 거기서 이 스크립트를 확인하면 된다.] 편집기 소스코드[* [[https://github.com/namu-wiki/monaco-namu|#]] ]이다.
33
* 신 프론트에서는 스크립트의 총 크기가 2MB 이상이므로 데이타 네트워크로 접속 시 주의가 필요하다. ~~스크립트 난독화 스크립트 뻥튀기~~
21
== 추가 정인 기능 ==
22
더시포럼에서 Planned 상태가 된 이다.
3423
35
== 장점 ==
36
* [[리그베위키]] 호환성을 위해 [[모니위키]] 문법을 일부 계승한 관계로 [[미디어위키]]보훨씬 문법 쉽고 간편하다.[* 미디어위키는 부 문법html 태그를 사용하는 비해, the seed [[그런 없다]][* html을 사용 있는법이 있긴 다. 다만 심히 불편할 뿐더러 이미삽입 CSS조차빈약문제점다.]. [[나무마크]] 문서 참조. 다만 이게 나무마크에 있어서도 문제점으로 작용하 하는데, HTML 문법제한되어 있어 복잡한 틀을 만들기가 심히 어렵다.]
24
* [[https://feedback.theseed.io/posts/3/injeungdoen-sayongja-acl-jogeon|인증된 사용자 ACL]]
25
* [[https://feedback.theseed.io/posts/12/ridairegteu-munbeob-byeongyeong|리다이렉트 문법 변경]]: 리다이렉트의 대상이 되는 문서에서 '[\[넘겨주기:리다이렉트]]'꼴로 리다이렉트를 설정할 있도록 이렉트 문법 변경하는 내용이다.[* 여담으로 예전 편집창에 "[의견수렴\] 리다이렉트 문법 변경"이라는 링크가 붙어의견 수렴을 진행했었다.]
26
* [[https://feedback.theseed.io/posts/2/alrim-siseutem|알림 시스템]]
27
* [[https://feedback.theseed.io/posts/6/namuwiki-baegyeong-tumyeongdo-seoljeong|나무위키 배경 투명도 설정]]
28
* [[https://feedback.theseed.io/posts/23/samun-hawimunseo-gwanryeon|사용 문서의 하위문서 관련]]: 사용자 서의 문서가 최상위 문서로 옮겨 삭제하거나 옮기는 것이 불가능해는데 가능게 해달라요청이다.
29
* [[https://feedback.theseed.io/posts/24/torongwanryeon|숨겨진 댓글 표시 설정]]
30
* [[https://feedback.theseed.io/posts/8/cadannaeyeog-gwanryeon|차단내역 수정 기능]]
31
* [[https://feedback.theseed.io/posts/1/pyeonjib-pilteo|편집 필터]]
32
* [[https://feedback.theseed.io/posts/40/samun-pyeonjibyoceong-isseul-ddae-alrimi-ddeuge-hamyeon-johgessseubnida|사용자 문서 편집 요청 알림]]
33
* [[https://feedback.theseed.io/posts/70/jadong-pyeonjib-api|자동 편집 API]]
34
== 기타 ==
35
기본적으로 비공개 엔진이때문에 일반인들구할 없다. 대체용으로 나온 [[오픈나무]].
3736
38
== 단점 ==
39
* 엔진이 비공개라 개인이 위키 만들 때 쓸 수 없다. 클로즈 소스인 이유는 코딩 스타일을 이용해서 namu가 누구인지 청동이 추론할 수 있기 때문이라는 주장이 있다.
40
* 닉네임을 영문, 숫자, 밑줄로만 설정할 수 있다.[* 다만 나무위키는 한글 닉네임이 있는 것으로 보아 강제적으로한글 닉네임을 사용할 수 있는 것 같다.][* 숫자나 밑줄로 시작하면 안 된다. 또한 3자 이상 32자 이하이여야 한다.]
41
* 파서 함수가 원되지 않는다.
42
* 현재는 해결됐지만 2020년 4월부터 8월까지 나무위키를 제외한 곳에서 파이어폭스 계열에서 조금씩 느려지는 현상이 있었다. 특히 컴퓨터 성능이 좋지 않으면 접속만 해랙 + 응답없음 콤보(...)가 나는 경우가 있었다. 거기다가 당시에는 개발자 도구가 열리면 페이지가 얼음이 되기도 했는데 중간에서 저성능 컴퓨터 파이어폭스 기준 개발자 도구를 열면 한참 동안 응답 없음이 뜨는 경우도 있어서 백스페이스를 누르려다 F12를 눌러버리면 한참을 기다려야 하는 경우도 있었다. 참고로 개발자 도구가 열려있는 상태에서 이트 이이 불가한 것은 나무위키도 해당했었다.
37
[[나무위키]] 외에도 더시위키, 알파위키에서도 사용된다. 지금은 폐쇄된 R18위키에서도 사용었다.
4338
44
== 특성 ==
45
* 시간을 내부적으로 초단위 유닉스 시간으로 처리 듯하다.
46
* 프론트엔드 자바스크립트 난독화되어있다. 4.14~15.0부터 시작되었다. 코드 패턴으로 았을 때에[[https://obfuscator.io|obfuscator.io]]의 서비스를 이용하것으로 추정되며, 코드의 길가 거2,000,000자리(...)에 달한다. 그리고 중간중간 의미없는 코드도 있고,[* 함수가 만들어져있는데 실행봤자미가 없는 코드로 구되어있고, 한 번 호출하고 사용되지 않는 함수들이 해당된다. 이미 코드 초부에 3개가 있다.] 모든 문자열을 배열에 모놓고 함수로 접근하도록 되어있다. 더시드엔진은 클로즈드 소인데 이 스크립트 UI 및 프론트엔드 렌더링 코드가 있어 그런 것으로 추정된다.[* 여담으로 사실이라면 API만 동일한 양식으로 반환하는 위키 엔을 만들면 거기서도 더시드엔진 UI를 사용할 있다(!) 다만 이렇게 스크립트를 가져다가 쓰면 저작권 침해에 해당하므로 오프라인으로 혼서만 가지고 놀 것이 아니라면 하지 말자. 아니면 반대직접 스크립트를 만들서 자신만의 UI로 위키를 이용할 수도 다.]
47
* 기존에는 HTML 클래스명이 일반적이었 4.13.0부터클래스명한 자리이 data-v-<해시>라는 속성으로 요소를 구분하는데, 이 때에 사용JS/CSS 제작이 약간려워진다. 거기다가 HTML의 중간중간{{{<!---->}}}(빈 주석)이 달려있다.
48
* 4.12.0버전까지는 [[jQuery]]를 사용하였다.
49
* 템플릿 엔진으로 Nuxt.js사용한다.
50
* 4.13.0 버전 페이지 이동 시 페이드 애니메이션 효과가 있었으나 언제부턴가 사라졌다.
51
* {{{(window.webpackJsonP = window.webpackJsonP || [])}}} 코드가[* 실제로바로 webpackJsonP를 사용하지 않고 복잡한 단계로 접근하게 된다.] 있는 것이 확인되어 webPack를 사용하는 듯하다.
39
4.12.0 버전은 HTML과 자바스크립트 알아 쉬웠데, 현재지들HTML을 열어 data-v-(시) 속성으요소들을 분하게 되어있 적으로 보기 어렵게 되어있다. 또한 자바스크립트 전부 난독화되어있어 변수 함수름들16진수 자로 어있고, 작동하코드들삽입되어있고, 문자열도 인코딩되어있어 알아보기 매우렵게 되어있다. 거기에 더해서 모든 문자열들을 배열에 모아놓고 함수통해서 배열접근하 매우 복잡하게 되어다.
5240
53
== [[모니위키]]와의 차이 ==
54
[include(틀:상세용, 문서=모니키와 더시드의 비교)]
41
4.13.0부터 내부 구조가 대거 수정되었다. 4.15.0까지는 기존 방식의 스킨과의 호환성을 위해 해당 스킨을 적용하면 옛 인터페이스를 사용할 수 있었다. 나무위키는 2019년 말쯤에 4.16.0으로 업데이트되어 기존 레이아웃을 사용할 수 없었으나 더시드위키는 업데이트되지 않아 거기서 계속 사용할 수 있었다. 그러다가 2020년 3월 1일에 더시드위키도 4.16.0으로 업데이트되어서 기존 방식과 인터페이스는 더 이상 볼 수 없게 되었다.
42
43
리버티 스킨 기준으로 신 프론트엔드(버전 4.16.0) 이후로 스크립트의 총 크기가 거의 1MB[* 나무위키에는 없는 buma 스킨은 2MB, senkawa 스킨은 약 0.7MB이다.]씩 되어서 모바일에서 데이터 네트워크를 사용하여 접속하는 경우 주 필요하다. 다만 지금은 크기가 좀 줄긴 했다.
44
45
2021년 1월 20일 부로 홈페이지가 리뉴얼되었다.
46
47
Date 오브젝트를 그대로 대입해서인지 단되었을 때 나오는 오류 메시지의 만료일의 형식"Sat Dec 27 2132 04:42:20 GMT+0900 (대한민국 표준시)"이고, 앞부분이 영어로 나온다.
48
49
2020년 중후반에 자동 로그인 후 로그아웃이 되지 않는 오류가 있었다. honoka 쿠키의 반환이 제대로 안 되어서 그런데, 값이 "[object Object]"로 잘못 반환되었다. 쿠키를 JSON(오브젝트)으로 관리하는 듯하다.[* 그렇다면 오브젝트의 속성에 접근하는 것을 깜빡해서 발생했을 버그일 가능성이 높다.]
50
51
기여 목록의 특성으로 미루어 보아 부적으로 초 단위 유닉스 시간을 통해 관리하는 듯하다.
52
53
이전에는 [[Tor(익 네트워크)|Tor]] 네트워크 에서 "더시드"라는 이름[[딥 웹]] 위키를 [[namu]]가 운영했다. 주소는 .com이나 .wiki가 아니라 .onion으로 끝난다.
54
55
엔진 수정권을 주지 않았음에도 나무위키에'''만''' 있는 기능이 있는 것으로 보아 플러그 인이나 확장 프로그램 기능이 있는 듯하다.
56
57
[[분류:나무위키의 기능]][[분류:위키 엔진]]