•  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

the seed(r105 판)

[주의!] 문서의 이전 버전(에 수정)을 보고 있습니다. 최신 버전으로 이동
파일:Semi_protect.svg   로그인 후 편집 가능한 문서입니다.
(~ KST )
1. 개요2. 이 엔진을 사용하는 위키3. 업데이트 내역4. 여담5. 장점6. 단점7. 특성

1. 개요[편집]

위키 엔진의 일종. 정식 명칭은 the seed이다. 2019년 1월 21일 전까지 옆동네에선 the seed engine으로 불렸다. 그래서 알파위키에선 the seed로 부르는군![1] namu, PPPP, kasio등의 개발자들이 만들었다. Node.js의 Express 프레임워크으로 작성되었다고.

2. 이 엔진을 사용하는 위키[편집]

3. 업데이트 내역[편집]

파일:상세 내용 아이콘.svg   자세한 내용은 the seed/업데이트 내역 문서를 참고하십시오.

4. 여담[편집]

  • the seed 버전 정보와 라이선스를 확인하려면 /License 페이지에 가면 된다. 예시
  • 엔진 관련 기술적 내용을 논의[4]을 논의하는 곳이 있다.바로가기
  • 클로즈드 소스인 관계로 볼 수 있는 소스는 웹브라우저 개발 도구 열면 보이는 HTML, CSS 그리고 theseed.js 하나 그리고 스킨 js이다. 게다가 이것은 Node.js이 아니라 그냥 자바스크립트이다.[5] 참고로 이 스크립트는 현재도 남아있으나 내부 작동방식이 완전히 변경되면서 작동하지 않고 사용되지도 않는다.
  • 2018년 7월 기준 IP 차단 페이지인 IPACL에서 규칙 삭제(차단 해제) 시 뜨는 확인 메시지 내용이 "정말로?"이다(...). 문서 ACL에서는 "삭제하시겠습니까?". 현재는 IPACL은 사라졌다.
  • 405 오류를 404로 표시한다(...).[6]
  • 비로그인 상태로 편집 후 계정을 만든 후 기여를 이전하면 기여 목록에서 사용자 문서 생성 전에 기여가 있게 된다.
  • 4.16.0 버전부터 구 프론트엔드 사용이 불가능하다.
  • 나무위키에서 사용되는 the seed 엔진은 약간의 차이가 있다. 예를 들어서 기존 난수 토론 주소 접속 시 나무위키에서만 리다이렉트가 된다.
  • 4.13.0부터 API도 추가되었다. 다만 그냥 요청하면 400 코드가 반환되고 헤더를 약간 변경해야 한다. 이를 통해 브라우저를 통한 위키 접속 없이도 문서 조회 등이 가능하게 되었다.
  • 기존에는 요청 헤더에 사용자 에이전트가 없으면 역사 및 이미지가 작동하지 않았다. 현재는 수정되었다.

5. 장점[편집]

6. 단점[편집]

  • 엔진이 비공개라 개인이 위키를 만들 때 쓸 수 없다. 클로즈드 소스인 이유는 코딩 스타일을 이용해서 namu가 누구인지 청동이 추론할 수 있기 때문이라는 주장이 있다.
  • 닉네임을 영문, 숫자, 밑줄로만 설정할 수 있다.[9][10]
  • 파서 함수가 지원되지 않는다.

7. 특성[편집]

  • 시간을 내부적으로 초단위 유닉스 시간으로 처리하는 듯하다.
  • 프론트엔드 자바스크립트가 난독화되어있다. 4.14~15.0부터 시작되었다. 코드 패턴으로 보았을 때에는 obfuscator.io의 서비스를 이용하는 것으로 추정되며, 코드의 길이가 거의 2,000,000자리(...)에 달한다. 그리고 중간중간 의미없는 코드도 있고,[11] 모든 문자열을 배열에 모아놓고 함수로 접근하도록 되어있다.
  • 기존에는 HTML 클래스명이 일반적이었지만 4.13.0부터는 클래스명이 한 자리이고 data-v-<해시>라는 속성으로 요소를 구분하는데, 이 때문에 사용자 JS/CSS 제작이 약간 어려워진다. 거기다가 HTML의 중간중간에 <!---->(빈 주석)이 달려있다.
  • 4.12.0버전까지는 jQuery를 사용하였다.
  • 템플릿 엔진으로 Nuxt.js를 사용한다.
  • 4.13.0 버전에는 페이지 이동 시 페이드 애니메이션 효과가 있었으나 언제부턴가 사라졌다.
[1] 알파위키와 나무위키는 관계가 최악 그 자체다.[2] 쉽게 말해서 히든위키와 비슷하다.[3] 유저가 없어진 뒤 호스트 서버 오류로 사실상 폐쇄되었다(...)[4] 기능 추가 요청, 버그 제보 등[5] 당연한거다. Node.js 런타임은 서버에 있기 때문.[6] 다만 Express.js 특성상 이렇게 되기는 한다. 거기에서는 app.get로 GET 요청을, app.post로 POST 요청을 처리하는데 POST 전용 페이지의 경우 app.get 코드가 아예 없다면 404가 뜨게 되는 것.[7] 미디어위키는 일부 문법에서 html 태그를 사용하는 데 비해, the seed는 그런 거 없다[8]. 나무마크 문서 참조. 다만 이게 나무마크에 있어서도 문제점으로 작용하기도 하는데, HTML 문법이 제한되어 있어 복잡한 틀을 만들기가 심히 어렵다.[8] html을 사용할 수 있는 문법이 있긴 하다. 다만 심히 불편할 뿐더러 이미지 삽입 및 CSS조차 지원이 빈약하다는 문제점이 있다.[9] 다만 나무위키는 한글 닉네임이 있는것으로 보아 강제적으로도 한글 닉네임을 사용할 수 있는 것 같다.[10] 숫자나 밑줄로 시작하면 안 된다. 또한 3자 이상 32자 이하이여야 한다.[11] 보통 함수가 만들어져있는데 실행해봤자 의미가 없는 코드로 구성되어있고, 한 번 호출하고 사용되지 않는 함수들이 해당된다. 이미 코드 초반부에 3개가 있다.