1 | # Aoba
|
2 |
|
3 | [Aoba's resume](https://luyilin.github.io/Aoba/)
|
4 |
|
5 | [English resume](https://luyilin.github.io/Aoba/resume-en)
|
6 |
|
7 | ## Introduction
|
8 |
|
9 | Aoba is a single JavaScript file that fetches a configuration file (such as a .json file or a .yaml file), and renders it as a lovely one-page resume.
|
10 |
|
11 | The project is build by [poi](https://github.com/egoist/poi), then we need not git clone && run build to create a resume, just use it. The design is inspired by the cute [resume](https://github.com/DIYgod/Resume) made by DIYgod. Thanks for the awesome work they done.
|
12 |
|
13 | The name is inspired by lovely Aoba Suzukaze in *New Game!*, maybe it can be a gift for young people who enter the workforce, with my best wishes.
|
14 |
|
15 | ![Aoba Suzukaze](https://wx3.sinaimg.cn/mw690/a2117cdbly1fm7csm5gopj208z07ijvh.jpg)
|
16 |
|
17 | ## Quick Start
|
18 |
|
19 | ### Work with the single JavaScript file and the css file.
|
20 |
|
21 | * CDN: [UNPKG](https://unpkg.com/aoba-resume@latest/) | [jsDelivr](https://cdn.jsdelivr.net/npm/aoba-resume@latest/dist/)
|
22 |
|
23 | * Create an HTML file: `index.html` which will be be your resume:
|
24 |
|
25 | ```html
|
26 | <!DOCTYPE html>
|
27 | <html>
|
28 | <head>
|
29 | <meta charset="utf-8" />
|
30 | <meta http-equiv="X-UA-Compatible" content="IE=edge">
|
31 | <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0" />
|
32 | <title>My resume</title>
|
33 | <!-- Stylesheet -->
|
34 | <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/aoba-resume/dist/aoba.css">
|
35 | </head>
|
36 | <body>
|
37 | <div id="app"></div>
|
38 | <!-- Script -->
|
39 | <script src="https://cdn.jsdelivr.net/npm/aoba-resume/dist/aoba.js"></script>
|
40 | <!-- Start app -->
|
41 | <script>
|
42 | const resume = new aoba()
|
43 | resume.start('#app')
|
44 | </script>
|
45 | </body>
|
46 | </html>
|
47 | ```
|
48 |
|
49 | * Then write a .json or .yaml file at the same directory where `index.html` is located.
|
50 |
|
51 | The file has six parts, basicInfo, contact, application, workExperience, personalProject and skills. See [content.json](https://github.com/luyilin/Aoba/blob/master/docs/content.json) or [content.yaml](https://github.com/luyilin/Aoba/blob/master/docs/content.yaml) for details.
|
52 |
|
53 | * Then serve this directory as a static website to deploy an online resume.
|
54 |
|
55 | - node.js: `npm i -g serve` && `serve ./docs`
|
56 | - python: `cd ./docs` && `python -m SimpleHTTPServer`
|
57 | - golang: `cd ./docs` && `caddy`
|
58 | - ...etc, you can use any static file server as you like.
|
59 |
|
60 | * Finally save the file as pdf, open the file in a browser, choose print and save.
|
61 |
|
62 | In case the resume's background color or the circles cannot be displayed when print to pdf, please tick the option: Print - More settings - Background.
|
63 |
|
64 | ## Deploy
|
65 |
|
66 | ### GitHub Pages
|
67 |
|
68 | Simply put all your files in `docs` folder on `master` branch, or root directory on the `gh-pages` branch.
|
69 |
|
70 | Don't forget to add `.nojekyll` file to tell GitHub to treat it as a normal static website.
|
71 |
|
72 | ## API
|
73 |
|
74 | ### Constructor
|
75 |
|
76 | ```js
|
77 | const resume = new aoba(options)
|
78 | ```
|
79 |
|
80 | ### options
|
81 |
|
82 | #### lang
|
83 |
|
84 | Type: `string`<br>
|
85 | Default: `zh`
|
86 |
|
87 | support zh & en
|
88 |
|
89 | #### path
|
90 |
|
91 | Type: `string`<br>
|
92 | Default: `./`
|
93 |
|
94 | #### indexFile
|
95 |
|
96 | Type: `string`<br>
|
97 | Default: `content.yaml`
|
98 |
|
99 | The configuration file.
|
100 |
|
101 | E.g. [content.json](https://github.com/luyilin/Aoba/blob/master/docs/content.json), [content.yaml](https://github.com/luyilin/Aoba/blob/master/docs/content.yaml)
|
102 |
|
103 | The description fields support html syntax.
|
104 |
|
105 | #### color
|
106 |
|
107 | Type: `string`<br>
|
108 | Default: `#8d9cd2`
|
109 |
|
110 | The theme color.
|
111 |
|
112 | E.g. #999, rgb(137,214,217), lightsalmon and so on.
|
113 |
|
114 | ### resume.start(target)
|
115 |
|
116 | #### target
|
117 |
|
118 | Type: `string` `HTMLElement`
|
119 |
|
120 | The place to mount app.
|
121 |
|
122 | ## License
|
123 |
|
124 | MIT © [luyilin](http://github.com/luyilin)
|