{"id":24743865,"url":"https://github.com/gdl-blue/imitated-seed-2","last_synced_at":"2025-06-17T23:38:09.175Z","repository":{"id":39603256,"uuid":"269983560","full_name":"gdl-blue/imitated-seed-2","owner":"gdl-blue","description":"더시드 *구버전* 모방 엔진","archived":false,"fork":false,"pushed_at":"2024-06-24T10:53:26.000Z","size":922,"stargazers_count":31,"open_issues_count":65,"forks_count":41,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-03T21:23:35.396Z","etag":null,"topics":["namumark","namuwiki","the-seed","theseed","wiki","wiki-engine"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gdl-blue.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-06-06T13:04:27.000Z","updated_at":"2024-12-21T08:17:43.000Z","dependencies_parsed_at":"2023-01-30T01:01:26.293Z","dependency_job_id":null,"html_url":"https://github.com/gdl-blue/imitated-seed-2","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/gdl-blue/imitated-seed-2","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gdl-blue%2Fimitated-seed-2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gdl-blue%2Fimitated-seed-2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gdl-blue%2Fimitated-seed-2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gdl-blue%2Fimitated-seed-2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gdl-blue","download_url":"https://codeload.github.com/gdl-blue/imitated-seed-2/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gdl-blue%2Fimitated-seed-2/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260458836,"owners_count":23012503,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["namumark","namuwiki","the-seed","theseed","wiki","wiki-engine"],"created_at":"2025-01-28T01:49:03.872Z","updated_at":"2025-06-17T23:38:04.152Z","avatar_url":"https://github.com/gdl-blue.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## **참고!**\n**이 엔진은 the seed 옛 프론트엔드를 중점적으로 모방하는 프로젝트이다. 지금과는 꽤 이질적이었으며, SPA가 사용되지 않았다. 나무위키, 알파위키 또는 더시드위키를 2020년 3월 이후에 처음 접했으면 '내가 생각하는 더 시드 엔진이 아닌데?'라고 생각하는 것이 당연할 것이다.**\n\n## 개요\n더시드 엔진 (구 프론트엔드 기준) 모방 프로젝트.  \n\u003c \"엔진 내부 UI는 상관없음.\" ( https://feedback.theseed.io/posts/280 ) \u003e  \n\n[onamu-theseed](https://github.com/gdl-blue/onamu-theseed)의 후속이다.\n\n이 엔진이 정상 작동하는 것으로 확인된 Node.js 버전은 8.6.0, 12.16.2, 12.18.1, 16.6.2이다. 만약 혹시나 Windows XP/Vista에서 실행이 필요한 경우 [이것](https://github.com/hlizard/node8-xp/raw/v8.6.0-xp/Release/Release.zip)을 사용할 것.\n\n테스트 서버:\n- [내 서버](https://go2021.glitch.me) - the seed 4.11.2\n- ~~[test님의 서버](https://seore.org) - the seed 4.20.0, Nuxt.js로 포팅됨~~\n- [테스트위키](https://testwiki.kr) - the seed 4.22.9\n\n나무픽스와 거의 호환된다.\n\nPull Request 시 서버 코드에는 `?.`, `??`, `import` 등의 신문법, 프론트엔드 자바스크립트에는 ES6 이상 문법을 사용하지 말 것.\n\n파서 함수 이름이 마크다운인 이유는 개발 초기에는 마크다운을 사용했기 때문이다.\n\n## 기초 사용 방법\n- **만약 config.json에서 `use_external_js`과 `use_external_css`이 true이면 아래 단계는 생략해도 된다.** 스킨만 추가하면 된다.\n  - css, js 디렉토리를 만든다.\n    - https://theseed.io/js/theseed.js, https://theseed.io/js/jquery-2.1.4.min.js, https://theseed.io/js/jquery-1.11.3.min.js, https://theseed.io/js/intersection-observer.js, https://theseed.io/js/dateformatter.js )를 각각 다운로드받아 js 디렉토리에 복사한다.\n    - https://theseed.io/css/wiki.css, https://theseed.io/css/katex.min.css, https://theseed.io/css/diffview.css )를 각각 다운로드받아 css 디렉토리에 복사한다.\n- skins 디렉토리를 만든다.\n  - [buma](https://github.com/LiteHell/theseed-skin-buma/tree/d77eef50a77007da391c5082b4b94818db372417), [liberty](https://github.com/namuwiki/theseed-skin-liberty/tree/153cf78f70206643ec42e856aff8280dc21eb2c0) 등 원하는 스킨을 내려받고 skins 디렉토리에 스킨 이름으로 하위디렉토리를 만들어 복사한다.\n- `npm i`를 실행한다.\n- `node server`를 실행한다.\n\n## 이메일 설정법 [Gmail]\n- 먼저 \"자신사이트주소/admin/config\" 에 접속해 `사이트 주소`란에 자신의 사이트주소를 입력한다.\n- config.json 파일을 열고 `\"disable_email\":\"true\"`를 제거한다.\n- `\"mailhost\":\"smtp.gmail.com\",\"email\":\"인증메일을 보낼 Gmail 주소\",\"passwd\":\"구글 앱 비밀번호\"`를 추가한다.\n- [[구글 앱 비밀번호 설정링크]](https://myaccount.google.com/apppasswords)\n- 타사메일의 경우 smtp.gmail.com을 타사메일의 smtp주소로 변경해야함.\n\n## 추가 도구\n- backlink-reset.js: 역링크 초기화\n- undelete-thread.js: 삭제된 토론 복구\n- namuwiki-importer.js: 나무위키 데이타베이스 덤프 가져오기\n\n## config.json\n- config.json 수정으로 숨겨진 설정을 제어할 수 있다.\n  - `disable_email`: (기본값 false) 전자우편 인증을 끈다.\n  - `disable_login_history`: (기본값 false) 로그인 내역을 기록하지 않게 한다.\n  - `use_external_js`: (기본값 false) theseed.js, jQuery 등을 [theseed.io](https://theseed.io)에서 불러온다.\n  - `use_external_css`: (기본값 false) wiki.css 등을 [theseed.io](https://theseed.io)에서 불러온다.\n  - `allow_account_deletion`: (기본값 false) 계정 탈퇴를 허용한다.\n  - `allow_account_rename`: (기본값 false) 닉네임 변경을 허용한다.\n  - `search_host`: (기본값 \"127.5.5.5\") 검색 서버 호스트 주소\n  - `search_port`: (기본값 25005) 검색 서버 포트\n  - `search_autostart`: (기본값 false) 같은 디렉토리에 검색 서버 프로그램(search.js)이 있을 경우 위키 서버 시작 시 검색 서버를 같이 시작시킨다.\n  - `no_username_format`: (기본값 false) 한글, 공백 등의 특수문자를 사용자 이름으로 쓸 수 있게 하고 길이 제한을 없앤다.\n  - `owners`: (기본값 \\[\\]) /admin/config에 접속할 수 있는 사용자 이름 배열\n  - `reserved_usernames`: (기본값 \\[\"namubot\"\\]) 이 배열 안에 있는 닉네임으로 계정을 만들 수 없다.\n  - `theseed_version`: (기본값 \"4.12.0\") [the seed 판올림 기록](https://namu.wiki/w/the%20seed/%EC%97%85%EB%8D%B0%EC%9D%B4%ED%8A%B8#toc)을 참고하여, 모방할 the seed 엔진의 버전을 지정한다(형식 주의! 4.4(X), \"4.4\"(X), 4.4.1(X), \"4.4.1\"(O) 문자열 x.y.z 형식으로). 예를 들어, \"4.4.2\"로 할 경우, v4.4.3에 추가된 쓰레드 주제/문서 변경 기능을 사용할 수 없고, \"4.18.0\"으로 할 경우 IPACL과 사용자 차단 기능이 비활성화되고 ACLGroup가 활성화되며 ACL에서 이름공간ACL 실행 action를 사용할 수 있다.\n  - `replicate_theseed_license`: (기본값 false) 라이선스 페이지를 더시드 엔진처럼 띄운다. 가급적이면 쓰지 않는 것을 권장한다.\n  - `namuwiki_exclusive`: (기본값 false) 나무위키 전용 기능(경고 ACL 그룹, 문서 이전 판 경고 등)을 활성화한다.\n  - `enable_captcha`: (기본값 false) 보안문자를 쓰게 한다.\n  - `block_ip`: (기본값 []) 접속을 차단할 IP를 지정한다. CIDR는 지원하지 않는다.\n  - `protect_owner`: (기본값 false) 소유자 보호 기능을 활성화한다.\n  - `disable_multithreading`: (기본값 true) 멀티쓰레딩을 비활성화한다.\n  - `custom_namespaces`: (기본값 []) 사용자 지정 이름공간 배열\n  - `sessionhttp`: (기본값 false) true로 설정시, https접속시에만 로그인이 유지된다.\n  - `mailhost`: (기본값 []) 이메일 호스트 설정.\n  - `email`: (기본값 []) 이메일 주소.\n  - `passwd`: (기본값 []) 이메일 주소의 비밀번호(gmail의 경우 앱 비밀번호).\n  - `disable_file_server`: (기본값 false) 별도 파일 서버 없이도 파일 업로드가 가능하게 한다.\n  - `max_file_size`: (기본값 2000000) 최대 파일 크기 (바이트 단위)\n\n## 라이선스\n자유롭게 쓰기 바란다.\n\n## 더 시드와 다른 것들\n- 엔진에서 백엔드와 프론트엔드를 모두 처리한다. (오픈나무에서 영향 받음)\n- 밀리초 유닉스 시간을 사용한다.\n- /notify/thread 라우트가 제대로 되어있지 않다.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgdl-blue%2Fimitated-seed-2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgdl-blue%2Fimitated-seed-2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgdl-blue%2Fimitated-seed-2/lists"}