Skip to content

Commit ecb9ae0

Browse files
ajitpratap0Ajit Pratap Singhclaude
authored
community: open-source health files, LLM discovery, and SEO improvements (#350)
* community: add open-source health files, LLM discovery, and SEO improvements Sets up the full GitHub community health scaffold and discoverability layer: LLM & SEO Discovery: - llms.txt: structured LLM discovery file (llmstxt.org spec) with project overview, full API listing, doc links, capabilities, and repo layout Community Health Files: - CODE_OF_CONDUCT.md: Contributor Covenant 2.1 with enforcement guidelines - SUPPORT.md: support channels, response times, and supported versions table - GOVERNANCE.md: roles (users/contributors/committers/maintainers), decision-making process, release flow, and conflict resolution - CODEOWNERS: path-based automatic review assignment for all core packages GitHub Automation: - .github/FUNDING.yml: GitHub Sponsors button (ajitpratap0) - .github/labeler.yml: 14 path-based auto-label rules for PRs - .github/stale.yml: stale issue/PR config (60d stale, 14d close) - .github/workflows/labeler.yml: PR auto-labeler workflow (actions/labeler@v5) - .github/workflows/stale.yml: daily stale management (actions/stale@v9) Issue & Discussion Templates: - .github/ISSUE_TEMPLATE/config.yml: template chooser with 4 contact links - .github/ISSUE_TEMPLATE/documentation.md: docs improvement template - .github/DISCUSSION_TEMPLATE/q-and-a.md: structured Q&A template - .github/DISCUSSION_TEMPLATE/ideas.md: feature proposal template - .github/DISCUSSION_TEMPLATE/show-and-tell.md: community showcase template README Updates: - Community health badges (Contributor Covenant, Contributing, Governance, Support, Good First Issues count) - Enhanced Get Help table (added Docs Issues, Q&A, Ideas, Show & Tell channels) - Contributors section links to Good First Issues and Help Wanted filters Labels created on GitHub: stale, tokenizer, ast, wasm, showcase Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore: remove redundant stale.yml config and add markdownlintignore - Remove .github/stale.yml: actions/stale@v9 workflow already has all configuration inline as workflow inputs; the config file was a leftover from the deprecated stale GitHub App and caused confusion (two sources of truth for the same policy) - Add .markdownlintignore: exclude CODEOWNERS from markdownlint checks. CODEOWNERS uses # for comments but is not a Markdown file; the linter was incorrectly flagging the comment lines as bare H1 headings. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix: correct labeler.yml indentation and stale.yml redundancy labeler.yml: - Fix YAML indentation: nest any-glob-to-any-file as a proper child of changed-files (was at sibling indentation level, making changed-files: null and any-glob-to-any-file a separate unrelated matcher in the sequence) stale.yml: - Remove redundant days-before-issue-stale and days-before-pr-stale (both were set to 60, same as the global days-before-stale; per-type settings only needed when they differ from the global) - Add exempt-pr-labels: security/P0/P1/pinned/do-not-merge PRs should not be auto-closed by the stale bot Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Ajit Pratap Singh <ajitpratapsingh@Ajits-Mac-mini-2655.local> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 2f79691 commit ecb9ae0

16 files changed

Lines changed: 646 additions & 8 deletions

File tree

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
---
2+
labels: ["enhancement"]
3+
---
4+
5+
<!-- Use this template to propose a new feature or capability before filing an issue.
6+
Discussion lets the community weigh in before any implementation work starts. -->
7+
8+
## Summary
9+
10+
<!-- One-paragraph description of the feature idea. -->
11+
12+
## Motivation
13+
14+
<!-- What problem does this solve? Who benefits and how? -->
15+
16+
## Proposed API / CLI / Behaviour
17+
18+
<!-- Sketch the interface. For a library feature, show example Go code.
19+
For a CLI feature, show the command and expected output. -->
20+
21+
```go
22+
// example usage
23+
```
24+
25+
## Alternatives considered
26+
27+
<!-- Did you consider other approaches? Why is this the right one? -->
28+
29+
## Willingness to contribute
30+
31+
- [ ] I can open an issue and submit a PR after community discussion
32+
- [ ] I'd love help from maintainers / other contributors
33+
- [ ] I'm just sharing an idea — no commitment
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
labels: ["question"]
3+
---
4+
5+
<!-- Before posting: search existing discussions to avoid duplicates. -->
6+
7+
## What are you trying to do?
8+
9+
<!-- Describe your goal in one or two sentences. -->
10+
11+
## What have you tried?
12+
13+
<!-- Paste the code or command you ran. Use a code block (```) -->
14+
15+
```go
16+
// your code here
17+
```
18+
19+
## What happened?
20+
21+
<!-- What error or unexpected output did you get? -->
22+
23+
## Environment
24+
25+
- **GoSQLX version**: <!-- e.g. v1.9.0 -->
26+
- **Go version**: <!-- e.g. go1.21.0 -->
27+
- **OS**: <!-- e.g. Linux, macOS, Windows -->
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
labels: ["showcase"]
3+
---
4+
5+
<!-- Share how you're using GoSQLX! Projects, integrations, benchmarks, blog posts — all welcome. -->
6+
7+
## What did you build?
8+
9+
<!-- Describe your project, tool, or integration in a few sentences. -->
10+
11+
## How are you using GoSQLX?
12+
13+
<!-- Which features are you using? What problem does it solve for you? -->
14+
15+
## Links
16+
17+
<!-- GitHub repo, blog post, demo, etc. -->
18+
19+
## Benchmark / impact (optional)
20+
21+
<!-- Query volume, performance gains, team size — anything that shows real-world impact. -->
22+
23+
---
24+
25+
*Want to be featured in the README's "Who's Using GoSQLX" section?
26+
Mention it in your post or [open an issue](https://github.com/ajitpratap0/GoSQLX/issues/new?title=Add%20our%20project%20to%20users).*

.github/FUNDING.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Funding options for GoSQLX
2+
# These links appear as a "Sponsor" button on the repository
3+
4+
github: [ajitpratap0]

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
blank_issues_enabled: false
2+
3+
contact_links:
4+
- name: 💬 Ask a question (GitHub Discussions)
5+
url: https://github.com/ajitpratap0/GoSQLX/discussions/new?category=q-a
6+
about: Usage questions, "how do I…" and general help
7+
- name: 💡 Propose a feature idea (Discussions)
8+
url: https://github.com/ajitpratap0/GoSQLX/discussions/new?category=ideas
9+
about: Discuss a new feature before filing an issue
10+
- name: 📖 Documentation (pkg.go.dev)
11+
url: https://pkg.go.dev/github.com/ajitpratap0/GoSQLX
12+
about: API reference and generated docs
13+
- name: 🔒 Security vulnerability
14+
url: https://github.com/ajitpratap0/GoSQLX/security/advisories/new
15+
about: Report a security issue privately — do NOT use public issues
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
---
2+
name: 📖 Documentation improvement
3+
about: Report missing, incorrect, or confusing documentation
4+
title: 'docs: '
5+
labels: documentation
6+
assignees: ''
7+
---
8+
9+
## What documentation needs improvement?
10+
11+
<!-- Which file, section, or topic is affected? Link to the specific page if possible. -->
12+
13+
**File / section**: <!-- e.g. docs/CLI_GUIDE.md — gosqlx analyze section -->
14+
15+
## What is wrong or missing?
16+
17+
<!-- What is currently documented (or not documented) that is incorrect or unclear? -->
18+
19+
## What should it say instead?
20+
21+
<!-- Describe the correct information or the content you'd like to see added. -->
22+
23+
## Why does this matter?
24+
25+
<!-- Who is affected? What mistake would someone make without this documentation? -->
26+
27+
## Would you like to contribute the fix?
28+
29+
- [ ] Yes, I can submit a PR
30+
- [ ] No, I'd like someone else to fix it
31+
32+
---
33+
34+
**GoSQLX version**: <!-- e.g. v1.9.0 or `gosqlx --version` output -->

.github/labeler.yml

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
# Automated PR labeling via actions/labeler
2+
# Triggered by .github/workflows/labeler.yml
3+
4+
parser:
5+
- changed-files:
6+
- any-glob-to-any-file:
7+
- 'pkg/sql/parser/**'
8+
9+
tokenizer:
10+
- changed-files:
11+
- any-glob-to-any-file:
12+
- 'pkg/sql/tokenizer/**'
13+
14+
ast:
15+
- changed-files:
16+
- any-glob-to-any-file:
17+
- 'pkg/sql/ast/**'
18+
19+
security:
20+
- changed-files:
21+
- any-glob-to-any-file:
22+
- 'pkg/sql/security/**'
23+
- 'cmd/gosqlx/internal/validate/**'
24+
25+
linter:
26+
- changed-files:
27+
- any-glob-to-any-file:
28+
- 'pkg/linter/**'
29+
30+
lsp:
31+
- changed-files:
32+
- any-glob-to-any-file:
33+
- 'pkg/lsp/**'
34+
35+
cli:
36+
- changed-files:
37+
- any-glob-to-any-file:
38+
- 'cmd/gosqlx/**'
39+
40+
documentation:
41+
- changed-files:
42+
- any-glob-to-any-file:
43+
- 'docs/**'
44+
- '*.md'
45+
- 'llms.txt'
46+
47+
performance:
48+
- changed-files:
49+
- any-glob-to-any-file:
50+
- 'pkg/metrics/**'
51+
- 'performance_baselines.json'
52+
- '**/*_bench_test.go'
53+
- '**/*benchmark*'
54+
55+
dialects:
56+
- changed-files:
57+
- any-glob-to-any-file:
58+
- 'pkg/sql/keywords/**'
59+
60+
ci-cd:
61+
- changed-files:
62+
- any-glob-to-any-file:
63+
- '.github/workflows/**'
64+
- 'Taskfile.yml'
65+
- '.goreleaser.yml'
66+
67+
python:
68+
- changed-files:
69+
- any-glob-to-any-file:
70+
- 'python/**'
71+
- 'pkg/cbinding/**'
72+
73+
wasm:
74+
- changed-files:
75+
- any-glob-to-any-file:
76+
- 'wasm/**'
77+
78+
transform:
79+
- changed-files:
80+
- any-glob-to-any-file:
81+
- 'pkg/transform/**'

.github/workflows/labeler.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: Label PRs
2+
3+
on:
4+
pull_request_target:
5+
types: [opened, synchronize, reopened]
6+
7+
permissions:
8+
contents: read
9+
pull-requests: write
10+
11+
jobs:
12+
label:
13+
name: Apply labels
14+
runs-on: ubuntu-latest
15+
steps:
16+
- uses: actions/labeler@v5
17+
with:
18+
repo-token: ${{ secrets.GITHUB_TOKEN }}
19+
configuration-path: .github/labeler.yml
20+
sync-labels: false

.github/workflows/stale.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Mark stale issues and PRs
2+
3+
on:
4+
schedule:
5+
- cron: '30 1 * * *' # 01:30 UTC daily
6+
workflow_dispatch:
7+
8+
permissions:
9+
issues: write
10+
pull-requests: write
11+
12+
jobs:
13+
stale:
14+
name: Stale
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: actions/stale@v9
18+
with:
19+
repo-token: ${{ secrets.GITHUB_TOKEN }}
20+
days-before-stale: 60
21+
days-before-close: 14
22+
stale-issue-label: stale
23+
exempt-issue-labels: 'pinned,security,P0,P1,bug,good first issue,help wanted'
24+
exempt-pr-labels: 'pinned,security,P0,P1,do not merge'
25+
stale-issue-message: >
26+
This issue has been automatically marked as stale because it has not had
27+
activity for 60 days. It will be closed in 14 days unless there is new
28+
activity or it is labelled `pinned`, `bug`, or `help wanted`.
29+
30+
If this issue is still relevant, please leave a comment explaining the
31+
current status or add context so a maintainer can re-prioritize it.
32+
33+
Thank you for contributing to GoSQLX!
34+
close-issue-message: >
35+
This issue has been automatically closed due to 14 days of inactivity
36+
after being marked stale. It can be re-opened if it becomes relevant again.
37+
stale-pr-message: >
38+
This pull request has been automatically marked as stale because it has
39+
not had activity for 60 days. It will be closed in 14 days unless there
40+
is new activity.
41+
42+
If you are still working on this PR, please leave a comment or push a
43+
new commit. If you need help getting it over the finish line, mention
44+
@ajitpratap0 and we will assist.
45+
close-pr-message: >
46+
This pull request has been automatically closed due to 14 days of
47+
inactivity after being marked stale. Please reopen it if you want
48+
to continue the work.

.markdownlintignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# CODEOWNERS uses # for comments, which markdownlint mistakes for H1 headings.
2+
# It is not a Markdown file.
3+
CODEOWNERS

0 commit comments

Comments
 (0)