diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..dd2e007 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,4 @@ +contact_links: + - name: Support Request + url: https://github.com/iflytek/community/discussions + about: Support request or question relating to the Iflytek Opensource Community diff --git a/.github/ISSUE_TEMPLATE/general-issue.yml b/.github/ISSUE_TEMPLATE/general-issue.yml new file mode 100644 index 0000000..bb3a967 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/general-issue.yml @@ -0,0 +1,10 @@ +name: General Issue +description: Open a general issue in the iflytek/community repo +body: +- id: problem + type: textarea + attributes: + label: Describe the issue + placeholder: A clear and concise description of what you need assistance with. + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/leadership-change.yml b/.github/ISSUE_TEMPLATE/leadership-change.yml new file mode 100644 index 0000000..2e9b82a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/leadership-change.yml @@ -0,0 +1,57 @@ +name: Leadership Change +description: Onboarding / Offboarding checklist for group leads +title: ": Leadership Change" +body: +- id: group + type: input + attributes: + label: "Group name:" + placeholder: "e.g. SIG foo" +- id: leader_onboarding + type: input + attributes: + label: "Onboarding Lead(s):" + placeholder: GitHub handle(s) of the new leads +- id: leader_offboarding + type: input + attributes: + label: "Offboarding Lead(s):" + placeholder: GitHub handle(s) of the previous leads +- type: markdown + attributes: + value: | + **Process to initiate leadership change** + + An email should be sent to the group mailing list with the following: + - Intent to step down / nominate a new lead + - If nominating a new lead: + - 1-2 lines about why they are being nominated, and links to any potential meeting notes where the change was discussed. + - Contacts to privately reach out to for questions (current leads) or concerns. + - Lazy consensus deadline of at least one week. +- id: discussion_link + type: input + attributes: + label: "Link to discussion:" +- id: new_lead_prereqs + type: checkboxes + attributes: + label: "Prerequisites for new leads:" + options: + - label: Are an org member + - label: Have read and agree to abide by the [Code of Conduct](https://github.com/iflytek/community/blob/main/code-of-conduct.md) +- id: req_checklist + type: checkboxes + attributes: + label: "Onboarding / Offboarding tasks:" + options: + - label: Updated [OWNERS](https://github.com/iflytek/community/blob/main/OWNERS) file. **NOTE:** If offboarding, remember to remove from approvers. + - label: Updated [MAINTAINERS.md](https://github.com/iflytek/community/blob/main/MAINTAINERS.md). + - label: Updated access/teams in project infrastructure. + - label: Updated ownership of group mailing list. + - label: Updated ownership of group calendar. + - label: Added to relevant communication channels. +- id: additional_info + type: textarea + attributes: + label: "Additional information:" + placeholder: "Other links to leadership discussions etc." diff --git a/.github/ISSUE_TEMPLATE/moderator_application.yml b/.github/ISSUE_TEMPLATE/moderator_application.yml new file mode 100644 index 0000000..1dd4f21 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/moderator_application.yml @@ -0,0 +1,65 @@ +name: Community Moderator Request +description: Request moderator privileges on a community property +title: 'REQUEST: New moderator for of ' +labels: area/community-management +body: +- id: github + type: input + attributes: + label: GitHub Username + placeholder: e.g. @example_user + validations: + required: true +- type: input + attributes: + label: Property you'd like to Moderate + placeholder: e.g. Discord, forum, etc. + validations: + required: true +- type: input + attributes: + label: Username on Property Requested + placeholder: e.g. @property_user + validations: + required: true +- id: requirements + type: checkboxes + attributes: + label: Requirements + options: + - label: I am an org member already + required: true + - label: I have [enabled 2FA on my GitHub account](https://github.com/settings/security) + required: true + - label: I have read and will abide by the policies mentioned in the [Moderation Guidelines](https://github.com/iflytek/community/blob/main/code-of-conduct.md) + required: true + - label: I have two sponsors that meet the sponsor requirements + required: true + - label: I have spoken to my sponsors ahead of this application, and they have agreed to sponsor my application + required: true +- id: sponsor_1 + type: input + attributes: + label: "Sponsor 1" + description: GitHub handle of your sponsor + placeholder: e.g. @sponsor-1 + validations: + required: true +- id: sponsor_2 + type: input + attributes: + label: "Sponsor 2" + description: GitHub handle of your sponsor + placeholder: e.g. @sponsor-2 + validations: + required: true +- id: qualifications + type: textarea + attributes: + label: List of qualifications for this position + placeholder: | + - Prior moderation experience + - Links to public discussions showing your moderation experience (if available) + - Any other qualifications + validations: + required: true diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..96dc66b --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,18 @@ + + +**Which issue(s) this PR fixes**: + +Fixes # + +**Special notes for reviewers**: + diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 61412d6..890f117 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v6 - uses: actions/setup-node@v6 with: - node-version: 22 + node-version: 24 cache: npm - run: npm ci - run: npm run check:eslint @@ -36,7 +36,7 @@ jobs: - uses: actions/checkout@v6 - uses: actions/setup-node@v6 with: - node-version: 22 + node-version: 24 cache: npm - run: npm ci - name: Fetch contributors data @@ -52,5 +52,6 @@ jobs: vercel-token: ${{ secrets.VERCEL_TOKEN }} vercel-org-id: ${{ secrets.VERCEL_ORG_ID }} vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID }} - vercel-args: '--prod' + vercel-args: '--prod --yes' + target: production working-directory: ./ diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index 691ca5d..e5b2d45 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v6 - uses: actions/setup-node@v6 with: - node-version: 22 + node-version: 24 cache: npm - run: npm ci - name: ESLint @@ -36,7 +36,7 @@ jobs: - uses: actions/checkout@v6 - uses: actions/setup-node@v6 with: - node-version: 22 + node-version: 24 cache: npm - run: npm ci - name: Build site @@ -72,7 +72,7 @@ jobs: - uses: actions/checkout@v6 - uses: actions/setup-node@v6 with: - node-version: 22 + node-version: 24 cache: npm - run: npm ci - name: Check dependency licenses diff --git a/.github/workflows/security.yml b/.github/workflows/security.yml index a26a970..ba9189e 100644 --- a/.github/workflows/security.yml +++ b/.github/workflows/security.yml @@ -14,7 +14,7 @@ jobs: - uses: actions/checkout@v6 - uses: actions/setup-node@v6 with: - node-version: 22 + node-version: 24 cache: npm - run: npm ci - name: npm audit diff --git a/.github/workflows/update-contributors.yml b/.github/workflows/update-contributors.yml index 61bf479..f7d08e2 100644 --- a/.github/workflows/update-contributors.yml +++ b/.github/workflows/update-contributors.yml @@ -14,7 +14,7 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} - uses: actions/setup-node@v6 with: - node-version: 22 + node-version: 24 cache: npm - run: npm ci - name: Update contributors data diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..8e15882 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,3 @@ +# CODE OF CONDUCT + +Please visit https://github.com/iflytek/community for the latest version. diff --git a/NOTICE b/NOTICE index f0f1c62..7a89cd5 100644 --- a/NOTICE +++ b/NOTICE @@ -1,5 +1,5 @@ iFLYTEK Open Source Website -Copyright 2024 iFLYTEK CO., LTD. +Copyright 2026 iFLYTEK CO., LTD. This product includes software developed at: - AstroWind (https://github.com/arthelokyo/astrowind), licensed under MIT License diff --git a/README.md b/README.md index de3e74d..6230cb5 100644 --- a/README.md +++ b/README.md @@ -27,23 +27,23 @@ The official open source website for iFLYTEK (科大讯飞), showcasing our open website/ ├── src/ │ ├── components/ # UI components -│ ├── data/ # Content (blog posts, etc.) -│ ├── i18n/ # Internationalization +│ ├── data/ # Content (blog posts, project data) │ ├── layouts/ # Page layouts │ ├── navigation.ts # Navigation config │ ├── config.yaml # Site config │ ├── pages/ # Route pages │ └── utils/ # Utilities ├── public/ # Static assets -├── scripts/ # Build scripts -└── .github/ # CI/CD workflows +├── scripts/ # Build scripts (fetch contributors, community files) +├── vendor/ # AstroWind integration +└── .github/ # CI/CD workflows + Dependabot ``` ## 🛠️ Getting Started ### Prerequisites -- Node.js >= 22.12.0 +- Node.js 24.x - npm ### Installation @@ -74,34 +74,39 @@ npm run preview ## 📋 Available Scripts -| Script | Description | -| ---------------------------- | ----------------------------------- | -| `npm run dev` | Start development server | -| `npm run build` | Build for production | -| `npm run preview` | Preview production build | -| `npm run check` | Run all code quality checks | -| `npm run check:astro` | Run Astro type checking | -| `npm run check:eslint` | Run ESLint | -| `npm run check:prettier` | Run Prettier check | -| `npm run fix` | Auto-fix ESLint and Prettier issues | -| `npm run fetch:contributors` | Fetch GitHub contributor data | -| `npm run license:check` | Check dependency licenses | -| `npm run license:report` | Generate license report | +| Script | Description | +| ---------------------------- | ------------------------------------ | +| `npm run dev` | Start development server | +| `npm run build` | Build for production (with prebuild) | +| `npm run preview` | Preview production build | +| `npm run check` | Run all code quality checks | +| `npm run check:astro` | Run Astro type checking | +| `npm run check:eslint` | Run ESLint | +| `npm run check:prettier` | Run Prettier check | +| `npm run fix` | Auto-fix ESLint and Prettier issues | +| `npm run fetch:contributors` | Fetch GitHub contributor data | +| `npm run license:check` | Check dependency licenses | +| `npm run license:report` | Generate license report (Markdown) | +| `npm run license:summary` | Show license summary | ## 🌍 Pages -| Route | Description | -| ------------- | ------------------------------------- | -| `/` | Homepage | -| `/projects` | Project list with filters | -| `/landscape` | CNCF-style project landscape | -| `/blog` | Blog list (tech + news) | -| `/events` | Community events timeline | -| `/contribute` | Contribution guide + contributor wall | +| Route | Description | +| ----------------- | ------------------------------------- | +| `/` | Homepage | +| `/projects` | Project list with category filters | +| `/projects/:slug` | Individual project detail page | +| `/landscape` | CNCF-style project landscape | +| `/blog` | Blog list (tech + news) | +| `/events` | Community events timeline | +| `/contribute` | Contribution guide + contributor wall | +| `/security` | Security policy | +| `/values` | Community values | +| `/cla` | Contributor License Agreement | ## 🤝 Contributing -Please read our [Contributing Guide](https://github.com/iflytek/community/blob/main/CONTRIBUTING.md) and [Code of Conduct](https://github.com/iflytek/community/blob/main/CODE_OF_CONDUCT.md) before contributing. +Please read our [Contributing Guide](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) before contributing. ## 📄 License @@ -113,4 +118,7 @@ Third-party licenses are listed in [NOTICE](NOTICE). - **Website**: https://opensource.iflytek.com - **GitHub**: https://github.com/iflytek +- **Gitee**: https://gitee.com/organizations/iflytek - **iFLYTEK Official**: https://www.iflytek.com +- **Discord**: https://discord.com/invite/vXzgts4fK +- **LinkedIn**: https://www.linkedin.com/in/astron-ai diff --git a/code-of-conduct.md b/code-of-conduct.md new file mode 100644 index 0000000..98386a1 --- /dev/null +++ b/code-of-conduct.md @@ -0,0 +1,3 @@ +# Iflytek Community Code of Conduct + +Please refer to our [Iflytek Community Code of Conduct](https://github.com/iflytek/community/blob/master/code-of-conduct.md) diff --git a/contributing.md b/contributing.md new file mode 100644 index 0000000..dbfdfcc --- /dev/null +++ b/contributing.md @@ -0,0 +1,84 @@ +# Contributing to the Community + + + +- [Getting Started](#getting-started) +- [How to Contribute](#how-to-contribute) +- [Contributor Guides](#contributor-guides) + - [Issue Guidelines](#issue-guidelines) + - [Pull Request Guidelines](#pull-request-guidelines) + - [Review Guidelines](#review-guidelines) + - [Discussions Guidelines](#discussions-guidelines) +- [Mentorship](#mentorship) +- [Contributing to Individual SIGs](#contributing-to-individual-sigs) + + +Welcome to the Iflytek Opensource Community contributing guide. We are excited about the prospect of you joining our community! + +## Getting Started + +We have full documentation on how to get started contributing: + +- [Community Governance](governance.md) - How the community is organized +- [Community Membership](community-membership.md) - Membership levels and responsibilities +- [Code of Conduct](code-of-conduct.md) - Our community values and expectations + +## How to Contribute + +1. **Find something to work on** - Check [open issues](https://github.com/iflytek/community/issues), attend SIG meetings, or join discussions on our communication channels +2. **Read the contributor guide** - Understand our processes and conventions +3. **File an issue** - Before starting significant work, discuss your plans (see [Issue Guidelines](contribute/issue-guidelines.md)) +4. **Submit a pull request** - Follow our [PR workflow](contribute/pull-request-guidelines.md) + +## Contributor Guides + +These documents provide detailed guidance on how to contribute effectively: + +### Issue Guidelines + +The [Issue Guidelines](contribute/issue-guidelines.md) document covers: + +- How to search for existing issues before opening a new one +- What information to include when opening an issue +- The issue triage process and how maintainers review incoming issues +- Issue lifecycle from open to resolved +- Label conventions (`kind/`, `priority/`, `sig/`, `triage/`) + +### Pull Request Guidelines + +The [Pull Request Guidelines](contribute/pull-request-guidelines.md) document covers: + +- The pull request process from creation to merge +- How to mark unfinished pull requests (WIP) +- Why pull requests get closed (inactivity after 90 days) +- Why your pull request might not be getting reviewed +- Best practices: smaller PRs, good comments, testing, commit messages + +### Review Guidelines + +The [Review Guidelines](contribute/review-guidelines.md) document covers tips for reviewers: + +- Managing your time for reviews +- When to loop in others with domain-specific knowledge +- How to ask questions and request changes respectfully +- Commit hygiene expectations +- How to check out a pull request locally for deeper review + +### Discussions Guidelines + +The [Discussions Guidelines](contribute/discussions-guidelines.md) document covers: + +- What discussions are for (questions, brainstorming, showcase, announcements) +- Discussion categories and when to use each +- Discussion etiquette +- When to use issues vs discussions + +## Mentorship + +We welcome volunteers for our mentorship programs. If you're interested in mentoring or being mentored, please reach out to the community. + +## Contributing to Individual SIGs + +Each SIG may have its own policies for editing their section of this repository. Edits in SIG sub-directories should follow any additional guidelines described by the respective SIG leads in the sub-directory's `CONTRIBUTING` file. + +Attending a SIG meeting or posting on their communication channel is recommended if you want to make extensive contributions. diff --git a/package.json b/package.json index c00f42f..fe0c670 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "type": "module", "private": true, "engines": { - "node": ">=22.12.0" + "node": "24.x" }, "scripts": { "dev": "astro dev", diff --git a/security.md b/security.md new file mode 100644 index 0000000..5d1403f --- /dev/null +++ b/security.md @@ -0,0 +1,45 @@ +# Security Policy + + + +- [Reporting a Vulnerability](#reporting-a-vulnerability) + - [What to Include](#what-to-include) + - [What to Expect](#what-to-expect) +- [Supported Versions](#supported-versions) +- [Security Best Practices](#security-best-practices) + + +If you discover a security issue in this project, please follow the guidelines below. + +## Reporting a Vulnerability + +**Do not** report security vulnerabilities through public GitHub issues. + +Instead, please report security vulnerabilities by emailing the project's security team. The team will investigate and respond as soon as possible. + +### What to Include + +Please include the following information in your report: + +- A description of the vulnerability +- Steps to reproduce the issue +- Potential impact of the vulnerability +- Any suggested fixes or mitigations (if available) + +### What to Expect + +- **Acknowledgment**: We will acknowledge receipt of your report within 48 hours +- **Assessment**: We will assess the vulnerability and determine the severity +- **Resolution**: We will work on a fix and coordinate the disclosure +- **Credit**: We will credit you for the discovery (unless you prefer to remain anonymous) + +## Supported Versions + +Only the latest release receives security patches. Users are encouraged to upgrade to the latest version to receive security fixes. + +## Security Best Practices + +- Keep all dependencies up to date +- Enable two-factor authentication on your GitHub account +- Follow the principle of least privilege when granting access +- Review code changes carefully before merging diff --git a/src/components/common/ApplyColorMode.astro b/src/components/common/ApplyColorMode.astro index d0d97fe..7661925 100644 --- a/src/components/common/ApplyColorMode.astro +++ b/src/components/common/ApplyColorMode.astro @@ -1,7 +1,5 @@ --- import { UI } from 'astrowind:config'; - -// TODO: This code is temporary --- diff --git a/src/navigation.ts b/src/navigation.ts index c403f57..d0aac9f 100644 --- a/src/navigation.ts +++ b/src/navigation.ts @@ -83,44 +83,41 @@ export const footerData = { links: [ { text: 'Email', href: 'mailto:opensource@iflytek.com' }, { text: 'GitHub', href: 'https://github.com/iflytek' }, - { text: 'Discord', href: '#' }, + { text: 'Discord', href: 'https://discord.com/invite/vXzgts4fK' }, ], }, { title: '相关网站', titleEn: 'Related Sites', links: [ - { text: 'iFLYTEK 官网', textEn: 'iFLYTEK Official', href: 'https://www.iflytek.com' }, + { text: 'iFLYTEK Official', href: 'https://www.iflytek.com' }, { text: 'GitHub', href: 'https://github.com/iflytek' }, - { text: 'Gitee', href: 'https://gitee.com/iflytekopensource' }, - { text: 'OSCHINA', href: 'https://www.oschina.net/' }, + { text: 'Gitee', href: 'https://gitee.com/organizations/iflytek' }, ], }, { title: '关注我们', titleEn: 'Follow Us', links: [ - { text: 'X (Twitter)', href: '#' }, - { text: 'YouTube', href: '#' }, - { text: '微信', textEn: 'WeChat', href: '#' }, - { text: 'Discord', href: '#' }, + { text: 'LinkedIn', href: 'https://www.linkedin.com/in/astron-ai' }, + { text: 'WeChat', href: '#' }, + { text: 'Discord', href: 'https://discord.com/invite/vXzgts4fK' }, ], }, ], secondaryLinks: [ - { text: '隐私政策', textEn: 'Privacy Policy', href: getPermalink('/privacy') }, - { text: '使用条款', textEn: 'Terms of Use', href: getPermalink('/terms') }, - { text: '开源许可', textEn: 'Open Source License', href: getPermalink('/license') }, + { text: '安全策略', textEn: 'Security Policy', href: getPermalink('/security') }, + { text: '社区价值观', textEn: 'Community Values', href: getPermalink('/values') }, + { text: '开源许可', textEn: 'CLA', href: getPermalink('/cla') }, ], socialLinks: [ - { ariaLabel: 'X (Twitter)', icon: 'tabler:brand-x', href: '#' }, - { ariaLabel: 'YouTube', icon: 'tabler:brand-youtube', href: '#' }, + { ariaLabel: 'LinkedIn', icon: 'tabler:brand-linkedin', href: 'https://www.linkedin.com/in/astron-ai' }, { ariaLabel: 'WeChat', icon: 'tabler:brand-wechat', href: '#' }, - { ariaLabel: 'Discord', icon: 'tabler:brand-discord', href: '#' }, + { ariaLabel: 'Discord', icon: 'tabler:brand-discord', href: 'https://discord.com/invite/vXzgts4fK' }, { ariaLabel: 'RSS', icon: 'tabler:rss', href: getAsset('/rss.xml') }, { ariaLabel: 'GitHub', icon: 'tabler:brand-github', href: 'https://github.com/iflytek' }, ], footNote: ` - © 2024 iFLYTEK CO., LTD. All rights reserved. + © 2026 iFLYTEK Corporation All Rights Reserved by iFLYTEK `, }; diff --git a/src/pages/cla.astro b/src/pages/cla.astro new file mode 100644 index 0000000..7a2d04d --- /dev/null +++ b/src/pages/cla.astro @@ -0,0 +1,56 @@ +--- +import MarkdownLayout from '~/layouts/MarkdownLayout.astro'; +--- + + +

