Skip to content

Conversation

@caarloshenriq
Copy link

This PR implements the contributing guidelines described in issue #8.

It adds a CONTRIBUTING.md that:

  • Describes the purpose of the repository as an archive of topics from our Socratic Bitcoin seminars.
  • Documents the contribution workflow (issues, branches, focused PRs).
  • Defines branch naming and commit message conventions.
  • Describes the PR review process and “Squash and merge” strategy.
  • Adds basic standards for Markdown style, links, and citations.

Copy link

@FelipeNegrelle FelipeNegrelle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey, I've found some fixes that would improve reading experiences and some typos. Here's what I suggest to change:

  • Line 30: that improve contributor experience → that improve the contributor experience
  • Line 41: what you'fll add or fix → what you'll add or fix
  • Line 83: feat: november meetup → feat: November meetup
  • Line 113: feat(posts): add november 2025 meetup → feat(posts): add November 2025 meetup
  • Line 118: a short and focused subject like below is fine → a short and focused subject like the one below is fine

@caarloshenriq
Copy link
Author

Hey, I've found some fixes that would improve reading experiences and some typos. Here's what I suggest to change:

  • Line 30: that improve contributor experience → that improve the contributor experience
  • Line 41: what you'fll add or fix → what you'll add or fix
  • Line 83: feat: november meetup → feat: November meetup
  • Line 113: feat(posts): add november 2025 meetup → feat(posts): add November 2025 meetup
  • Line 118: a short and focused subject like below is fine → a short and focused subject like the one below is fine

Thanks, your suggestions make sense.
I checked the commit history and it seems the project is using month abbreviations in commit messages (e.g. chore(posts): oct 2025), so I’m going to change to chore(post) nov 2025 for consistency.

@FelipeNegrelle
Copy link

Thanks, your suggestions make sense. I checked the commit history and it seems the project is using month abbreviations in commit messages (e.g. chore(posts): oct 2025), so I’m going to change to chore(post) nov 2025 for consistency.

LGTM

Copy link

@FelipeNegrelle FelipeNegrelle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

@GustavoStingelin
Copy link
Member

@caarloshenriq pls, merge the two commits into a single one and force push

@caarloshenriq caarloshenriq force-pushed the docs/contributing-guidelines branch from e8f1740 to 1b67ade Compare November 25, 2025 23:04
@caarloshenriq
Copy link
Author

@caarloshenriq pls, merge the two commits into a single one and force push

merged

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR establishes comprehensive contributing guidelines for a BitDevs Socratic Seminar archive repository. It creates a CONTRIBUTING.md file that codifies the project's contribution standards, workflow processes, and content conventions to ensure consistency across meetup documentation.

Key Changes:

  • Defines the repository's scope as an archive of Bitcoin Socratic seminar topics and resources
  • Documents a complete contribution workflow from issue creation through PR merge
  • Establishes conventions for branch naming, commit messages, and merge strategy

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@caarloshenriq caarloshenriq force-pushed the docs/contributing-guidelines branch from a849426 to 3277f80 Compare January 2, 2026 18:28
Copy link
Member

@GustavoStingelin GustavoStingelin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking better, just left a few more comments.

Comment on lines +182 to +210
Common types:

- `feat` - new posts, new sections, or new functionality
- `fix` - corrections that change what readers/users see (broken links, wrong dates, incorrect metadata, typos that change meaning)
- `docs` - README, CONTRIBUTING, or other documentation-only updates
- `chore` - repository maintenance (moving/renaming files, updating CI or dependencies, non-user-visible cleanups)
- `refactor` - improving structure of build/automation scripts without changing their output
- `style` - purely stylistic changes (whitespace, line wrapping, indentation) with no change in meaning
- `test` - adding or adjusting tests (if the repo grows tests later)

In practice:

- Use `fix` when something is "wrong" from the reader's point of view (404 links, incorrect info, broken formatting in the rendered page).
- Use `style` when you're only changing formatting/whitespace for readability.
- Use `refactor` when you're improving the structure of helper scripts or config without changing behavior.
- Use `chore` for general housekeeping that doesn't fit the above (moving posts, updating CI configs, bumping dependencies).

Examples for this repository:

