From b4b8d9f047221fb8074f87a157b7e7519150401e Mon Sep 17 00:00:00 2001 From: Ayu Adiati <45172775+adiati98@users.noreply.github.com> Date: Mon, 2 Oct 2023 20:22:26 +0200 Subject: [PATCH] Feature/update monthly challenge page to Hacktoberfest (#994) * Add October 2023 challenge page * Update getChallenges.ts * Set current true to Hacktoberfest challenge * Remove set current true from Preptember challenge * Add blog posts to Hacktoberfest and Preptember challenges * Add challenge is complete alert to Preptember challenge page * Minor wordings fix in oct-2023.jsx * Update index.tsx * Prettified Code! --------- Co-authored-by: Dan Ott Co-authored-by: danieltott --- app/data/monthlyChallenges/getChallenges.ts | 2 + .../__frontend/monthlychallenges/index.tsx | 58 ++- .../__frontend/monthlychallenges/oct-2023.jsx | 483 ++++++++++++++++++ .../monthlychallenges/sept-2023.jsx | 5 + 4 files changed, 534 insertions(+), 14 deletions(-) create mode 100644 app/routes/__frontend/monthlychallenges/oct-2023.jsx diff --git a/app/data/monthlyChallenges/getChallenges.ts b/app/data/monthlyChallenges/getChallenges.ts index cd2cdf5f..7ee3d1cd 100644 --- a/app/data/monthlyChallenges/getChallenges.ts +++ b/app/data/monthlyChallenges/getChallenges.ts @@ -1,3 +1,4 @@ +import { handle as oct2023 } from '~/routes/__frontend/monthlychallenges/oct-2023'; import { handle as sept2023 } from '~/routes/__frontend/monthlychallenges/sept-2023'; import { handle as feb2023 } from '~/routes/__frontend/monthlychallenges/feb-2023'; import { handle as jan2023 } from '~/routes/__frontend/monthlychallenges/jan-2023'; @@ -30,6 +31,7 @@ import { handle as dec2020 } from '~/routes/__frontend/monthlychallenges/dec-202 import { handle as nov2020 } from '~/routes/__frontend/monthlychallenges/nov-2020'; const challenges: Challenge[] = [ + { handleData: oct2023, slug: 'oct-2023' }, { handleData: sept2023, slug: 'sept-2023' }, { handleData: feb2023, slug: 'feb-2023' }, { handleData: jan2023, slug: 'jan-2023' }, diff --git a/app/routes/__frontend/monthlychallenges/index.tsx b/app/routes/__frontend/monthlychallenges/index.tsx index 3fb821a4..33ed8e5a 100644 --- a/app/routes/__frontend/monthlychallenges/index.tsx +++ b/app/routes/__frontend/monthlychallenges/index.tsx @@ -136,17 +136,39 @@ const challengeList: Challenge[] = [ ], }, { + current: true, title: 'Hacktoberfest', subtitle: `Participate in open source, learn, and have fun!`, description: ( -

- This challenge is always run during October and was our first-ever - monthly challenge. We have three tracks: maintainers will provide issues - labeled for Hacktoberfest, contributors will solve issues, and mentors - will help contributors and maintainers be successful. -

+ <> +

+ This challenge is always run during October and was our first-ever + monthly challenge. We have three tracks: maintainers will provide + issues labeled for Hacktoberfest, contributors will solve issues, and + mentors will help contributors and maintainers be successful. +

+

+ Learn more about this challenge in{' '} + + this blog post + + . +

+

+ To view all of the details, including a list of VC-approved + repositories to contribute to,{' '} + + check out the October monthly challenge page + + . +

+ ), links: [ + { + href: '/monthlychallenges/oct-2023', + title: 'October, 2023', + }, { href: '/monthlychallenges/oct-2022', title: 'October, 2022', @@ -158,17 +180,25 @@ const challengeList: Challenge[] = [ ], }, { - current: true, title: 'Preptember', subtitle: `Get your open source projects ready!`, description: ( -

- Maintainers will be reviewing their open source repos with our checklist - to make sure their projects are ready for Hacktoberfest contributions, - and our contributors will be looking at their favorite repos, evaluating - them based on the guide, and writing good issues as needed to fulfill - the criteria. -

+ <> +

+ Maintainers will be reviewing their open source repos with our + checklist to make sure their projects are ready for Hacktoberfest + contributions, and our contributors will be looking at their favorite + repos, evaluating them based on the guide, and writing good issues as + needed to fulfill the criteria. +

+

+ Learn more about this challenge in{' '} + + this blog post + + . +

+ ), links: [ { diff --git a/app/routes/__frontend/monthlychallenges/oct-2023.jsx b/app/routes/__frontend/monthlychallenges/oct-2023.jsx new file mode 100644 index 00000000..1618eae2 --- /dev/null +++ b/app/routes/__frontend/monthlychallenges/oct-2023.jsx @@ -0,0 +1,483 @@ +import { json } from '@remix-run/node'; +import { Link } from '@remix-run/react'; +import LeadText from '~/components/content/LeadText'; +import { createMetaData } from '~/util/createMetaData.server'; + +export const handle = { + listTitle: 'October 2023: Hacktoberfest!', + meta: { + title: 'Monthly Theme & Challenge for October 2023: Hacktoberfest!', + description: + 'October challenge -> Participate to Hacktoberfest! This month, our members will participate to the DigitalOcean Hacktoberfest by being maintainers, contributors, or mentors.', + }, + date: '2023-10-01', + hero: { + heroHeader: '', + }, +}; + +export async function loader() { + const { title, description } = handle.meta; + return json({ + meta: createMetaData({ title, description }), + }); +} + +export function meta({ data: { meta } = {} } = {}) { + return meta; +} + +export default function Challenge() { + return ( + <> +

+ Monthly Challenge for October 2023: It's Hacktoberfest! + Participate in open source, learn, and have fun! +

+ + + This month, we have three tracks: maintainers will provide issues + labeled for Hacktoberfest, contributors will solve issues, and mentors + will help contributors and maintainers be successful. + + +

+ Challenge Team Leads & Facilitators: BekahHW, Dan Ott, + Ayu Adiati & Dominic Duffin +

+ +
+ +

Theme

+

The 2023 Hacktoberfest!

+ +

Challenge

+

Maintainers

+

+ They provide the repository(ies) with "hacktoberfest" topic(s) and + issues labeled "hacktoberfest" on their repository(ies). They will also + answer the contributors' questions, review the pull requests (PRs), and + validate and merge them following the contest rules. +

+ +

Contributors

+

+ They find repository(ies) with "hacktoberfest" topic(s) and issues they + want to solve. The contest's goal is to have four (4) pull requests + (PRs) validated and merged during October. +

+ +

Mentors

+

+ A mentor will be paired with a mentee (contributor or maintainer). They + provide support through a 1:1, a pairing session, Slack, or whatever + works best for the team! +

+ +

How to Participate

+

Before starting

+

+ You can access your dashboard{' '} + here if + you've signed up for the VC Hacktoberfest Initiative. +

+ +

+ Contributors +

+ + +

+ Maintainers +

+

+ Make sure you include "hacktoberfest" as a label in your project's + topics section (found in the "About" section on your repository). That's + how you opt-in to Hacktoberfest. +

+ +

Weekly async check-ins

+

+ Let's start the week with a check-in. What are your goals for + Hacktoberfest for the week? What support do you need? Do you plan on + spending time in the #hacktoberfest-co-working-room, + talking to your mentor, or answering questions as a maintainer? +

+

+ Every Friday of the month, we will drop a check-in for you to share your + progress, ask questions, and find help and support. +

+

+ We will drop the check-ins in the #hacktoberfest channel on + Slack. +

+ +

How do I share my progress?

+

+ Share your progress in the #hacktoberfest channel in Slack + so we can celebrate with you! And if you need support, we'll be there to + help you, too. +

+

+ While no other platform is imposed, sharing on social media for more + reach can be a good idea, but only if you are comfortable doing so. You + can share on X (formerly Twitter) using — or not — the hashtag{' '} + #VCHI, a personal blog, a post on{' '} + DEV.to, you get the idea! +

+

+ Sharing every time you add some work is a good idea. Small progress is + still progress. There is no need to write a detailed blog post. A + 140-character post on X can be enough. For example, " + Today, I submitted my first PR for Hacktoberfest. #VCHI" +

+ +

What if I need help?

+

+ You can ask questions and ask for ideas and help in the{' '} + #hacktoberfest channel in Slack or join the{' '} + #hacktoberfest-co-working-room. Asking for help is part of + the process! +

+ +

And remember, we're always here to help! 💙

+ +

Completing the Challenge!

+

+ To complete the challenge, you need to complete four meaningful + contributions during October. It can be creating a PR, writing a good + issue, creating content such as a blog post or video about contributing + to a project, helping to answer questions or triaging issues, meeting + with your mentee, and so on. Share your progress in the{' '} + #hacktoberfest channel on Slack. +

+

+ Remember, VC is here to support you during Hacktoberfest but is not an + official event partner. To complete the Hacktoberfest, you must have + four (4) pull requests (PRs) accepted. +

+ +

Virtual Coffee Approved Repositories!

+ + +

Resources

+

Virtual Coffee Resources

+ + +

Other Resources

+ + + ); +} diff --git a/app/routes/__frontend/monthlychallenges/sept-2023.jsx b/app/routes/__frontend/monthlychallenges/sept-2023.jsx index 381fb1cb..9f8d8cf0 100644 --- a/app/routes/__frontend/monthlychallenges/sept-2023.jsx +++ b/app/routes/__frontend/monthlychallenges/sept-2023.jsx @@ -30,6 +30,11 @@ export function meta({ data: { meta } = {} } = {}) { export default function Challenge() { return ( <> +
+ This monthly challenge is complete. Congratulations! Please join us for + the next challenge! +
+

Monthly Challenge for September 2023: Preptember! Get open source ready.