+ In order to clarify the intellectual property license granted with Contributions from any person or entity, the + iFLYTEK Open Source Community must have a Contributor License Agreement (CLA) on file that has been signed by each + Contributor, indicating agreement to the license terms below. +

+ +

+ This license is for your protection as a Contributor as well as the protection of the project and its users; it does + not change your rights to use your own Contributions for any other purpose. +

+ +

Grant of Copyright License

+ +

+ You grant to the project and its users a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and + distribute your Contributions and such derivative works. +

+ +

Grant of Patent License

+ +

+ You grant to the project and its users a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and + otherwise transfer your Contributions, where such license applies only to those patent claims licensable by you that + are necessarily infringed by your Contribution alone or by combination of your Contribution with the project to + which you submitted the Contribution. +

+ +

Representations

+ +

+ You represent that you are legally entitled to grant the above license. If your employer(s) has rights to + intellectual property that you create that includes your Contributions, you represent that you have received + permission to make Contributions on behalf of that employer, that your employer has waived such rights for your + Contributions to the project, or that your employer has executed a separate Corporate CLA. +

+ +

Disclaimer

+ +

+ Unless required by applicable law or agreed to in writing, your Contributions are provided on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. You are not expected to provide support for + your Contributions, except to the extent you desire to provide support. +

