Here are all of the steps you should follow whenever contributing to this repo!
- Before you start making changes, always make sure you're on the main branch, then
git pull
andnpm i
to make sure your code is up to date - Create a branch
git checkout -b <name-of-branch>
- Make changes to the code
npm run lint
to ensure code standards. (runningnpm run lint:fix
will fix most of the styling errors)
When interacting with Git/GitHub, feel free to use the command line, VSCode extension, or Github desktop. These steps assume you have already made a branch using git checkout -b <branch-name>
and you have made all neccessary code changes for the provided task.
- View diffs of each file you changed using the VSCode Github extension (3rd icon on far left bar of VSCode) or GitHub Desktop
git add .
(to stage all files) orgit add <file-name>
(to stage specific file)git commit -m "<type>[optional scope]: <description>"
orgit commit -m "<type>[optional scope]: <description>" -m "[optional body]"
orgit commit
to get a message promptgit push -u origin <name-of-branch>
- Go to the Pull Requests tab on github.com
- Find your PR, fill out the PR template
- (If applicable, provide a screenshot of your work in the comment area)
- Link your PR to the corresponding Issue
- Request a reviewer to check your code
- Once approved, your code is ready to be merged in 🎉
You will need a proper .env file. Add all required environment variables here.
- MONGO_URI: MongoDB connection string.
- JWT_SECRET: Stores the secret key used for signing JSON Web Tokens (JWTs).
- NEXT_STRIPE_PUBLIC_KEY: Donations; stores public key associated with Stripe account; used on the client side.
- STRIPE_BUTTON_ID: Donations; stores an identifier for a specific Stripe payment button or element within your application.
- STRIPE_SECRET_KEY: Donations; stores secret key associated with Stripe account; used on the server-side to authenticate requests to Stripe's APIs.
- STRIPE_WEBHOOK_SECRET: Donations; a secret key used for securing webhook endpoints that receive notifications from Stripe.
- npm run dev for a local test.
Stay tuned. 👀
Blogs
- No search bar on archive blog page. However, search bar on main blog page (/blog) can filter all blogs.
- Admin create blog: To properly add date, click the box in the calendar. You might need to select one day later to get the current day.
Supporters (resource page)
- To update current supporters image, please reach out to Hack4Impact and we will substitute current image with newly updated one. For best quality, maintain rectangular shape with white background.
Resources
- For best quality, when creating a resource in admin, ensure image is rectangular shaped.
- IMPORTANT: For links, include the full URL (ie, https://.....) to properly route to the desired page.
TBD
TBD