diff --git a/blog/2024-09-02-answer-recap-august/index.md b/blog/2024-09-02-answer-recap-august/index.md new file mode 100644 index 0000000000..5f50c6a2ab --- /dev/null +++ b/blog/2024-09-02-answer-recap-august/index.md @@ -0,0 +1,82 @@ +--- +title: "Recap of August | Apache Answer" +authors: [Anne] +category: Newsletter +featured: true +image: 2024-09-02-cover@4x.png +description: "August adds new contribution." + +--- + +As the days grow shorter and the nights cooler, here comes the newsletter of August. Time to recap the new release, fresh features, and give big hugs to the contributors. + +Let's go! + +## 🌟 What’s New + +We brought the heart of bringing smoother Q&A experience in every release for more people. In the latest 1.3.6, we introduced two CDN plugins for fast loading speed and pre-filled forms for helping users to stay concentrated on editing the content. +Learn more about the details and how-to tutorials in the blog as well as optimizations carried in the release. + +import Embed from '@site/src/components/Embed'; + + + + +### New Tutorial: Setup and Plugin + +Besides new features, we also received three new blogs from the community, covering configuration and plugin tutorial. + +We understand that it can be challenging for developers to set up the environment with [Developer Guides](https://answer.apache.org/docs/development). Now, it gets easier, simply following the blogs with step-to-step configuration and installation guide for both frontend and backend. + + + + + + +That’s not it. You can also follow another guide on adding plugins to make Answer powerful for your community. + + + +### New Translation +The new tutorial above supports both Chinese and English. Besides, there're updates for localization. Now, you can explore the Chinese version for [Introduction](https://answer.apache.org/zh-CN/docs) and [Getting Started](https://answer.apache.org/zh-CN/docs/installation). + +If you are willing to join the localization family, don't hesitate to join us. Find out how to get started [here](https://answer.apache.org/community/translation/). + +## 🫶 Community +We put together our preparation and observation from the events we joined in the blog. Feel free to refer to it and get ready for your next big event. + + + +## 🙌 Cheers to Contributors +Thank you for making the features, shining the tweaks, and fixing the bugs. +[kevin](https://github.com/kevingil), [kumfo](https://github.com/kumfo), [hgaol](https://github.com/hgaol), [robin](https://github.com/robinv8), [LinkinStars](https://github.com/LinkinStars), [dashuai](https://github.com/shuashuai), and [Luffy](https://github.com/sy-records). + +We would also love to extend sincere gratitude to the hero behind the new tutorial and localization [IamMelody233](https://github.com/IamMelody233). + +## 🤲 We Want You +In Answer community, we sing for the good deeds. Besides coding and localization, your feedback also matters. Feel free to connect with us via [X](https://x.com/AnswerDev), [email](dev@answer.apache.org), or in the [community](https://meta.answer.dev/). diff --git a/blog/2024-09-11-behind-the-plugin-meet-the-student-contributors/index.md b/blog/2024-09-11-behind-the-plugin-meet-the-student-contributors/index.md new file mode 100644 index 0000000000..62d21bfb2d --- /dev/null +++ b/blog/2024-09-11-behind-the-plugin-meet-the-student-contributors/index.md @@ -0,0 +1,82 @@ +--- +title: "Recap of August | Apache Answer" +authors: [Anne] +category: Newsletter +featured: true +image: 2024-09-02-cover@4x.png +description: "August adds new contribution." + +--- + +As the days grow shorter and the nights cooler, here comes the newsletter of August. Time to recap the new release, fresh features, and give big hugs to the contributors. + +Let's go! + +## 🌟 What’s New + +We brought the heart of bringing smoother Q&A experience in every release for more people. In the latest 1.3.6, we introduced two CDN plugins for fast loading speed and pre-filled forms for helping users to stay concentrated on editing the content. +Learn more about the details and how-to tutorials in the blog as well as optimizations carried in the release. + +import Embed from '@site/src/components/Embed'; + + + + +### New Tutorial: Setup and Plugin + +Besides new features, we also received three new blogs from the community, covering configuration and plugin tutorial. + +We understand that it can be challenging for developers to set up the environment with [Developer Guides](https://answer.apache.org/docs/development). Now, it gets easier, simply following the blogs with step-to-step configuration and installation guide for both frontend and backend. + + + + + + +That’s not it. You can also follow another guide on adding plugins to make Answer powerful for your community. + + + +### New Translation +The new tutorial above supports both Chinese and English. Besides, there're updates for localization. Now, you can explore the Chinese version for [Introduction](https://answer.apache.org/zh-CN/docs) and [Getting Started](https://answer.apache.org/zh-CN/docs/installation). + +If you are willing to join the localization family, don't hesitate to join us. Find out how to get started [here](https://answer.apache.org/community/translation/). + +## 🫶 Community +We put together our preparation and observation from the events we joined in the blog. Feel free to refer to it and get ready for your next big event. + + + +## 🙌 Cheers to Contributors +Thank you for making the features, shining the tweaks, and fixing the bugs. +[kevin](https://github.com/kevingil), [kumfo](https://github.com/kumfo), [hgaol](https://github.com/hgaol), [robin](https://github.com/robinv8), [LinkinStars](https://github.com/LinkinStars), [dashuai](https://github.com/shuashuai), and [Luffy](https://github.com/sy-records). + +We would also love to extend sincere gratitude to the hero behind the new tutorial and localization [IamMelody233](https://github.com/IamMelody233). + +## 🤲 We Want You +In Answer community, we sing for the good deeds. Besides coding and localization, your feedback also matters. Feel free to connect with us via [X](https://x.com/AnswerDev), [email](dev@answer.apache.org), or in the [community](https://meta.answer.dev/). \ No newline at end of file diff --git a/i18n/zh-CN/docusaurus-plugin-content-blog/2024-08-01-answer-recap-july/index.md b/i18n/zh-CN/docusaurus-plugin-content-blog/2024-08-01-answer-recap-july/index.md new file mode 100644 index 0000000000..65abf580de --- /dev/null +++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2024-08-01-answer-recap-july/index.md @@ -0,0 +1,91 @@ +--- +title: "Recap of July | Apache Answer" +authors: [Anne] +category: Newsletter +featured: false +image: 2024-08-01-cover@4x.png +description: "July was a month all about community love." + +--- + +Another page turns, and it was a busy month with some petit milestones. We made a new release, unlock a new event, and headed to a big gathering with the community. +Here's the recap: + +## 🌟 What's New +New version released on the beginning of a month. In this update, both users and admins have more freedom to customize, express, and view in the online community with new features. Have you tried the latest 1.3.5? If not, here's the [portal](https://medium.com/r/?url=https%3A%2F%2Fanswer.apache.org%2Fdownload). + +import Embed from '@site/src/components/Embed'; + + + +Our PPMC member [shuaishuai](https://github.com/shuashuai) released a blog on how to package Answer plugins with a step-to-step tutorial. Easy package plugin from today. + + + + +## 🫶 Community +Let’s give applause to our two new committers sy-records and hgaol! Welcome on board, and you must have seen them in features, bugs fixing, and even docs. We’re so honored to have them joining the family. + +![Alt text](Committer%20Webpage.webp) + +We made a debut at GitHub Open Source Spotlight at WeAreDevelopers World Congress in Berlin. It was lovely to meet other open-source friends, and guess what, we met some of our users! + +Big thanks to GitHub for letting us make a big footstep and share our story to more developers. + +import { Row, Col } from 'react-bootstrap'; + + + + ![](OpenSource%20Spotlight%201.webp) + + + ![](OpenSource%20Spotlight%202.webp) + + + +As an Apache incubating podling, how can we miss the community gathering? Yes, we also joined CommunityOverCode Asia 2024 + +It was a lovely 3-day event! We made our several firsts — Keynote and speeches at 2 tracks. We were lucky to be nourished by the community, and we wanted to give back by sharing our lessons and story during first Apache release and spread the ideas of various contributions. + + + + ![Alt text](COC%201.webp) + + + ![Alt text](COC%202.webp) + + + ![Alt text](COC3.webp) + + + ![Alt text](COC%204.webp) + + + +## 🙌 Cheers to Contributors +Meet and give your applause to the secret heroes! + +Features architect: [hgaol](https://github.com/hgaol), [LinkinStars](https://github.com/LinkinStars), [shuaishuai](https://github.com/shuashuai)\ +Improvement maker: [sy-records](https://github.com/sy-records)\ +Bug fixer: [byerer](https://github.com/byerer), [sy-records](https://github.com/sy-records), [robinv8](https://github.com/robinv8), [nayanthulkar28](https://github.com/nayanthulkar28), [hgaol](https://github.com/hgaol), [nayanthulkar28](https://github.com/nayanthulkar28), [hgaol](https://github.com/hgaol) + +Cheers for the time and effort. + +## ✌️ Coming up Next +New version 1.3.6 is on the way, waiting for the votes. +Interested in helping us with the release? Give it a go following the post below. + +https://answer.apache.org/community/how-to-release + +## 🤲 Share Your Ideas +We love ideas, especially from you. Tell us how you like the project, and diff --git a/i18n/zh-CN/docusaurus-plugin-content-blog/2024-09-02-answer-recap-august/index.md b/i18n/zh-CN/docusaurus-plugin-content-blog/2024-09-02-answer-recap-august/index.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/i18n/zh-CN/docusaurus-plugin-content-blog/2024-09-11-behind-the-plugin-meet-the-student-contributors/index.md b/i18n/zh-CN/docusaurus-plugin-content-blog/2024-09-11-behind-the-plugin-meet-the-student-contributors/index.md new file mode 100644 index 0000000000..a3bc921525 --- /dev/null +++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2024-09-11-behind-the-plugin-meet-the-student-contributors/index.md @@ -0,0 +1,61 @@ +--- +title: "代码高亮插件:学生开发者的开源故事" +authors: [Anne] +category: Community +featured: true +image: 2024-09-11-cover-zh@4x.png +description: "聆听学生开发者开源首秀背后的故事。" + +--- + +开源世界因贡献的多样性而更加精彩。我们也始终相信,每个人都有潜力为开源做出贡献,无论你是一名经验丰富的开发者,还是刚刚接触开源的新手。除了在技术问题上提供帮助,我们还积极鼓励各种形式的贡献,无论是代码、文档、还是创意。 + +我们在 [ovio](https://ovio.org/project/apache/incubator-answer)、[LibHunt](https://www.libhunt.com/r/incubator-answer) 以及 [SourceForge](https://sourceforge.net/projects/incubator-answer/) 等开源新手友好平台上展示我们的项目,帮助更多人了解并加入我们。同时,我们也非常重视对年轻一代的培养。最近 Apache Answer 迎来了两位厦门大学马来西亚分校的学生的贡献插件,这是也是他们首次的开源贡献。让我们来听听他们是如何完成第一次开源贡献的,如何解决遇到的问题的,以及他们想的收获。 + +## 能够向大家介绍一下你们做的这款插件吗? +我们开发的是一款代码高亮插件,旨在为用户提供更优质的代码显示体验。该插件支持多种编程语言的代码高亮,并且可以动态切换明暗主题,例如 GitHub Light 和 GitHub Dark。 + +我们使用了 `highlight.js` 作为核心库,通过 React 技术栈实现了插件的前端交互,并支持主题的动态加载。同时,这款插件可以让用户根据自己的喜好切换代码主题,提升用户使用的舒适度。 + +## 请问你们是如何拆解这个完成这个插件的? + +我们主要分为几个步骤。 + +首先,从简入手,在 Answer 项目中本地实现代码高亮功能。然后,我们将功能制作成插件。由于插件是与前端有关的渲染类功能,所以我们优先制作了前端部分。实现前端代码高亮后,我们希望实现个性化设置,让用户能够从后端选择自己喜欢的主题系列,因此为前后端配置了接口。 +整个流程可以简单概括为: +1. 导入highlight.js,并在本地前端实现了简单的代码高亮。 +2. 将代码高亮功能移植到插件中。不过由于Vite的封装机制,我们无法直接导入多种CSS文件,因此使用了CSS in JS的解决方案。 +3. 然后,我们发现前端明亮主题的切换和Question下方的预览框渲染不够顺畅,所以合理配置了依赖项并编写了更严谨的监听机制来解决问题。 +4. 在前端基本完善后,我们开发了后端部分,让用户可以通过表单选择自己喜欢的主题。 +5. 通过前后端接口改写代码,实现了后端选择的主题在前端的应用。 +6. 在测试中,我们发现CSS的挂载量较大,于是修改了逻辑,使用动态导入和映射的方法来优化性能。 +7. 最后,为了后续维护和更好的可读性,我们编写了代码来读取核心库内容,并实现了自动检测主题类型、分类和切换等功能。 + +## 有遇到哪些问题,是怎么解决的呢? + +当然,我们开发中遇到了一些挑战。例如: + +1. 在前端配置过程中,由于Vite的封装机制无法导入多种样式的CSS文件。为了解决这个问题,我们采用了CSS in JS的方案。 +2. 在实现明暗模式切换时,Question下方的预览框没有被实时渲染。我们通过合理配置依赖项并编写严谨的监听机制来解决这个问题。 +3. 在配置后端时,如何让后端表单与前端进行数据传递也是一个挑战。我们根据Answer提供的接口实现了前后端的数据交换。 +4. 最后,为了简化后期维护,我们使用文件遍历来读取核心库,而不是手动引入。 + +这些问题的解决不仅提高了插件的性能,也增强了我们对技术的理解。 + +## 现在对于开源社区,有什么新的理解? +参与到开源项目后,我们深刻感受到开源社区的力量与合作精神。在这个社区中,每个人的贡献,无论是代码、博客还是文档,都会汇聚成整体的一部分,帮助构建出更加完整和丰富的 Answer 生态。这种协作不仅仅依赖技术能力,更需要良好的沟通能力。与其他开发者的交流与合作,是确保功能正确实现的关键,尤其是在遇到问题时,通过讨论和共同努力可以找到最佳解决方案。 + +我们还意识到,要在开源项目中实现完整的功能,仅凭编程技能是不够的。深入理解项目的底层逻辑、架构和运行机制,是有效贡献代码的前提。这需要我们向社区中的资深开发者学习,借鉴他们的经验和解决方案,才能不断提升自己,并在开源社区中做出更多有价值的贡献。 + +开源不仅是技术的分享,它更是思想、经验和创意的交流与融合。社区的开放氛围鼓励合作、反馈和改进,为开发者提供了广阔的成长空间,激励我们不断进步。 + +## 对于在校的学生,你们会怎么鼓励他们参与到开源中来呢? +这次贡献,也让我们对开源的底层逻辑和合作精神有了更深的理解。 + +我们非常鼓励在校学生积极参与开源项目,因为这是提升技术水平的绝佳途径。通过参与开源,他们可以获得宝贵的实际开发经验,学习如何解决真实世界的问题,并接触到更广泛的技术社区。我们建议从小项目开始,一步步参与到更复杂的项目中,无论是贡献代码、编写文档,还是进行代码测试,都可以找到适合自己的切入点。 + +同时,参与开源不仅有助于技术的提升,还能帮助他们拓展人脉,提升未来职业发展的机会。 + +代码贡献只是两位同学开源首秀的一部分,两位同学还在非代码贡献上做出了自己的贡献。在搭建环境的时候,他们将步骤以图文的形式记录下来,并将[前端配置](https://answer.apache.org/zh-CN/blog/2024/08/16/apache-answer-frontend-configuration-guide)、[后端配置](https://answer.apache.org/zh-CN/blog/2024/08/20/apache-answer-backend-configuration-guide)、和[添加插件指南](https://answer.apache.org/zh-CN/blog/2024/08/22/guide-to-add-answer-plugins)以博客的形式贡献给社区。此外,他们还完成了[文档](https://answer.apache.org/zh-CN/docs)部分的更新和本地化。 + +在此,我们想衷心说声感谢,并鼓励更多学生加入到开源之中。正是因为有新的力量的,开源社区才会愈发壮大和繁荣。点击[此处](https://answer.apache.org/zh-CN/community/contributing),了解你可以如何参与进来,不局限于代码贡献。 \ No newline at end of file diff --git a/static/img/blog/2024-09-11-cover-zh@2x.png b/static/img/blog/2024-09-11-cover-zh@2x.png new file mode 100644 index 0000000000..496eefbf89 Binary files /dev/null and b/static/img/blog/2024-09-11-cover-zh@2x.png differ diff --git a/static/img/blog/2024-09-11-cover-zh@4x.png b/static/img/blog/2024-09-11-cover-zh@4x.png new file mode 100644 index 0000000000..2b9bc9c2cf Binary files /dev/null and b/static/img/blog/2024-09-11-cover-zh@4x.png differ diff --git a/static/img/blog/2024-09-11-cover@2x.png b/static/img/blog/2024-09-11-cover@2x.png new file mode 100644 index 0000000000..07e35f1602 Binary files /dev/null and b/static/img/blog/2024-09-11-cover@2x.png differ diff --git a/static/img/blog/2024-09-11-cover@4x.png b/static/img/blog/2024-09-11-cover@4x.png new file mode 100644 index 0000000000..85478432d8 Binary files /dev/null and b/static/img/blog/2024-09-11-cover@4x.png differ