diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..23baf58
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,3 @@
+# 디폴트 무시된 파일
+/shelf/
+/workspace.xml
diff --git a/.idea/copyright/Elex_Project.xml b/.idea/copyright/Elex_Project.xml
new file mode 100644
index 0000000..72d9189
--- /dev/null
+++ b/.idea/copyright/Elex_Project.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml
new file mode 100644
index 0000000..ce14878
--- /dev/null
+++ b/.idea/copyright/profiles_settings.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Writerside/c.list b/Writerside/c.list
new file mode 100644
index 0000000..c4c77a2
--- /dev/null
+++ b/Writerside/c.list
@@ -0,0 +1,6 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/Writerside/cfg/buildprofiles.xml b/Writerside/cfg/buildprofiles.xml
new file mode 100644
index 0000000..7fde4f9
--- /dev/null
+++ b/Writerside/cfg/buildprofiles.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+ true
+
+
+
+
diff --git a/Writerside/images/completion_procedure.png b/Writerside/images/completion_procedure.png
new file mode 100644
index 0000000..3535a3f
Binary files /dev/null and b/Writerside/images/completion_procedure.png differ
diff --git a/Writerside/images/completion_procedure_dark.png b/Writerside/images/completion_procedure_dark.png
new file mode 100644
index 0000000..a65beb0
Binary files /dev/null and b/Writerside/images/completion_procedure_dark.png differ
diff --git a/Writerside/images/convert_table_to_xml.png b/Writerside/images/convert_table_to_xml.png
new file mode 100644
index 0000000..2518a64
Binary files /dev/null and b/Writerside/images/convert_table_to_xml.png differ
diff --git a/Writerside/images/convert_table_to_xml_dark.png b/Writerside/images/convert_table_to_xml_dark.png
new file mode 100644
index 0000000..4716122
Binary files /dev/null and b/Writerside/images/convert_table_to_xml_dark.png differ
diff --git a/Writerside/images/new_topic_options.png b/Writerside/images/new_topic_options.png
new file mode 100644
index 0000000..bc6abb6
Binary files /dev/null and b/Writerside/images/new_topic_options.png differ
diff --git a/Writerside/images/new_topic_options_dark.png b/Writerside/images/new_topic_options_dark.png
new file mode 100644
index 0000000..bf3e48d
Binary files /dev/null and b/Writerside/images/new_topic_options_dark.png differ
diff --git a/Writerside/r.tree b/Writerside/r.tree
new file mode 100644
index 0000000..4fd309b
--- /dev/null
+++ b/Writerside/r.tree
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Writerside/topics/Function.md b/Writerside/topics/Function.md
new file mode 100644
index 0000000..a728b31
--- /dev/null
+++ b/Writerside/topics/Function.md
@@ -0,0 +1 @@
+# 함수
\ No newline at end of file
diff --git a/Writerside/topics/Variable.md b/Writerside/topics/Variable.md
new file mode 100644
index 0000000..7955fc1
--- /dev/null
+++ b/Writerside/topics/Variable.md
@@ -0,0 +1,76 @@
+# 변수
+
+## 선언
+
+```rust
+let x: i32 = 100;
+```
+
+러스트에서는 `let`을 사용해서 변수를 선언 합니다. 변수명 뒤에는 `:`과 함께 자료형을 명시합니다.
+
+## 불변성
+
+러스트의 변수는 기본적으로 불변(immutable)입니다. 그래서, 한 번 할당된 변수에 새로운 값을 다시 할당할 수는 없습니다.
+
+```rust
+let x = 100;
+x = 0; // Compile Error!
+```
+
+값이 바뀌어야 하는(mutable) 변수를 선언하려면, `mut`를 사용합니다.
+
+```rust
+let mut x = 100;
+```
+
+## 새도잉
+
+불변 변수에 값을 할당하는 것은 불가능하지만, 같은 이름으로 다시 변수를 선언하는 것은 가능합니다. 이를 shadowing이라고 부릅니다.
+
+```rust
+let x = 100;
+let x = 5;
+```
+
+## 자료형
+
+러스트에는 다음과 같은 원시 자료형이 존재합니다.
+
+- i8, i16, i32, i64, i128, isize
+
+- u8, u16, u32, u64, u128, usize
+
+- f32, f64
+
+- bool
+
+- String, str
+
+
+isize와 usize는 CPU의 아키텍쳐에 따라 크기가 달라지는 자료형입니다.
+
+## 타입 추론
+
+변수명 뒤에 자료형을 생략해도 컴파일러가 자료형을 추론합니다.
+
+```rust
+let x = 1; // i32
+let y = 1.0; // f64
+```
+
+## 형 변환
+
+러스트에서 형 변환은 `as`를 사용합니다.
+
+```rust
+let x: f64 = 3.14;
+let y = x as i32;
+```
+
+## 상수
+
+러스트에서 상수는 `const`를 사용해서 선언합니다.
+
+```rust
+const MY_VALUE: i32 = 100;
+```
\ No newline at end of file
diff --git a/Writerside/topics/starter-topic.md b/Writerside/topics/starter-topic.md
new file mode 100644
index 0000000..e74422e
--- /dev/null
+++ b/Writerside/topics/starter-topic.md
@@ -0,0 +1,96 @@
+# Rust
+
+## rustup
+
+먼저, 러스트 툴체인 인스톨러를 설치합니다.
+
+```bash
+sudo snap install rustup --classic
+```
+
+```bash
+rustup -V # 버전 확인
+```
+
+RustUp을 통해서 Rust를 설치합니다.
+
+```bash
+rustup install stable
+rustup default stable
+```
+
+또는
+
+```bash
+$ curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh
+```
+
+## 프로젝트 생성
+
+```bash
+mkdir my_project
+cd my_project
+cargo init
+```
+
+또는,
+
+```bash
+cargo new my_project
+```
+
+위 명령을 실행하면 프로젝트 폴더에 'Cargo.toml' 과 'src/main.rs' 등의 파일이 생성됩니다.
+
+### Hello, world!
+
+위에서 생성된 main.rs 파일은 간단한 헬로 월드 프로그램입니다.
+
+```rust
+fn main() {
+ println!("Hello, world!");
+}
+```
+
+`println`은 화면에 한 줄 출력하는 매크로입니다. 러스트에서는 매크로 이름 뒤에 `!`가 붙습니다.
+
+```bash
+cargo build
+```
+
+`./target/debug` 디렉토리에 실행 파일이 만들어집니다. 다음 명령으로 프로그램을 실행시키면 화면에 'Hello, world!'가 출력됩니다.
+
+```bash
+./target/debug/my_project
+```
+
+배포용으로 컴파일하려면, release 옵션을 추가합니다.
+
+```bash
+cargo build --release
+```
+
+`cargo run` 명령을 사용하면 빌드와 동시에 실행할 수 있습니다.
+
+```bash
+cargo run
+```
+
+또는,
+
+```bash
+cargo run --release
+```
+
+## rustfmt
+
+소스 코드를 깔끔하게 정리해 줍니다.
+
+```bash
+rustfmt ./src/main.rs
+```
+
+또는, 아래 명령으로 전체 소스 파일에 대해 처리할 수 있습니다.
+
+```bash
+cargo fmt
+```
\ No newline at end of file
diff --git a/Writerside/v.list b/Writerside/v.list
new file mode 100644
index 0000000..2d12cb3
--- /dev/null
+++ b/Writerside/v.list
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/Writerside/writerside.cfg b/Writerside/writerside.cfg
new file mode 100644
index 0000000..04ff70e
--- /dev/null
+++ b/Writerside/writerside.cfg
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file