├── .github ├── DISCUSSION_TEMPLATE │ ├── idea.yml │ ├── show-tell.yml │ ├── bug-report.yml │ ├── help.yml │ ├── feature-question.yml │ └── account-issue.yml ├── workflows │ ├── auto-close.yml │ └── lock-stale-discussions.yml └── CODE_OF_CONDUCT.md └── README.md /.github/DISCUSSION_TEMPLATE/idea.yml: -------------------------------------------------------------------------------- 1 | body: 2 | - type: markdown 3 | attributes: 4 | value: | 5 | # Please go to Vercel Community 6 | > [!IMPORTANT] 7 | > **New Discussions in this repo are no longer actively monitored and will be automatically closed.** 8 | > **Please join us in the new [Vercel Community](https://vercel.community).** 9 | - type: checkboxes 10 | attributes: 11 | label: Acknowledgement 12 | options: 13 | - label: I acknowledge that this discussion will be automatically closed. 14 | required: true 15 | -------------------------------------------------------------------------------- /.github/DISCUSSION_TEMPLATE/show-tell.yml: -------------------------------------------------------------------------------- 1 | body: 2 | - type: markdown 3 | attributes: 4 | value: | 5 | # Please go to Vercel Community 6 | > [!IMPORTANT] 7 | > **New Discussions in this repo are no longer actively monitored and will be automatically closed.** 8 | > **Please join us in the new [Vercel Community](https://vercel.community).** 9 | - type: checkboxes 10 | attributes: 11 | label: Acknowledgement 12 | options: 13 | - label: I acknowledge that this discussion will be automatically closed. 14 | required: true 15 | -------------------------------------------------------------------------------- /.github/DISCUSSION_TEMPLATE/bug-report.yml: -------------------------------------------------------------------------------- 1 | body: 2 | - type: markdown 3 | attributes: 4 | value: | 5 | # Please go to Vercel Community 6 | > [!IMPORTANT] 7 | > **New Discussions in this repo are no longer actively monitored and will be automatically closed.** 8 | > **Please join us in the new [Vercel Community](https://vercel.community).** 9 | - type: checkboxes 10 | attributes: 11 | label: Acknowledgement 12 | options: 13 | - label: I acknowledge that this discussion will be automatically closed. 14 | required: true 15 | -------------------------------------------------------------------------------- /.github/DISCUSSION_TEMPLATE/help.yml: -------------------------------------------------------------------------------- 1 | body: 2 | - type: markdown 3 | attributes: 4 | value: | 5 | # Please go to Vercel Community 6 | > [!IMPORTANT] 7 | > **New Discussions in this repo are no longer actively monitored and will be automatically closed.** 8 | > **Please join us in the new [Vercel Community](https://vercel.community).** 9 | - type: checkboxes 10 | attributes: 11 | label: Acknowledgement 12 | options: 13 | - label: I acknowledge that this discussion will be automatically closed. 14 | required: true 15 | - type: textarea 16 | attributes: 17 | label: Question 18 | validations: 19 | required: true 20 | -------------------------------------------------------------------------------- /.github/DISCUSSION_TEMPLATE/feature-question.yml: -------------------------------------------------------------------------------- 1 | body: 2 | - type: markdown 3 | attributes: 4 | value: | 5 | # Please go to Vercel Community 6 | > [!IMPORTANT] 7 | > **New Discussions in this repo are no longer actively monitored and will be automatically closed.** 8 | > **Please join us in the new [Vercel Community](https://vercel.community).** 9 | - type: checkboxes 10 | attributes: 11 | label: Acknowledgement 12 | options: 13 | - label: I acknowledge that this discussion will be automatically closed. 14 | required: true 15 | - type: textarea 16 | attributes: 17 | label: Question 18 | validations: 19 | required: true 20 | -------------------------------------------------------------------------------- /.github/DISCUSSION_TEMPLATE/account-issue.yml: -------------------------------------------------------------------------------- 1 | body: 2 | - type: markdown 3 | attributes: 4 | value: | 5 | # Please use the appropriate private channel 6 | 7 | Due to the sensitive nature of personal data, account issues cannot be safely handled in this public forum. 8 | 9 | For login issues or billing problems, please go to our [Vercel Support contact guide](https://vercel.com/guides/how-to-get-vercel-support) to get the latest contact info. 10 | 11 | If your account, signup, or deployment was blocked, please visit the following guides for more information: 12 | - [Why has my account or deployment been paused?](https://vercel.com/guides/why-is-my-account-deployment-blocked) 13 | - [Why am I unable to login or signup to the Vercel platform?](https://vercel.com/guides/why-can-i-not-signup) 14 | - type: checkboxes 15 | attributes: 16 | label: Acknowledgement 17 | options: 18 | - label: I acknowledge that account issues cannot safely be solved in public and this discussion will be automatically closed. 19 | required: true 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | 4 |