+ +

+ For the latest version of this agreement, please visit + iFLYTEK Community CLA. +

+
diff --git a/src/pages/contribute.astro b/src/pages/contribute.astro index 7ef535b..7bcccc0 100644 --- a/src/pages/contribute.astro +++ b/src/pages/contribute.astro @@ -46,9 +46,11 @@ const totalContributions = contributors.reduce((sum, c) => sum + c.contributions
-

- 参与贡献 - / Contribute +

+ 参与贡献/Contribute

加入 iFLYTEK 开源社区,一起构建更好的 AI 生态。感谢每一位贡献者! @@ -319,7 +321,7 @@ const totalContributions = contributors.reduce((sum, c) => sum + c.contributions Contributing Guide Discord diff --git a/src/pages/events.astro b/src/pages/events.astro index bf87abe..deda8ef 100644 --- a/src/pages/events.astro +++ b/src/pages/events.astro @@ -151,9 +151,11 @@ const newsPosts = posts

-

- 社区活动 - / Events +

+ 社区活动/Events

参与 iFLYTEK 开源社区活动 — Meetup、Hackathon、Workshop,与开发者面对面交流 diff --git a/src/pages/index.astro b/src/pages/index.astro index 136146f..81772ab 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -131,7 +131,7 @@ const starDisplay = totalStars >= 1000 ? (totalStars / 1000).toFixed(1) + 'K' : }, { text: '加入 Discord', - href: '#', + href: 'https://discord.com/invite/vXzgts4fK', icon: 'tabler:brand-discord', }, ]} diff --git a/src/pages/projects.astro b/src/pages/projects.astro index bbd5020..678833d 100644 --- a/src/pages/projects.astro +++ b/src/pages/projects.astro @@ -42,9 +42,11 @@ const totalForks = sortedProjects.reduce((sum, p) => sum + (p.data.forks || 0),

-

- 开源项目 - / Projects +

+ 开源项目/Projects

探索 iFLYTEK 的开源项目生态,涵盖 AI Agent、开发工具等前沿领域 diff --git a/src/pages/security.astro b/src/pages/security.astro new file mode 100644 index 0000000..fab20be --- /dev/null +++ b/src/pages/security.astro @@ -0,0 +1,67 @@ +--- +import MarkdownLayout from '~/layouts/MarkdownLayout.astro'; +--- + + +

If you discover a security issue in this project, please follow the guidelines below.

+ +

Reporting a Vulnerability

+ +

+ Do not report security vulnerabilities through public GitHub issues. +

+ +

+ Instead, please report security vulnerabilities by emailing the project's security team. The team will investigate + and respond as soon as possible. +

+ +

What to Include

+ +

Please include the following information in your report:

+ +
    +
  • A description of the vulnerability
  • +
  • Steps to reproduce the issue
  • +
  • Potential impact of the vulnerability
  • +
  • Any suggested fixes or mitigations (if available)
  • +
+ +

What to Expect

+ +
    +
  • + Acknowledgment: We will acknowledge receipt of your report within 48 hours +
  • +
  • + Assessment: We will assess the vulnerability and determine the severity +
  • +
  • + Resolution: We will work on a fix and coordinate the disclosure +
  • +
  • + Credit: We will credit you for the discovery (unless you prefer to remain anonymous) +
  • +
+ +

Supported Versions

+ +

+ Only the latest release receives security patches. Users are encouraged to upgrade to the latest version to receive + security fixes. +

+ +

Security Best Practices

+ +
    +
  • Keep all dependencies up to date
  • +
  • Enable two-factor authentication on your GitHub account
  • +
  • Follow the principle of least privilege when granting access
  • +
  • Review code changes carefully before merging
  • +
+ +

+ For the latest version of this policy, please visit + iFLYTEK Community Security Policy. +

+ diff --git a/src/pages/values.astro b/src/pages/values.astro new file mode 100644 index 0000000..ca6abd2 --- /dev/null +++ b/src/pages/values.astro @@ -0,0 +1,56 @@ +--- +import MarkdownLayout from '~/layouts/MarkdownLayout.astro'; +--- + + +

+ The iFLYTEK Open Source Community is built on a foundation of shared values that guide our interactions, decisions, + and growth. +

+ +

Openness

+ +

+ We believe in the power of open collaboration. Our code, documentation, and decision-making processes are + transparent and accessible to everyone. +

+ +

Inclusivity

+ +

+ We welcome contributors of all backgrounds, skill levels, and perspectives. A diverse community produces better + software and fosters innovation. +

+ +

Respect

+ +

+ We treat every community member with respect and kindness. Disagreements are natural, but we resolve them + constructively and professionally. +

+ +

Quality

+ +

+ We strive for excellence in everything we build. We value well-tested, well-documented, and maintainable code over + quick fixes. +

+ +

Responsibility

+ +

+ We take responsibility for our contributions and their impact on users and the broader community. We consider + security, accessibility, and sustainability in our work. +

+ +

Continuous Learning

+ +

+ We embrace a growth mindset. We learn from mistakes, share knowledge freely, and support each other's development. +

+ +

+ For the latest version of our community values, please visit + iFLYTEK Community Values. +

+