This repository contains documentation-first onboarding tasks for new contributors. Each task folder's README describes the objective, acceptance criteria, helpful references, and submission instructions.
Top-level layout
LICENSE— repository license.README.md— this top-level introduction.task/— directory containing individual task folders (each with aREADME.mddescribing the task and submission requirements).
Each task folder contains:
README.md— detailed task instructions, acceptance criteria, examples, and helpful resources.- Optional starter files (scripts, sample code, Dockerfile, etc.) where applicable.
- When you submit: your work should be placed under
task/<your-github-username>/<task-folder>/.
Follow these steps so reviewers can run and verify your work quickly:
- Fork the repository to your GitHub account.
- Create a directory for your work:
task/<your-github-username>/<task-id-or-name>/
- Add your deliverables. Typical required files:
README.md(short personal writeup describing choices and verification steps).- Any screenshots, GIFs, or example output (e.g.,
neofetch-screenshot.png,docker-ps-screenshot.png). - Source files or scripts (
check_resources.sh,todo.py,sentiment.py, etc.). usage.txtorexamples.txtdescribing the exact commands you ran.
- Commit small, focused changes with descriptive messages.
- Push to a feature branch, then open a PR against
init-club/onboarding-2026naming your PR clearly (see section below). - In the PR description include:
- Short summary and which task you're submitting.
- Clear verification steps for reviewers (commands + expected output).
- Links to any external PRs (Task 2.2 / Task 4.2).
- Screenshots and artifacts as attachments or files in your submission directory.
- Fork this repository on GitHub.
- Create your submission folder:
task/<your-github-username>/<task-id>/. - Add a short
README.mddescribing your approach and the artifacts requested by the task. - Include only the files the task asks for (screenshots, short source files, diffs, or configs).
- Open a Pull Request with verification steps and any external links the task requires.
- Implement and test solutions locally in your environment, then include the requested deliverables when submitting.
- Avoid committing large binaries, models, or secrets. If in doubt, ask via an Issue.
Example PR title: feat(tasks): add linux-migration submission by alice
Each task README enumerates the deliverables and what constitutes an acceptable submission. Reviewers will check:
- Deliverables are present and runnable.
- README provides clear setup and verification steps.
- Screenshots / evidence are legible and show the relevant info (e.g.,
neofetchoutput). - For fixes (e.g., the broken web app), the PR both fixes the root cause and includes explanation + tests where applicable.
- Code style: readable, documented, and minimal. Avoid secrets and large binaries in PRs.
If a task has Gold/Silver tiers (e.g., dual-boot vs WSL2), clearly state which tier you expect to be evaluated against.
Reviews are performed by maintainers and/or volunteers. Expect feedback to be constructive and focused on reproducibility.
- Completeness (40%): All required files and evidence are present.
- Correctness (30%): The solution works as claimed; for bug fixes, the root cause is addressed.
- Documentation (20%): README + usage instructions are clear and sufficient to reproduce results.
- Style & safety (10%): Clean code and no unsafe shortcuts (e.g., committing secrets).
- Approved: Merge or close with merge instructions.
- Request changes: Ask for clarifications, missing artifacts, or small fixes.
- Discussion: If scope or expectations are unclear, reviewers will ask clarifying questions.
- Create a fresh branch off
mainfor each submission:git checkout -b feat/tasks/<task>-<username>
- Commit message guidelines:
- Use concise, descriptive messages. Examples:
feat(tasks): add linux-migration submission by <username>fix(frontend): bind rsvp form submit handlerchore(ci): add simple test for rsvp endpoint
- Use concise, descriptive messages. Examples:
- Keep commits small and atomic where possible. Squash or clean history if requested.
- Fill the PR description with:
- What you did and why.
- How to run and verify (copy-pasteable commands).
- Any known limitations or additional notes.
Example PR description template:
Title: feat(tasks): add terminal-velocity by <username>
Summary:
- Completed Task 1.2 (Terminal Velocity).
- Included typing screenshot and `commands.md`.
How to verify:
1. Open task/<username>/2-terminal-velocity/commands.md
2. Verify the three commands and outputs.
3. Confirm screenshot.png shows WPM and accuracy.
Notes:
- No external dependencies.Many tasks include starter templates and example files inside their task folders. If you want a boilerplate for a task, look for files named:
template-*.sh,todo.py(starter),sentiment.py(starter),Dockerfile,docker-compose.yml, or example code under the relevant task folder.
If you prefer, maintainers can generate a minimal skeleton for you in a branch — open an issue requesting it.
- Before opening an Issue, search this repo for existing guidance.
- If you need help with a task (e.g., debugging an installer or tests), open an Issue with:
- The task folder and your branch name.
- Clear steps to reproduce the problem and any logs or screenshots.
- Be respectful, concise, and patient — maintainers are volunteers.
- Code of Conduct: follow the Init Club code of conduct (link in the organization profile).
- Do NOT commit secrets, API keys, private keys, or large binary models to this repository.
- Use
.gitignoreto avoid committing OS-specific files or local artifacts. - For tasks requiring models (e.g., transformers), list dependencies in
requirements.txtand document that models will be downloaded on first run. - Repository license: check the
LICENSEfile at the repo root. Respect the license when reusing code or examples.
- Primary maintainers and reviewers are listed in the organization’s team page. If you need to request a reviewer, mention
@init-club/maintainersin the Issue or PR body. - If you want an interactive review session or mentorship, open an Issue titled
Request: reviewer/mentorship — <task> by <username>and include preferred times.
- Keep your submission reproducible: include exact commands and expected outputs.
- Provide friendly README summaries that make it easy for reviewers to reproduce and grade your work.
- Prefer small, well-documented PRs over monolithic submissions.
- Ask for help early — debugging/install questions are common and the community can guide you.
Happy hacking — we look forward to your contributions!