diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md
deleted file mode 100644
index 887a2c44f..000000000
--- a/CODE_OF_CONDUCT.md
+++ /dev/null
@@ -1,90 +0,0 @@
-# Citizen Code of Conduct
-
-## 1. Purpose
-
-A primary goal of the Quartz community is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof).
-
-This code of conduct outlines our expectations for all those who participate in our community, as well as the consequences for unacceptable behavior.
-
-We invite all those who participate in the Quartz community to help us create safe and positive experiences for everyone.
-
-## 2. Open [Source/Culture/Tech] Citizenship
-
-A supplemental goal of this Code of Conduct is to increase open [source/culture/tech] citizenship by encouraging participants to recognize and strengthen the relationships between our actions and their effects on our community.
-
-Communities mirror the societies in which they exist and positive action is essential to counteract the many forms of inequality and abuses of power that exist in society.
-
-If you see someone who is making an extra effort to ensure our community is welcoming, friendly, and encourages all participants to contribute to the fullest extent, we want to know.
-
-## 3. Expected Behavior
-
-The following behaviors are expected and requested of all community members:
-
-- Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community.
-- Exercise consideration and respect in your speech and actions.
-- Attempt collaboration before conflict.
-- Refrain from demeaning, discriminatory, or harassing behavior and speech.
-- Be mindful of your surroundings and of your fellow participants. Alert community leaders if you notice a dangerous situation, someone in distress, or violations of this Code of Conduct, even if they seem inconsequential.
-- Remember that community event venues may be shared with members of the public; please be respectful to all patrons of these locations.
-
-## 4. Unacceptable Behavior
-
-The following behaviors are considered harassment and are unacceptable within our community:
-
-- Violence, threats of violence or violent language directed against another person.
-- Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language.
-- Posting or displaying sexually explicit or violent material.
-- Posting or threatening to post other people's personally identifying information ("doxing").
-- Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability.
-- Inappropriate photography or recording.
-- Inappropriate physical contact. You should have someone's consent before touching them.
-- Unwelcome sexual attention. This includes, sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances.
-- Deliberate intimidation, stalking or following (online or in person).
-- Advocating for, or encouraging, any of the above behavior.
-- Sustained disruption of community events, including talks and presentations.
-
-## 5. Weapons Policy
-
-No weapons will be allowed at Quartz community events, community spaces, or in other spaces covered by the scope of this Code of Conduct. Weapons include but are not limited to guns, explosives (including fireworks), and large knives such as those used for hunting or display, as well as any other item used for the purpose of causing injury or harm to others. Anyone seen in possession of one of these items will be asked to leave immediately, and will only be allowed to return without the weapon. Community members are further expected to comply with all state and local laws on this matter.
-
-## 6. Consequences of Unacceptable Behavior
-
-Unacceptable behavior from any community member, including sponsors and those with decision-making authority, will not be tolerated.
-
-Anyone asked to stop unacceptable behavior is expected to comply immediately.
-
-If a community member engages in unacceptable behavior, the community organizers may take any action they deem appropriate, up to and including a temporary ban or permanent expulsion from the community without warning (and without refund in the case of a paid event).
-
-## 7. Reporting Guidelines
-
-If you are subject to or witness unacceptable behavior, or have any other concerns, please notify a community organizer as soon as possible. j.zhao2k19@gmail.com.
-
-Additionally, community organizers are available to help community members engage with local law enforcement or to otherwise help those experiencing unacceptable behavior feel safe. In the context of in-person events, organizers will also provide escorts as desired by the person experiencing distress.
-
-## 8. Addressing Grievances
-
-If you feel you have been falsely or unfairly accused of violating this Code of Conduct, you should notify @jackyzha0 with a concise description of your grievance. Your grievance will be handled in accordance with our existing governing policies.
-
-## 9. Scope
-
-We expect all community participants (contributors, paid or otherwise; sponsors; and other guests) to abide by this Code of Conduct in all community venues--online and in-person--as well as in all one-on-one communications pertaining to community business.
-
-This code of conduct and its related procedures also applies to unacceptable behavior occurring outside the scope of community activities when such behavior has the potential to adversely affect the safety and well-being of community members.
-
-## 10. Contact info
-
-j.zhao2k19@gmail.com
-
-## 11. License and attribution
-
-The Citizen Code of Conduct is distributed by [Stumptown Syndicate](http://stumptownsyndicate.org) under a [Creative Commons Attribution-ShareAlike license](http://creativecommons.org/licenses/by-sa/3.0/).
-
-Portions of text derived from the [Django Code of Conduct](https://www.djangoproject.com/conduct/) and the [Geek Feminism Anti-Harassment Policy](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy).
-
-_Revision 2.3. Posted 6 March 2017._
-
-_Revision 2.2. Posted 4 February 2016._
-
-_Revision 2.1. Posted 23 June 2014._
-
-_Revision 2.0, adopted by the [Stumptown Syndicate](http://stumptownsyndicate.org) board on 10 January 2013. Posted 17 March 2013._
diff --git a/README.md b/README.md
deleted file mode 100644
index 27d6dbdb0..000000000
--- a/README.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# Quartz v4
-
-> “[One] who works with the door open gets all kinds of interruptions, but [they] also occasionally gets clues as to what the world is and what might be important.” — Richard Hamming
-
-Quartz is a set of tools that helps you publish your [digital garden](https://jzhao.xyz/posts/networked-thought) and notes as a website for free.
-Quartz v4 features a from-the-ground rewrite focusing on end-user extensibility and ease-of-use.
-
-🔗 Read the documentation and get started: https://quartz.jzhao.xyz/
-
-[Join the Discord Community](https://discord.gg/cRFFHYye7t)
-
-## Sponsors
-
-
\ No newline at end of file
diff --git a/obsidian_templater/001. Formatting/[Formatting]제목3(Heading3).md b/obsidian_templater/001. Formatting/[Formatting]제목3(Heading3).md
new file mode 100644
index 000000000..69c4fea84
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]제목3(Heading3).md
@@ -0,0 +1,8 @@
+<%*
+var sel = window.getSelection && window.getSelection();
+if (sel && sel.rangeCount > 0) {
+ var selected = sel.getRangeAt(0).toString();
+ }
+-%>
+
+
<%selected%>
\ No newline at end of file
diff --git a/obsidian_templater/001. Formatting/[Formatting]제목4(Heading4).md b/obsidian_templater/001. Formatting/[Formatting]제목4(Heading4).md
new file mode 100644
index 000000000..0bcf88032
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]제목4(Heading4).md
@@ -0,0 +1,8 @@
+<%*
+var sel = window.getSelection && window.getSelection();
+if (sel && sel.rangeCount > 0) {
+ var selected = sel.getRangeAt(0).toString();
+ }
+-%>
+
+
<%selected%>
\ No newline at end of file
diff --git a/obsidian_templater/001. Formatting/[Formatting]제목5(Heading5).md b/obsidian_templater/001. Formatting/[Formatting]제목5(Heading5).md
new file mode 100644
index 000000000..54c5866fd
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]제목5(Heading5).md
@@ -0,0 +1,8 @@
+<%*
+var sel = window.getSelection && window.getSelection();
+if (sel && sel.rangeCount > 0) {
+ var selected = sel.getRangeAt(0).toString();
+ }
+-%>
+
+
<%selected%>
\ No newline at end of file
diff --git a/obsidian_templater/001. Formatting/[Formatting]제목6(Heading6).md b/obsidian_templater/001. Formatting/[Formatting]제목6(Heading6).md
new file mode 100644
index 000000000..9d62358e9
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]제목6(Heading6).md
@@ -0,0 +1,8 @@
+<%*
+var sel = window.getSelection && window.getSelection();
+if (sel && sel.rangeCount > 0) {
+ var selected = sel.getRangeAt(0).toString();
+ }
+-%>
+
+
<%selected%>
\ No newline at end of file
diff --git a/obsidian_templater/001. Formatting/[Formatting]체크박스, 할 일(Checkbox, Task).md b/obsidian_templater/001. Formatting/[Formatting]체크박스, 할 일(Checkbox, Task).md
new file mode 100644
index 000000000..544d6ab2e
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]체크박스, 할 일(Checkbox, Task).md
@@ -0,0 +1,7 @@
+<%*
+var sel = window.getSelection && window.getSelection();
+if (sel && sel.rangeCount > 0) {
+ var selected = sel.getRangeAt(0).toString();
+ }
+-%>
+- [ ] <%selected%>
\ No newline at end of file
diff --git a/obsidian_templater/001. Formatting/[Formatting]취소선(Strikeout).md b/obsidian_templater/001. Formatting/[Formatting]취소선(Strikeout).md
new file mode 100644
index 000000000..8237a82e9
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]취소선(Strikeout).md
@@ -0,0 +1,7 @@
+<%*
+var sel = window.getSelection && window.getSelection();
+if (sel && sel.rangeCount > 0) {
+ var selected = sel.getRangeAt(0).toString();
+ }
+-%>
+~~<%selected%>~~
\ No newline at end of file
diff --git a/obsidian_templater/001. Formatting/[Formatting]코드블록(Code block).md b/obsidian_templater/001. Formatting/[Formatting]코드블록(Code block).md
new file mode 100644
index 000000000..e228cdd17
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]코드블록(Code block).md
@@ -0,0 +1,3 @@
+```java
+System.out.println("hello world!");
+```
\ No newline at end of file
diff --git a/obsidian_templater/001. Formatting/[Formatting]표(Table).md b/obsidian_templater/001. Formatting/[Formatting]표(Table).md
new file mode 100644
index 000000000..e7a384e1e
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]표(Table).md
@@ -0,0 +1,5 @@
+|기본값|왼쪽 정렬|가운데 정렬|오른쪽 정렬|
+|---|:---|:---:|---:|
+|내용 1|내용 2|내용 3|내용 4|
+|내용 5|내용 6|내용 7|내용 8|
+|내용 9|내용 10|내용 11|내용 12|
diff --git a/obsidian_templater/001. Formatting/[Formatting]하이라이트(Highlight).md b/obsidian_templater/001. Formatting/[Formatting]하이라이트(Highlight).md
new file mode 100644
index 000000000..a13667192
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]하이라이트(Highlight).md
@@ -0,0 +1,7 @@
+<%*
+var sel = window.getSelection && window.getSelection();
+if (sel && sel.rangeCount > 0) {
+ var selected = sel.getRangeAt(0).toString();
+ }
+-%>
+==<%selected%>==
\ No newline at end of file
diff --git a/obsidian_templater/001. Formatting/[Formatting]하이퍼링크(Hyperlink).md b/obsidian_templater/001. Formatting/[Formatting]하이퍼링크(Hyperlink).md
new file mode 100644
index 000000000..41bf7608a
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]하이퍼링크(Hyperlink).md
@@ -0,0 +1,37 @@
+<%*
+async function fetchMetadata(url) {
+ try {
+ let proxyUrl = "https://api.allorigins.win/get?url=" + encodeURIComponent(url);
+ let response = await fetch(proxyUrl);
+ let data = await response.json();
+ let parser = new DOMParser();
+ let doc = parser.parseFromString(data.contents, "text/html");
+ let title = doc.querySelector("title") ? doc.querySelector("title").innerText.trim() : "No Title";
+ let faviconTag = doc.querySelector("link[rel='icon'], link[rel='shortcut icon']");
+ let favicon = faviconTag ? faviconTag.href : "";
+ if (favicon && !favicon.startsWith("http")) {
+ let urlObj = new URL(url);
+ favicon = urlObj.origin + favicon;
+ }
+ return { title, favicon };
+ } catch (error) {
+ console.error("Error fetching metadata:", error);
+ return { title: "Unknown Title", favicon: "" };
+ }
+}
+
+const clipboard = await tp.system.clipboard();
+const metadata = await fetchMetadata(clipboard);
+let output = ``;
+
+if (metadata.favicon) {
+ output += ``;
+ output += ``;
+ output += `${metadata.title}`;
+} else {
+ output += `${metadata.title}`;
+}
+
+output += ``;
+-%>
+<% output %>
diff --git a/obsidian_templater/001. Formatting/[Formatting]현재시각, 타임스탬프(Timestamp).md b/obsidian_templater/001. Formatting/[Formatting]현재시각, 타임스탬프(Timestamp).md
new file mode 100644
index 000000000..94d169d0f
--- /dev/null
+++ b/obsidian_templater/001. Formatting/[Formatting]현재시각, 타임스탬프(Timestamp).md
@@ -0,0 +1 @@
+<% tp.date.now("YYYYMMDD_HHmmss") %>
\ No newline at end of file
diff --git a/obsidian_templater/002. Templater/[Template]Any Note(Book, Idea, Recap).md b/obsidian_templater/002. Templater/[Template]Any Note(Book, Idea, Recap).md
new file mode 100644
index 000000000..b7338df08
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]Any Note(Book, Idea, Recap).md
@@ -0,0 +1,29 @@
+---
+tags:
+---
+<%*
+let now = new Date();
+now.setHours(now.getHours() + 9);
+let dateString = now.toISOString().replace(/[-T:.Z]/g, '').slice(0, 14);
+let file_written_date = dateString.substr(0,8) + '_' +dateString.substr(8,14);
+
+await tp.file.rename(file_written_date + ":")
+-%>
+
+- [ ] is writing done?
+# Entry Point
+
+
+## Why i taking this note?
+
+
+## Outline / Summary
+
+
+# Main Text
+
+
+# Outgoing Link & Reference
+
+
+# Further Information & Research
diff --git a/obsidian_templater/002. Templater/[Template]Blog Post.md b/obsidian_templater/002. Templater/[Template]Blog Post.md
new file mode 100644
index 000000000..a835feace
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]Blog Post.md
@@ -0,0 +1,15 @@
+`Publishing Timestamp : <% tp.date.now("YYYYMMDD_HHmmss") %>`
+`Last Modified : -`
+
+Tags : #태그
+
+---
+
+# 제목 1
+
+
+# 제목 2
+
+
+# 제목 3
+
diff --git a/obsidian_templater/002. Templater/[Template]Daily Notes.md b/obsidian_templater/002. Templater/[Template]Daily Notes.md
new file mode 100644
index 000000000..eb9a2b8a2
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]Daily Notes.md
@@ -0,0 +1,61 @@
+---
+date: <% tp.date.now("YYYYMMDDHHmmss") %>
+tags:
+aliases:
+cssClass:
+publish:
+---
+<%*
+let now = new Date();
+now.setHours(now.getHours() + 9);
+let dateString = now.toISOString().replace(/[-T:.Z]/g, '').slice(0, 14);
+let file_written_date = dateString.substr(0,4) + '-' + dateString.substr(4,2) + '-' + dateString.substr(6,2) ;
+
+await tp.file.rename(file_written_date)
+-%>
+
+- [ ] is writing done?
+***
+creation date: <% tp.date.now("dddd Do MMMM YYYY HH:mm:ss") %>
+modification date: <% tp.file.last_modified_date("dddd Do MMMM YYYY HH:mm:ss") %>
+[출근시각:: ]
+[퇴근시각:: ]
+
+
+***
+<< [[<% tp.date.now("YYYY-MM-DD", -1) %>]] | [[<% tp.date.now("YYYY-MM-DD", 1) %>]] >>
+# Daily Quote
+
+<% tp.web.daily_quote() %>
+
+***
+# Note
+
+- 여기에 내용을 입력하세요
+
+***
+# Todo
+
+`- [ ] 할 일을 체크박스 형식으로 적어주세요. (taks plugin 활용)`
+
+***
+
+
+***
+# Written today
+
+```dataview
+LIST
+FROM ""
+WHERE file.cday = this.file.day
+SORT file.name
+```
+
+# Modified today(without created)
+```dataview
+LIST
+FROM ""
+WHERE file.mday = this.file.day AND file.cday != this.file.day
+SORT file.name
+```
+***
diff --git a/obsidian_templater/002. Templater/[Template]Recipe.md b/obsidian_templater/002. Templater/[Template]Recipe.md
new file mode 100644
index 000000000..8f83f6a4e
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]Recipe.md
@@ -0,0 +1,35 @@
+---
+ingredients:
+- apples: 1
+- pears: 2
+- oranges: 3
+ingredients_optional:
+- grape: 4
+category:
+tags:
+cooking_time:
+difficulty:
+aliases:
+cssClass:
+publish:
+---
+- [ ] is writing done?
+***
+# 재료
+>[!warning] Please
+> - Frontmatter의 ingredients에 적힌 재료명을, obsidian link : `[[]]` 를 통해 해당 섹션에도 삽입해주세요.
+> - ex) `[[apples]], [[pears]], [[oranges]]`
+> - 추후 backlink를 통해 검색과 재료 설명, 대체제 설명 등을 원활하게 하기 위함입니다.
+
+
+
+***
+# 조리방법(순서)
+
+1. text
+***
+# 참조 링크
+
+1. text
+***
+# Note
\ No newline at end of file
diff --git a/obsidian_templater/002. Templater/[Template]Study(Index Page).md b/obsidian_templater/002. Templater/[Template]Study(Index Page).md
new file mode 100644
index 000000000..17307ee1d
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]Study(Index Page).md
@@ -0,0 +1,41 @@
+---
+date: <% tp.date.now("YYYYMMDDHHmmss") %>
+type:
+title:
+aliases:
+author(lecturer):
+tags:
+category:
+status:
+cssClass:
+publish:
+---
+
+
Cover Image
+
+![[sample image(for template).png| 400x400 ]]
+
+***
+
+>[!caution]
+>- **Study 글에서 Frontmatter 작성 시**, 아래와 같은 규칙을 반드시 지켜주세요.
+> - **type**는 book, lecture, paper 중 하나로 선택
+
+***
+
Contents
+
+1. text
+
+***
+
Link
+
+- link
+
+***
+
Other Metadata(Optional)
+
+- [start_read_date:: <% tp.file.creation_date() %>]
+- [finish_read_date:: ]
+- [total_page:: ]
+- [book_note:: ]
+- [my_rate:: ]
\ No newline at end of file
diff --git a/obsidian_templater/002. Templater/[Template]Study(Index Page)_(P) Paper.md b/obsidian_templater/002. Templater/[Template]Study(Index Page)_(P) Paper.md
new file mode 100644
index 000000000..ba3b542b2
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]Study(Index Page)_(P) Paper.md
@@ -0,0 +1,84 @@
+
+
+---
+date: <% tp.date.now("YYYYMMDDHHmmss") %>
+type: paper
+doi:
+tags:
+year:
+journal:
+aliases:
+
+
+>[!caution]
+>- **Study 글에서 Frontmatter 작성 시**, 아래와 같은 규칙을 반드시 지켜주세요.
+> - **type**는 book, lecture, paper 중 하나로 선택
+
+- [ ] is writing done?
+
+# (Info) Note
+
+***
+- 논문과 관련된 개인 기록 사항이 있을 시 기록
+
+***
+
+# APA 7th Citation
+
+***
+
+***
+
+# Abstract
+
+***
+
+***
+
+# Introduction
+
+***
+
+***
+
+# Literature Review
+
+***
+
+***
+
+# Contribution
+
+***
+
+***
+
+# Problem Statement and Definitions
+
+***
+
+***
+
+# Analysis(Experimental Results)
+
+***
+
+***
+
+# Conclusion
+
+***
+
+***
+
+# Limiation(Future Improvements)
+
+***
+
+***
+
+# Reference(Prior Works)
+
+***
+
+***
diff --git a/obsidian_templater/002. Templater/[Template]Zettelkasten note(memo).md b/obsidian_templater/002. Templater/[Template]Zettelkasten note(memo).md
new file mode 100644
index 000000000..e0034902b
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]Zettelkasten note(memo).md
@@ -0,0 +1,30 @@
+---
+tags:
+ - zettelkasten
+---
+<%*
+let now = new Date();
+now.setHours(now.getHours() + 9);
+let dateString = now.toISOString().replace(/[-T:.Z]/g, '').slice(0, 14);
+let file_written_date = dateString.substr(0,8);
+
+await tp.file.rename(file_written_date + "-여기에 제목 입력")
+-%>
+
+- [ ] is writing done?
+# 기록의 동기 / 필요성(Motivation, Need for Records)
+
+
+# 원자화된 설명(Explanation)
+
+
+# 활용과 한계(Uses)
+
+
+
+# 외부 링크 참조(Reference)
+> [!Important]
+> - `Alt+E` > `하이퍼링크(Hyperlink)`사용 가능
+> - 외부 링크가 아닌 다른 Zettelkasten 문서의 경우, 글을 쓰다 필요한 부분에 `[[]]`를 통해 링크할 것
+
+
diff --git a/obsidian_templater/002. Templater/[Template]add Anki Card:'빈칸 추론' with hint (shuffled words).md b/obsidian_templater/002. Templater/[Template]add Anki Card:'빈칸 추론' with hint (shuffled words).md
new file mode 100644
index 000000000..1797017db
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]add Anki Card:'빈칸 추론' with hint (shuffled words).md
@@ -0,0 +1,69 @@
+<%*
+const setStart = "START"
+const clipboard = await tp.system.clipboard()
+
+var Question = await tp.system.prompt("문제지(앞면)에 표시할 내용을 입력해주세요", clipboard)
+var Word = await tp.system.prompt("입력된 문장 중, 어느 영단어에 빈칸을 뚫으시겠습니까?", Question)
+var Answer = await tp.system.prompt("답안지(뒷면)에 표시할 내용을 입력해주세요")
+
+var Choices = Sentence.replace(/\s/g, ' / ');
+
+let now = new Date();
+now.setHours(now.getHours() + 9);
+let dateString = now.toISOString().replace(/[-T:.Z]/g, '').slice(0, 14);
+let ankiString = 'Anki ' + dateString.substr(0,8) + '_' +dateString.substr(8,14);
+await tp.file.rename(ankiString)
+-%>
+***
+> [!Information]
+> - 빈 칸이 길 때 사용합니다
+> -
+
+CREATED : <% tp.date.now("YYYY_MM_DD_HHmmss") %>
+
+<% setStart %>
+KOREANKI_WRITING_CLOZE
+Question: {{c1::<% Sentence %>}}
+Translation: <% Meaning %>
+Type?: 1
+Choices: <% Choices %>
+Solution:
+Title: 다음 문장(한글)을 읽고 외국어(영어)로 작문해주세요.
+Category:
+Unit:
+Image:
+END
+
+FILE TAGS: SENTENSE(KOR_to_ENG)
+TARGET DECK: Study English
+***
+
+
Commentary & Reference
+
+_문제의 해설을 적어주세요. 필요하다면 obsidian의 다른 문서나 외부 페이지도 참조해주세요_
+***
+- text
+
+***
+
+
Outgoing Link
+
+_이후에 읽어야 하거나 이후에 읽으면 좋을 글을 참조_
+***
+- text
+***
+
+> [!info] Note Type 앞의 # 지우기 + File명은 'ANKI + 생성된ID' 로 통일
+> Question: 여기에 **정답을 입력**(작문할 문장 전체를 cloze로 만들어주기)
+> - ex) {{c1::I've always had a great many worries, most of which were silly.}}
+> Translation: 정답 언어의 번역을 입력
+> Type?: 키보드 타이핑을 원하는 경우 1 입력
+> Choices: 위 Quesion에 입력한 문장을 원하는 단위로 쪼개줌 (Anki가 랜덤으로 섞음, **힌트 역할**)
+> - ex) I / have / always / had / a great many worries / most of which / were / silly.
+> Solution: 뒷면에 나오는 정답 해설
+> Title: 문제의 제목
+> Category: 카테고리 분류(우측 첫째줄)
+> Unit: 유닛 혹은 챕터명(우측 둘째줄)
+> Image: 이미지 입력
+
+`해당 Template은 KOREANKI 카페의 https://cafe.naver.com/koreanki/143 를 통해 작성하였습니다.`
\ No newline at end of file
diff --git a/obsidian_templater/002. Templater/[Template]add Anki Card:Quiz with Cloze.md b/obsidian_templater/002. Templater/[Template]add Anki Card:Quiz with Cloze.md
new file mode 100644
index 000000000..4e8392752
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]add Anki Card:Quiz with Cloze.md
@@ -0,0 +1,52 @@
+<%*
+const clipboard = await tp.system.clipboard()
+const setStart = "START"
+var Question = await tp.system.prompt("퀴즈 문제를 입력하세요. (cloze는 formatting을 사용해 작성 요)", clipboard)
+
+let now = new Date();
+now.setHours(now.getHours() + 9);
+let dateString = now.toISOString().replace(/[-T:.Z]/g, '').slice(0, 14);
+let ankiString = 'Anki ' + dateString.substr(0,8) + '_' +dateString.substr(8,14);
+await tp.file.rename(ankiString)
+
+-%>
+
+***
+
+CREATED : <% tp.date.now("YYYY_MM_DD_HHmmss") %>
+<%setStart%>
+KOREANKI_CLOZE
+Text: <%Question%>
+Extra:
+Title:
+Reference:
+Source:
+Category:
+Unit:
+END
+
+FILE TAGS: Quiz_with_Cloze
+TARGET DECK: Anki Quiz
+
+***
+
+
Commentary & Reference
+
+_문제의 해설을 적어주세요. 필요하다면 obsidian의 다른 문서나 외부 페이지도 참조해주세요_
+***
+- text
+
+***
+
+
Outgoing Link
+
+_이후에 읽어야 하거나 이후에 읽으면 좋을 글을 참조_
+***
+- text
+***
+
+> [!info] Note Type 앞의 # 지우기 + File명은 'ANKI + 생성된ID' 로 통일
+> Front: 앞면, cloze 입력 가능 {{c1:cloze}}
+> Back: 뒷면
+
+`해당 Template은 KOREANKI 카페의 https://cafe.naver.com/koreanki/13 를 통해 작성하였습니다.`
\ No newline at end of file
diff --git a/obsidian_templater/002. Templater/[Template]add Anki Card:Quiz with Context(Case Type Question).md b/obsidian_templater/002. Templater/[Template]add Anki Card:Quiz with Context(Case Type Question).md
new file mode 100644
index 000000000..cbbd32858
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]add Anki Card:Quiz with Context(Case Type Question).md
@@ -0,0 +1,69 @@
+<%*
+const clipboard = await tp.system.clipboard()
+const setStart = "START"
+var Question = await tp.system.prompt("퀴즈 문제(Context)를 입력하세요. (cloze는 formatting을 사용해 작성 요)", clipboard)
+
+let now = new Date();
+now.setHours(now.getHours() + 9);
+let dateString = now.toISOString().replace(/[-T:.Z]/g, '').slice(0, 14);
+let ankiString = 'Anki ' + dateString.substr(0,8) + '_' +dateString.substr(8,14);
+await tp.file.rename(ankiString)
+
+-%>
+
+***
+
+CREATED : <% tp.date.now("YYYY_MM_DD_HHmmss") %>
+<% setStart %>
+KOREANKI_BASIC_CONTEXT
+CONTEXT: <% Question %>
+Q1:
+A1:
+Personal Notes:
+Missed Questions:
+Q2:
+A2:
+Q3:
+A3:
+Q4:
+A4:
+Q5:
+A5:
+Q6:
+A6:
+Q7:
+A7:
+Q8:
+A8:
+Q9:
+A9:
+Q10:
+A10:
+END
+
+FILE TAGS: Quiz_With_Context
+TARGET DECK: Anki Quiz
+
+***
+
+
Commentary & Reference
+
+_문제의 해설을 적어주세요. 필요하다면 obsidian의 다른 문서나 외부 페이지도 참조해주세요_
+***
+- text
+
+***
+
+
Outgoing Link
+
+_이후에 읽어야 하거나 이후에 읽으면 좋을 글을 참조_
+***
+- text
+***
+
+> [!info] Note Type 앞의 # 지우기 + File명은 'ANKI + 생성된ID' 로 통일
+> Context: 본문
+> Q1~Q10: 하위문제
+> A1~A10: 하위문제에 해당하는 답안
+
+`해당 Template은 KOREANKI 카페의 https://cafe.naver.com/koreanki/104 를 통해 작성하였습니다.`
\ No newline at end of file
diff --git a/obsidian_templater/002. Templater/[Template]add Anki Card:Quiz.md b/obsidian_templater/002. Templater/[Template]add Anki Card:Quiz.md
new file mode 100644
index 000000000..26efbdeb8
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]add Anki Card:Quiz.md
@@ -0,0 +1,48 @@
+<%*
+const setStart = "START"
+const clipboard = await tp.system.clipboard()
+var Question = await tp.system.prompt("퀴즈 문제를 입력하세요", clipboard)
+var Answer = await tp.system.prompt("퀴즈 정답을 입력하세요")
+
+let now = new Date();
+now.setHours(now.getHours() + 9);
+let dateString = now.toISOString().replace(/[-T:.Z]/g, '').slice(0, 14);
+let ankiString = 'Anki ' + dateString.substr(0,8) + '_' +dateString.substr(8,14);
+await tp.file.rename(ankiString)
+
+-%>
+
+***
+
+CREATED : <% tp.date.now("YYYY_MM_DD_HHmmss") %>
+<% setStart %>
+KOREANKI_BASIC
+Front: <% Question %>
+Back: <% Answer %>
+END
+
+FILE TAGS: shortanswerQuestion
+TARGET DECK: Anki Quiz
+
+***
+
+
Commentary & Reference
+
+_문제의 해설을 적어주세요. 필요하다면 obsidian의 다른 문서나 외부 페이지도 참조해주세요_
+***
+- text
+
+***
+
+
Outgoing Link
+
+_이후에 읽어야 하거나 이후에 읽으면 좋을 글을 참조_
+***
+- text
+***
+
+> [!info] Note Type 앞의 # 지우기 + File명은 'ANKI + 생성된ID' 로 통일
+> Front: 앞면, cloze 입력 가능 {{c1:cloze}}
+> Back: 뒷면
+
+`해당 Template은 KOREANKI 카페의 https://cafe.naver.com/koreanki/45 를 통해 작성하였습니다.`
\ No newline at end of file
diff --git a/obsidian_templater/002. Templater/[Template]add Anki Card:VOCA(ENG to KOR).md b/obsidian_templater/002. Templater/[Template]add Anki Card:VOCA(ENG to KOR).md
new file mode 100644
index 000000000..2141e87fb
--- /dev/null
+++ b/obsidian_templater/002. Templater/[Template]add Anki Card:VOCA(ENG to KOR).md
@@ -0,0 +1,76 @@
+<%*
+const setStart = "START"
+const clipboard = await tp.system.clipboard()
+var Sentence = await tp.system.prompt("영단어를 통한 한글 뜻 맞추기입니다. 전체 영어 문장을 입력해주세요", clipboard)
+var Word = await tp.system.prompt("입력된 문장 중, 어느 영단어에 빈칸을 뚫으시겠습니까?", Sentence+" 중 단어 선택")
+if (Sentence.includes(Word)) {
+ console.log("문장 내 단어가 있습니다");
+} else {
+ return;
+}
+var Meaning = await tp.system.prompt("입력된 영단어의 한글 뜻은 무엇입니까?", Word+'의 뜻을 입력하세요')
+
+if (Sentence.includes(Word)) {
+ var newSentence = Sentence.replace(
+ Word,
+ `{{c1::${Meaning}::${Word};${Meaning[0]}--}}`
+ );
+ console.log(newSentence);
+}
+
+let now = new Date();
+now.setHours(now.getHours() + 9);
+let dateString = now.toISOString().replace(/[-T:.Z]/g, '').slice(0, 14);
+let ankiString = 'Anki ' + dateString.substr(0,8) + '_' +dateString.substr(8,14);
+
+await tp.file.rename(ankiString)
+-%>
+
+***
+
+CREATED : <% tp.date.now("YYYY_MM_DD_HHmmss") %>
+<% setStart %>
+KOREANKI_VOCA_CLOZE
+Text: <% newSentence %>
+Type?: 1
+Extra:
+Title: 문장에 제시된 빈 칸(영어)을 보고, 다음 단어의 뜻(한글)을 맞춰주세요.
+Category:
+Unit:
+Reference:
+Source:
+Image:
+END
+
+FILE TAGS: VOCA(ENG to KOR)
+TARGET DECK: Study English
+***
+
+
Commentary & Reference
+
+_문제의 해설을 적어주세요. 필요하다면 obsidian의 다른 문서나 외부 페이지도 참조해주세요_
+***
+- text
+
+***
+
+
Outgoing Link
+
+_이후에 읽어야 하거나 이후에 읽으면 좋을 글을 참조_
+***
+- text
+***
+
+> [!info] Note Type 앞의 # 지우기 + File명은 'ANKI + 생성된ID' 로 통일
+> Text: 빈칸으로 만들 텍스트(본문)
+> - ex) the {{c1::conclusion::결론; c--}} of a trustworthy … 라 입력하면, 1번째(c1) 빈칸에는 결론; c- 라고 나오고, conclusion이라는 단어를 맞춰야 함
+> Type?: 키보드 타이핑을 추가하려면 1을 입력
+> Extra: 부가적인 설명 (뒷장 답안지에만 출력됨)
+> Title: 문제의 제목
+> Category: 카테고리 분류(우측 첫째줄)
+> Unit: 유닛 혹은 챕터명(우측 둘째줄)
+> Reference: 기타 참고자료 (뒷장 답안지에만 출력됨)
+> Source: 기타 출처
+> Image: 이미지 입력
+
+`해당 Template은 KOREANKI 카페의 https://cafe.naver.com/koreanki/143 를 통해 작성하였습니다.`
\ No newline at end of file
diff --git a/pages/contents.md b/pages/contents.md
new file mode 100644
index 000000000..3cf20d57b
--- /dev/null
+++ b/pages/contents.md
@@ -0,0 +1 @@
+-
\ No newline at end of file