openNAMU(r95 Blame)

r95
r87
1[[분류:openNAMU]]
r81
2[include(틀:위키 엔진)]
3||<-2><table align=right><tablewidth=400><tablebordercolor=#008679><tablebgcolor=#ffffff,#2d2f34><tablecolor=#fff> {{{#!wiki style="margin: -5px -10px; padding: 7px 10px; background-image: linear-gradient(to right, #007d72, #00a495)"
4{{{+1 '''오픈나무'''}}}[br]openNAMU}}} ||
5||<-2><height=110px> [[파일:openNAMU.svg|width=60%]] ||
6||<colbgcolor=#008679> '''종류''' ||[[위키 엔진]] ||
7|| '''주요 언어''' ||<colcolor=#373a3c,#dddddd>[[Python|파이썬]] ||
8|| '''지원 문법''' ||[[나무마크]][* 정식적인 이름은 오픈나무마크. [[https://2du.pythonanywhere.com/w/나무마크|#]]], 마크다운[*예정] ||
9|| '''지원 언어''' ||[[한국어]], [[영어]] ||
10|| '''개발자''' ||2du, [[https://github.com/openNAMU/openNAMU/graphs/contributors|기여자]] ||
11|| '''라이선스''' ||BSD 3-Clause License ||
12|| '''브랜치''' ||dev, beta[*기본값], stable, master ||
13|| '''최신 버전''' ||v3.4.6 ||
14||<-2><bgcolor=#fff,#2d2f34><color=#373a3c> [[https://github.com/openNAMU/openNAMU|GitHub]] | [[https://2du.pythonanywhere.com|ONTS]] ||
15||<-2>||
16[목차]
17[clearfix]
18== 개요 ==
r83
19파이썬 기반으로 만들어진 위키 엔진이다.
r81
20
21== 특징 ==
22 * 이름은 [[the seed]] 같은 엔진을 만들기 위해 openNAMU로 지었다고 한다. [[https://2du.pythonanywhere.com/w/openNAMU#s-2|#]]
r95
23 * 현재는 [[the seed]] 엔진과는 거리가 멀어졌기 때문에 [[the tree]][* 대안으로 [[imitated seed]]나 [[PressDo]]도 존재한다.]를 사용해 보자.
r85
24 * 현재는 [[나무마크]]를 지원하는 별개의 엔진이 되었다. 그렇기 때문에 issue나 PR 올릴 때 감안하고 올리도록 하자.[* 예를 들면 the seed에도 있으니까 똑같이 만들어 달라라던지, 단어들을 the seed 형식으로 바꿔 달라는지 등등...]
r81
25 * 파이썬 기반으로 만들어져 있기 때문에 파이썬을 지원하지 않는 호스팅은 구동할 수 없다. AWS의 EC2 같은 호스팅을 고려해 보자.
26 * 오픈나무는 [[인터넷 익스플로러]]의 지원이 끝났기 때문에 인터넷 익스플로러로 접속하면 [[엣지]]로 켜진다.
27 * 개발자가 쓰려고 만든 기능이 꽤 있다. [[https://github.com/openNAMU/openNAMU/issues/1216|오늘의 개인 문서]]
28 * 오픈나무에서 사용되는 나무마크의 정식 이름은 오픈나무마크라고 한다. 그래서 [[the seed]]에서 쓰이는 나무마크와는 살짝 다른 점도 있다. [[https://2du.pythonanywhere.com/w/오픈나무마크|#]]
29 * 아직 네임스페이스가 지원되지 않는다. 하지만 지원할 계획은 있어 보인다. [[https://github.com/openNAMU/openNAMU/issues/782|#]]
30 * 버그 패치 속도가 매우 빠르다. 웬만하면 3-4일이면 수정이 된다.
31 * 개발 이념이 가볍게, 간단하게이다. 개발 이념에 맞게 설치가 엄청 간단하다. [[https://2du.pythonanywhere.com/w/openNAMU%2F개발%20이념|#]]
r85
32 * 개발 이념에 충실하여 B급 감성이 듬뿍이다. 안 좋게 표현한다면 구조가 좀 어설프다. 이 단점은 커스텀 하기 쉬워지고 유지보수하기 쉽다는 장점도 있다.
r81
33 * 이스터에그가 존재'''했'''다. [[https://github.com/openNAMU/openNAMU/blob/124c04155ec5996c1392d6b38213d0d1ad1d1d94/views/main_css/file/easter_egg.html|#]]
r94
34 * 현재 사용 중인 브랜치는 4개이다.
35 * dont_use는 개발 중인 버전, dev는 개발 버전, beta는 베타, stable은 안정 버전으로 총 4개로 분류되어 있다.
36 * dont_use에서 신규 기능을 만들다가 거의 완성되면 dev로 보내 테스트를 진행하며 1주 내로 발견된 버그를 찾아 패치 후 beta로 보낸다. stable는 3개월 가량 지나 버그 없이 안정되는 버전이 해당된다.
r95
37 * ~~master 브랜치는 3개로 나눠지기 전에 사용하던 브랜치이다. 흔적을 보면 dev 자리였는 듯.~~ 현재는 dont_use가 생기며 사라졌다. [[https://github.com/openNAMU/openNAMU/commit/ca77e83d146dbd493233dbb2a4403ca026cb3002|#]]
r81
38
r94
39== 장점 및 단점 ==
40 * 장점
41 * 오픈 소스인 위키 엔진 중 나무마크 호환이 가장 좋다.
42 * 설치 과정이 아주 쉽다.
43 * 타 위키 엔진들보다 안정적이기 때문에 정식 위키에서 사용해도 문제 없을 정도이다.
44 * 업데이트를 엔진 안에서 진행할 수 있는 등, 초보도 편하게 운영할 수 있다.
45 * 단점
46 * [[나무위키]]에서 넘어온 사람들은 the seed와 상당 부분[* ACL, 위키 설정, 이름공간 시스템 등]이 다르기 때문에 적응의 시간이 필요하다.
47 * 동기 형식이기 때문에 다른 사람이 문서 로딩하고 있을 때는 문서 로딩이 안된다.[* 서버에서 1명씩 처리된다고 생각하면 쉽다.]
48 * 파이썬을 지원하는 웹 호스팅은 거의 없기 때문에 호스팅을 잘 찾아봐야 한다. 미디어위키를 제외한 다른 위키 엔진도 공통된 문제를 가지고 있기 때문에 큰 단점은 아니다.
49
r81
50== 역사 ==
51=== Node.js ===
52 * [[https://github.com/openNAMU/Discard-openNAMU-Legacy|Github]]
53----
54 * 2016년 4월 23일, [[https://github.com/openNAMU/Discard-openNAMU-Legacy/commit/fb5f110895ddc8d63f0d47d1306980f2cd58cb69|첫 커밋]]이 올라가면서 오픈나무의 역사가 시작되었다.
55 * 저장 방식을 많이 변경했다. (JSON → TXT → MySQL)
56 * 개발자가 Node.js의 한계를 느꼈는지 언어를 변경하면서 [[https://github.com/openNAMU/Discard-openNAMU-Legacy/commit/f71fc6d2958fdb898d42ff7347829c29a3777b17|마지막 커밋]]을 끝으로 Node.js 버전은 끝나게 되었다.
57
58=== 파이썬 ===
59 * [[https://github.com/openNAMU/openNAMU/blob/646c471b3b3d7b73c7e9838249799bc2e42f5c1d/version-ko.md|v3.0 이전 업데이트 내역]]
60----
61 * DB를 다음과 같이 변경하였다. MySQL → SQLite → MySQL, SQLite
62 * v3.3.0 때 JS 오픈나무마크로 렌더러가 바뀌면서 [[레거시 엣지]]에서는 RAW만 출력되는 오류가 있었는데, v3.4.5와서 신형 렌더러로 변경되고 문제가 해결되었다.
63
64== 사용하는 위키 ==
65[include(틀:openNAMU 사용하는 위키)]
66[include(틀:상세 내용, 문서=openNAMU/사용 위키)]