Vercel

5 | 6 |

Develop. Preview. Ship.

7 |

8 | 9 | ## About 10 | 11 | Vercel is the platform for frontend developers, providing the speed and reliability innovators need to create at the moment of inspiration. 12 | 13 | We enable teams to iterate quickly and develop, preview, and ship delightful user experiences. Vercel has zero-configuration support for 35+ frontend frameworks and integrates with your headless content, commerce, or database of choice. 14 | 15 | [Start the tutorial](https://vercel.com/docs/concepts/get-started) or [deploy a template](https://vercel.com/docs#quickstart) in minutes. 16 | 17 | ## Community Discussions 18 | 19 | The Vercel Community enables developers to ask questions to the community or make suggestions to the team. Before you jump in, let's make sure you're in the right place. Please [check out the welcome guide](https://vercel.community/t/getting-started-with-the-vercel-community/152), [code of conduct](https://vercel.community/guidelines) and consult our [support terms](https://vercel.com/legal/support-terms). -------------------------------------------------------------------------------- /.github/workflows/auto-close.yml: -------------------------------------------------------------------------------- 1 | name: New Discussion Auto-lock 2 | # automatically lock and close new discussion posts 3 | 4 | on: 5 | discussion: 6 | types: [created] 7 | 8 | jobs: 9 | lock_discussion: 10 | runs-on: ubuntu-latest 11 | steps: 12 | - name: Close and lock discussion 13 | run: | 14 | lockSucceeded="$(gh api graphql -F discussionId=$DISCUSSION_ID -f query=' 15 | mutation lock($discussionId:ID!) { 16 | addDiscussionComment(input:{discussionId:$discussionId, body:"This discussion was automatically closed because the community moved to [vercel.community](https://vercel.community)"}) { 17 | comment{ 18 | url 19 | } 20 | } 21 | closeDiscussion(input: {discussionId:$discussionId, reason: OUTDATED}) { 22 | discussion { 23 | url 24 | stateReason 25 | } 26 | } 27 | lockLockable(input: {lockableId:$discussionId}) { 28 | actor { 29 | login 30 | } 31 | lockedRecord { 32 | activeLockReason 33 | locked 34 | } 35 | } 36 | } 37 | ' --jq '.data.lockLockable.lockedRecord.locked')" 38 | 39 | echo "LOCKED =" $lockSucceeded 40 | echo '${{ github.event.discussion.number }}' | jq -r '"https://github.com/vercel/community/discussions/\(.)"' 41 | env: 42 | GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} 43 | DISCUSSION_ID: ${{ github.event.discussion.node_id }} 44 | -------------------------------------------------------------------------------- /.github/workflows/lock-stale-discussions.yml: -------------------------------------------------------------------------------- 1 | name: Auto Lock Stale Discussions 2 | # lock discussions that have not been updated in 30 days, 3 | # starting with oldest, and running once per day 4 | 5 | on: 6 | schedule: 7 | - cron: '45 * * * *' 8 | workflow_dispatch: 9 | 10 | jobs: 11 | close_discussion: 12 | runs-on: ubuntu-latest 13 | steps: 14 | - name: get-stale-discussions 15 | id: get-stale-discussions 16 | run: | 17 | staleDiscussionsQuery="repo:vercel/community updated:<$(date -d "-1days" -I) sort:updated-asc is:unlocked" 18 | 19 | discussions=$(gh api graphql -F searchQuery="$staleDiscussionsQuery" -f query=' 20 | query oldDiscussions($searchQuery: String!) { 21 | search(query:$searchQuery, type:DISCUSSION, first: 20) { 22 | nodes { 23 | ... on Discussion { 24 | id 25 | locked 26 | url 27 | } 28 | } 29 | } 30 | } 31 | ' --jq '.data.search.nodes') 32 | 33 | echo "DISCUSSIONS_TO_LOCK=$discussions" >> $GITHUB_ENV 34 | env: 35 | GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} 36 | - name: lock-discussions 37 | run: | 38 | echo "$DISCUSSIONS_TO_LOCK" | jq -r '"Closing \(length) stale discussions: "' 39 | for id in $(jq -r '.[].id' <<< "$DISCUSSIONS_TO_LOCK") 40 | do 41 | lockSucceeded="$(gh api graphql -F discussionId=$id -f query=' 42 | mutation lock($discussionId:ID!) { 43 | lockLockable(input: {lockableId:$discussionId}) { 44 | actor { 45 | login 46 | } 47 | lockedRecord { 48 | activeLockReason 49 | locked 50 | } 51 | } 52 | addDiscussionComment(input: {discussionId: $discussionId, body: "This discussion was automatically locked because the community moved to a new site. Please join us at [vercel.community](https://vercel.community)"}) { 53 | comment { 54 | body 55 | } 56 | } 57 | } 58 | ' --jq '.data.lockLockable.lockedRecord.locked')" 59 | echo "Locked $id: $lockSucceeded" 60 | done 61 | env: 62 | GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} 63 | -------------------------------------------------------------------------------- /.github/CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | ## Code of Conduct 2 | 3 | ### Our Pledge 4 | 5 | In the interest of fostering an open and welcoming environment, we as 6 | contributors and maintainers pledge to making participation in our project and 7 | our community a harassment-free experience for everyone, regardless of age, body 8 | size, disability, ethnicity, gender identity and expression, level of experience, 9 | nationality, personal appearance, race, religion, or sexual identity and 10 | orientation. 11 | 12 | ### Our Standards 13 | 14 | Examples of behavior that contributes to creating a positive environment 15 | include: 16 | 17 | - Using welcoming and inclusive language 18 | - Being respectful of differing viewpoints and experiences 19 | - Gracefully accepting constructive criticism 20 | - Focusing on what is best for the community 21 | - Showing empathy towards other community members 22 | 23 | Examples of unacceptable behavior by participants include: 24 | 25 | - The use of sexualized language or imagery and unwelcome sexual attention or 26 | advances 27 | - Trolling, insulting/derogatory comments, and personal or political attacks 28 | - Public or private harassment 29 | - Publishing others' private information, such as a physical or electronic 30 | address, without explicit permission 31 | - Other conduct which could reasonably be considered inappropriate in a 32 | professional setting 33 | 34 | ### Our Responsibilities 35 | 36 | Project maintainers are responsible for clarifying the standards of acceptable 37 | behavior and are expected to take appropriate and fair corrective action in 38 | response to any instances of unacceptable behavior. 39 | 40 | Project maintainers have the right and responsibility to remove, edit, or 41 | reject comments, commits, code, wiki edits, issues, and other contributions 42 | that are not aligned to this Code of Conduct, or to ban temporarily or 43 | permanently any contributor for other behaviors that they deem inappropriate, 44 | threatening, offensive, or harmful. 45 | 46 | ### Scope 47 | 48 | This Code of Conduct applies both within project spaces and in public spaces 49 | when an individual is representing the project or its community. Examples of 50 | representing a project or community include using an official project e-mail 51 | address, posting via an official social media account, or acting as an appointed 52 | representative at an online or offline event. Representation of a project may be 53 | further defined and clarified by project maintainers. 54 | 55 | ### Enforcement 56 | 57 | Instances of abusive, harassing, or otherwise unacceptable behavior may be 58 | reported by contacting the project team at [coc@vercel.com](mailto:coc@vercel.com). All 59 | complaints will be reviewed and investigated and will result in a response that 60 | is deemed necessary and appropriate to the circumstances. The project team is 61 | obligated to maintain confidentiality with regard to the reporter of an incident. 62 | Further details of specific enforcement policies may be posted separately. 63 | 64 | Project maintainers who do not follow or enforce the Code of Conduct in good 65 | faith may face temporary or permanent repercussions as determined by other 66 | members of the project's leadership. 67 | 68 | ### Attribution 69 | 70 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, 71 | available at [http://contributor-covenant.org/version/1/4][version] 72 | 73 | [homepage]: http://contributor-covenant.org 74 | [version]: http://contributor-covenant.org/version/1/4/ 75 | --------------------------------------------------------------------------------