diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index ee93322..0000000 --- a/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,4 +0,0 @@ -Please make sure you took care of the following things before you submit this issue. Thank you! - -- [ ] I have set up and configured my blog according to the [Hexo docs](https://hexo.io/) and the [Icarus docs](https://ppoffice.github.io/hexo-theme-icarus/); -- [ ] I have looked up [Github issues](https://github.com/ppoffice/hexo-theme-icarus/issues) and found no solutions to my problems. diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..2c3b8a1 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,46 @@ +--- +name: Bug report +about: Create a report to help us improve +title: '' +labels: '' +assignees: '' + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +**System and Environment** +The version and configuration of Hexo and Icarus. + +- Hexo, OS, and node version (use `hexo version` command) +- Site configuration file `_config.yml` +- Theme configuration file `themes/icarus/_config.yml` +- Any additional theme configuration files (post front-matter, `_config.post.yml`, or `_config.page.yml`) + +**To Reproduce** +Steps to reproduce the behavior: +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Screenshots** +If applicable, add screenshots to help explain your problem. + +**Desktop (please complete the following information if applicable):** + - OS: [e.g. iOS] + - Browser [e.g. chrome, safari] + - Version [e.g. 22] + +**Smartphone (please complete the following information if applicable):** + - Device: [e.g. iPhone6] + - OS: [e.g. iOS8.1] + - Browser [e.g. stock browser, safari] + - Version [e.g. 22] + +**Additional context** +Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..f0291e0 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,24 @@ +--- +name: Feature request +about: Suggest an idea for this project +title: '' +labels: '' +assignees: '' + +--- + +**Is your feature request related to a problem? Please describe.** + +A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + +**Describe the solution you'd like** + +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** + +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** + +Add any other context or screenshots about the feature request here. diff --git a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md new file mode 100644 index 0000000..e5bbf71 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md @@ -0,0 +1,30 @@ +--- +name: Pull request +about: Suggest a code change to this project +title: '' +labels: '' +assignees: '' + +--- + +**Note 0** +Please review [the contributing guide](https://github.com/ppoffice/hexo-theme-icarus/blob/master/CONTRIBUTING.md) before making this pull request. + +**Note 1** + +Please break up your pull request into multiple smaller requests if it contains multiple bug fixes +or new features. +Each pull request should have one bug fix or new feature only for better code maintainability. + +**Note 2** + +Many components of this theme, including core functions, some Hexo extensions, widgets and plugins, +have been moved to [ppoffice/hexo-component-inferno](https://github.com/ppoffice/hexo-component-inferno). +Please make a pull request to that repository instead of this one if your changes are related to +the above components. + +**Detailed description** + +> Please use the [Icarus issue template](https://github.com/ppoffice/hexo-theme-icarus/blob/master/.github/ISSUE_TEMPLATE/bug_report.md) if it is a bug fix. + +> Please use the [Icarus feature request template](https://github.com/ppoffice/hexo-theme-icarus/blob/master/.github/ISSUE_TEMPLATE/feature_request.md) if it is a bug fix. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..79646e9 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,40 @@ +# Contributing Guidelines + +## Code styles + +Please refer to the [.eslintrc.json](https://github.com/ppoffice/hexo-theme-icarus/blob/master/.eslintrc.json). +You can also use `npm run lint` or `yarn lint` to fix code style issues. + +## Project versioning + +We use [SemVer](http://semver.org/) for versioning. +Any changes to the code base should not be released using an existing version. + +## Commit message format + +The commit message should follow the [Bluejava commit message format](https://github.com/bluejava/git-commit-guide). +The supported scopes are: + +- **core** for changes related to Hexo extensions and Icarus-specific functions +- **comment** for comment plugin layout, schema, style, or script changes +- **share** for share plugin layout, schema, style, or script changes +- **donate** for donation plugin layout, schema, style, or script changes +- **search** for search plugin layout, schema, style, or script changes +- **widget** for widget layout, schema, style, or script changes +- **plugin** for other plugin layout, schema, style, or script changes +- **i18n** for adding or updating translations +- **test** for testing or linting-related commits +- **build** for build scripts, CI, other development or deployment related commits +- use __\*__ or leave empty to refer to commits that do not have a clear scope + +## Submit changes + +1. Fork this repository, make changes to it, and run it against some actual Hexo sites to see if +anything is broken. +You should also run `npm run lint` or `yarn lint` to find and fix any code formatting issue. +2. Submit a pull request to our repository. Please make sure you followed the instructions +above. +3. We will review the pull request regularly and inform you of our questions and any changes +that need to be made before we can merge your pull request. +4. We expect your response within two weeks, after which your pull request may be closed if +no activity is shown. diff --git a/README.md b/README.md index 2693808..e322de4 100644 --- a/README.md +++ b/README.md @@ -15,107 +15,181 @@ Download & extract or `git clone` Icarus from GitHub to your blog's theme folder, and that's it! ```shell -git clone https://github.com/ppoffice/hexo-theme-icarus.git themes/icarus +$ git clone https://github.com/ppoffice/hexo-theme-icarus.git themes/icarus +$ hexo s // start a live server ``` -Once started, Icarus will remind you of any missing dependencies and configuration files. +Once started, Icarus will remind you of any missing dependencies to install. +And it will create a theme configuration file (`_config.yml`) if it is not there. ### :gift: Features +**Cyberpunk Theme Variant** + +Tap into the future cyber world with the newly added Cyberpunk theme variant. +Inspired by [Cyberpunk 2077](https://www.cyberpunk.net). + +![Icarus Cyberpunk](https://ppoffice.github.io/hexo-theme-icarus/gallery/screenshots/cyberpunk.png "Icarus Cyberpunk") + **Extensive Plugin Support** -Icarus includes plentiful search, comment, sharing and other plugins out of the box. You can choose any of them to enrich your -blog experience, or build your own plugin easily referring to the existing Icarus plugins. +Icarus includes plentiful search, comment, sharing and other plugins out of the box that makes your +blog feature-rich and powerful. -Comment plugins - -- [Changyan](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Comment/changyan-comment-plugin/) -- [Disqus](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Comment/disqus-comment-plugin/) -- [Facebook](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Comment/facebook-comment-plugin/) -- [Gitment](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Comment/gitment-comment-plugin/) -- [Isso](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Comment/isso-comment-plugin/) -- [LiveRe](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Comment/livere-comment-plugin/) -- [Valine](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Comment/valine-comment-plugin/) - -Search plugins - -- [Insight Search](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Search/insight-search-plugin/) -- [Google Custom Search Engine](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Search/google-cse-plugin/) -- [Baidu Site Search](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Search/baidu-search-plugin/) - -Share plugins - -- [AddThis](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Share/addthis-share-plugin/) -- [AddToAny](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Share/addtoany-share-plugin/) -- [Baidu Share](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Share/baidu-share-plugin/) -- [Share.js](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Share/share-js-share-plugin/) -- [ShareThis](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Share/sharethis-share-plugin/) - -Donation Buttons - -- [Alipay](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Donation/making-money-off-your-blog-with-donation-buttons/#Alipay) -- [Wechat](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Donation/making-money-off-your-blog-with-donation-buttons/#Wechat) -- [Paypal](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Donation/making-money-off-your-blog-with-donation-buttons/#Paypal) -- [Patreon](https://ppoffice.github.io/hexo-theme-icarus/Plugins/Donation/making-money-off-your-blog-with-donation-buttons/#Patreon) - -Other plugins - -- [Hexo Tag Plugin](https://ppoffice.github.io/hexo-theme-icarus/Configuration/Posts/hexo-built-in-tag-helpers/) -- [lightGallery & Justified Gallery](https://ppoffice.github.io/hexo-theme-icarus/Plugins/General/gallery-plugin/) -- [MathJax](https://ppoffice.github.io/hexo-theme-icarus/Plugins/General/mathjax-plugin/) -- [Site Analytics](https://ppoffice.github.io/hexo-theme-icarus/Plugins/General/site-analytics-plugin/) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CommentDonationSearchShareWidgetsOther Plugins
ChangyanAlipayInsightAddThisGoogle AdSenseBaidu Analytics
DisqusBuy Me A CoffeeAlgoliaAddToAnyArchivesBuSuanZi Vistor Counter
DisqusJSPatreonGoogle CSEBaidu ShareCategoriesCNZZ Analytics
FacebookPaypalBaiduShare.jsExternal Site LinksLight Gallery and Justified Gallery
GitalkWechatShareThisRecent PostsGoogle Analytics
GitmentGoogle FeedburnerHotjar User Feedback
IssoAuthor ProfileKaTex
LiveReTagsMathJax
UtterancesTable of ContentsOutdated Browser Detection
ValinePage Loading Animations
**Rich Code Highlight Theme Choices** -Icarus directly import code highlight themes from the [highlight.js](https://highlightjs.org/) package, and makes more than -70 highlight themes available to you. +Icarus directly import stylesheets from the [highlight.js](https://highlightjs.org/) package and makes more than +90 code highlight themes available to you. - - - + + + + + + + +
Atom One LightMonokaiKimbie Dark
-**Elastic Theme Configuration** +**Flexible Theme Configuration** -In addition to the minimalistic and easy-to-understand configuration design, Icarus allows you to set configurations on a -per-page basis with the ability to merge and override partial configurations. +Icarus allows you to configure your site on a per-page or per-layout basis.
+ + - - + + +
_config.yml post.md_config.page.yml
-
menu:
-    Archives: /archives
-    Categories: /categories
-    Tags: /tags
-    About: /about
+
widgets:
+  - type: profile
+    position: left
+  - type: recent_posts
+    position: right
-
title: A Simple Post
-menu:
-    Go Home: /index.html
----
-# Here is some simple markdown.
+
widgets:
+- type: profile
+  position: left
+- type: recent_posts
+  position: left
+
+
widgets: null
+ 
+ 
+ 
+
**Responsive Layout** -No matter what modern browsering device your audiences are using, they can always get the best experience because Icarus's responsive -layout across multiple viewpoints. +Give your audiences best viewing experience with Icarus's mobile-friendly responsive layout. ![Responsive Layout](https://ppoffice.github.io/hexo-theme-icarus/gallery/responsive.png) @@ -123,21 +197,22 @@ layout across multiple viewpoints. This project is built with -- Hexo 3.7.1 -- Ejs -- Stylus -- Bulma 0.7.2 +- [Hexo](https://hexo.io/) +- [Inferno.js](https://infernojs.org/) +- [Stylus](https://stylus-lang.com/) +- [Bulma](https://bulma.io/) -Please refer to the documentation for Icarus implementation details. +Please refer to the [documentation](https://ppoffice.github.io/hexo-theme-icarus/categories/) and +[contributing guide](https://github.com/ppoffice/hexo-theme-icarus/blob/master/CONTRIBUTING.md) for implementation details. ### :tada: Contribute If you feel like to help us build a better Icarus, you can -:electric_plug: Write a plugin | -:black_nib: Submit a tutorial | -:triangular_flag_on_post: Report a bug | -:earth_asia: Add a translation +:black_nib: [Submit a tutorial](https://github.com/ppoffice/hexo-theme-icarus/new/site/source/_posts) | +:earth_asia: [Add a translation](https://github.com/ppoffice/hexo-theme-icarus/tree/master/languages) | +:triangular_flag_on_post: [Report a bug](https://github.com/ppoffice/hexo-theme-icarus/issues/new) | +:electric_plug: [Suggest a new feature](https://github.com/ppoffice/hexo-theme-icarus/pulls) ### :memo: License