- `feat(topics): add socratic seminar 040`
- `feat(posts): add nov 2025 meetup`
- `fix(links): update delvingbitcoin URLs for september`
- `docs: add contribution guidelines`
- `chore(posts): reorder sections by topic`

If you are working on a seminar topic file and that's the only change in the PR, a short and focused subject like below is fine:

- `2025-09: add socratic seminar topics`

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this all can be removed, the first 15 lines of ## Commit message conventions are clear enough.

Suggested change
Common types:
- `feat` - new posts, new sections, or new functionality
- `fix` - corrections that change what readers/users see (broken links, wrong dates, incorrect metadata, typos that change meaning)
- `docs` - README, CONTRIBUTING, or other documentation-only updates
- `chore` - repository maintenance (moving/renaming files, updating CI or dependencies, non-user-visible cleanups)
- `refactor` - improving structure of build/automation scripts without changing their output
- `style` - purely stylistic changes (whitespace, line wrapping, indentation) with no change in meaning
- `test` - adding or adjusting tests (if the repo grows tests later)
In practice:
- Use `fix` when something is "wrong" from the reader's point of view (404 links, incorrect info, broken formatting in the rendered page).
- Use `style` when you're only changing formatting/whitespace for readability.
- Use `refactor` when you're improving the structure of helper scripts or config without changing behavior.
- Use `chore` for general housekeeping that doesn't fit the above (moving posts, updating CI configs, bumping dependencies).
Examples for this repository:
- `feat(topics): add socratic seminar 040`
- `feat(posts): add nov 2025 meetup`
- `fix(links): update delvingbitcoin URLs for september`
- `docs: add contribution guidelines`
- `chore(posts): reorder sections by topic`
If you are working on a seminar topic file and that's the only change in the PR, a short and focused subject like below is fine:
- `2025-09: add socratic seminar topics`

- Start sections at `##` and use `###` for subsections.
- Use a small, predictable set of sections, for example:
- `## Avisos` / `## Announcements`
- `### Bitcoin`, `### Lightning`, `### Mining`, `### Maneiro` / `### Misc`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- `### Bitcoin`, `### Lightning`, `### Mining`, `### Maneiro` / `### Misc`.
- `### Bitcoin`, `### Lightning`, `### Mining`, `### Misc`.

Let's not do this joke on the doc.

Comment on lines +163 to +170
We follow a style based on [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/), for example:

- `feat: nov meetup`
- `feat(header): add X (@curitibabitdevs) link to navigation`
- `feat(_posts): arkade announcement`
- `fix(_posts): update meetup links`
- `fix: remove duplicated topics`
- `2025-09 (#68)`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's keep it consistent.

Suggested change
We follow a style based on [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/), for example:
- `feat: nov meetup`
- `feat(header): add X (@curitibabitdevs) link to navigation`
- `feat(_posts): arkade announcement`
- `fix(_posts): update meetup links`
- `fix: remove duplicated topics`
- `2025-09 (#68)`
We follow a style based on [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/), for example:
- `feat(_posts): ago 2025`
- `feat(_posts): add arkade announcement`
- `fix(_posts): update meetup links`
- `feat(header): add X (@curitibabitdevs) link to navigation`

Comment on lines +220 to +226
2. **Sync with `main`** before opening:

git fetch upstream
git checkout main
git pull upstream main
git checkout your-branch
git rebase main
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have both Contribution workflow and Pull Request process sections. They seem to cover the same ground, so we could unify them. This part can also be much shorter. We do not need to explain git basics to contributors opening a PR. A simple note like “make sure your branch is up to date with the master branch” should be enough.

Comment on lines +255 to +262
## Squashing & merge strategy

To keep the history readable, we generally:

- Use **"Squash and merge"** for most PRs so that each PR becomes a **single logical commit** on `main` (often one commit per meetup or per change-set).
- Occasionally keep multiple commits (regular merge) when the history inside the PR is meaningful on its own.

Force-pushing (`git push --force-with-lease`) to your **own feature branches** is a common practice to keep the commit history clean, especially **before** a PR is opened or when you're squashing WIP commits.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We currently use squash because commit histories are often fragmented or poorly structured. Squashing allows the final commit to mainly reflect the PR title, which the maintainer can adjust before merging. That said, we prefer a clean and well structured commit history, since it allows us to use rebase and merge instead, preserving a clearer and more meaningful history.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants