rails_claude_skills 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. checksums.yaml +7 -0
  2. data/.github/ISSUE_TEMPLATE/bug_report.yml +134 -0
  3. data/.github/ISSUE_TEMPLATE/config.yml +11 -0
  4. data/.github/ISSUE_TEMPLATE/feature_request.yml +129 -0
  5. data/.github/ISSUE_TEMPLATE/question.yml +90 -0
  6. data/.github/dependabot.yml +19 -0
  7. data/.github/workflows/ci.yml +77 -0
  8. data/.github/workflows/release.yml +66 -0
  9. data/.rubocop.yml +52 -0
  10. data/CHANGELOG.md +94 -0
  11. data/CLAUDE.md +332 -0
  12. data/CODE_OF_CONDUCT.md +134 -0
  13. data/CONTRIBUTING.md +580 -0
  14. data/LICENSE.txt +21 -0
  15. data/README.md +544 -0
  16. data/Rakefile +8 -0
  17. data/lib/generators/claude/agent/agent_generator.rb +71 -0
  18. data/lib/generators/claude/agent/templates/agent.md.tt +62 -0
  19. data/lib/generators/claude/command/command_generator.rb +50 -0
  20. data/lib/generators/claude/command/templates/command.md.tt +28 -0
  21. data/lib/generators/claude/commands_library/create-pr.md +27 -0
  22. data/lib/generators/claude/commands_library/dbchange.md +19 -0
  23. data/lib/generators/claude/commands_library/quality.md +20 -0
  24. data/lib/generators/claude/commands_library/stimulus.md +19 -0
  25. data/lib/generators/claude/commands_library/turbo-feature.md +17 -0
  26. data/lib/generators/claude/install/install_generator.rb +211 -0
  27. data/lib/generators/claude/install/templates/README.md.tt +59 -0
  28. data/lib/generators/claude/install/templates/USAGE +28 -0
  29. data/lib/generators/claude/install/templates/agents/api-dev.md.tt +46 -0
  30. data/lib/generators/claude/install/templates/agents/fullstack-dev.md.tt +48 -0
  31. data/lib/generators/claude/install/templates/agents/rails-developer.md.tt +40 -0
  32. data/lib/generators/claude/install/templates/settings.local.json.tt +13 -0
  33. data/lib/generators/claude/rule/rule_generator.rb +175 -0
  34. data/lib/generators/claude/rule/templates/rule.md.tt +7 -0
  35. data/lib/generators/claude/rules_library/code-style.md +37 -0
  36. data/lib/generators/claude/rules_library/database.md +47 -0
  37. data/lib/generators/claude/rules_library/hotwire.md +56 -0
  38. data/lib/generators/claude/rules_library/security.md +54 -0
  39. data/lib/generators/claude/rules_library/testing.md +47 -0
  40. data/lib/generators/claude/skill/skill_generator.rb +196 -0
  41. data/lib/generators/claude/skill/templates/SKILL.md.tt +27 -0
  42. data/lib/generators/claude/skills_library/create-task-files/SKILL.md +311 -0
  43. data/lib/generators/claude/skills_library/create-task-files/templates/bug.md +60 -0
  44. data/lib/generators/claude/skills_library/create-task-files/templates/epic.md +47 -0
  45. data/lib/generators/claude/skills_library/create-task-files/templates/issue.md +45 -0
  46. data/lib/generators/claude/skills_library/create-task-files/templates/user-story.md +57 -0
  47. data/lib/generators/claude/skills_library/minitest-testing/SKILL.md +398 -0
  48. data/lib/generators/claude/skills_library/minitest-testing/references/examples.md +889 -0
  49. data/lib/generators/claude/skills_library/plan-feature/SKILL.md +253 -0
  50. data/lib/generators/claude/skills_library/rails-api-controllers/SKILL.md +1041 -0
  51. data/lib/generators/claude/skills_library/rails-api-controllers/references/api-documentation.md +422 -0
  52. data/lib/generators/claude/skills_library/rails-api-controllers/references/serialization.md +456 -0
  53. data/lib/generators/claude/skills_library/rails-auth-with-devise/SKILL.md +191 -0
  54. data/lib/generators/claude/skills_library/rails-auth-with-devise/references/advanced.md +331 -0
  55. data/lib/generators/claude/skills_library/rails-auth-with-devise/references/api-auth.md +266 -0
  56. data/lib/generators/claude/skills_library/rails-auth-with-devise/references/omniauth.md +194 -0
  57. data/lib/generators/claude/skills_library/rails-authorization-cancancan/SKILL.md +603 -0
  58. data/lib/generators/claude/skills_library/rails-authorization-cancancan/references/api-authorization.md +543 -0
  59. data/lib/generators/claude/skills_library/rails-authorization-cancancan/references/complex-permissions.md +572 -0
  60. data/lib/generators/claude/skills_library/rails-authorization-cancancan/references/multi-tenancy.md +373 -0
  61. data/lib/generators/claude/skills_library/rails-controllers/SKILL.md +514 -0
  62. data/lib/generators/claude/skills_library/rails-debugging/SKILL.md +260 -0
  63. data/lib/generators/claude/skills_library/rails-deployment/SKILL.md +437 -0
  64. data/lib/generators/claude/skills_library/rails-deployment/references/examples.md +901 -0
  65. data/lib/generators/claude/skills_library/rails-hotwire/SKILL.md +367 -0
  66. data/lib/generators/claude/skills_library/rails-jobs/MISSION_CONTROL_SETUP.md +639 -0
  67. data/lib/generators/claude/skills_library/rails-jobs/SKILL.md +704 -0
  68. data/lib/generators/claude/skills_library/rails-mailers/SKILL.md +549 -0
  69. data/lib/generators/claude/skills_library/rails-models/SKILL.md +379 -0
  70. data/lib/generators/claude/skills_library/rails-pagination-kaminari/SKILL.md +622 -0
  71. data/lib/generators/claude/skills_library/rails-pagination-kaminari/references/api-pagination.md +523 -0
  72. data/lib/generators/claude/skills_library/rails-pagination-kaminari/references/custom-themes.md +498 -0
  73. data/lib/generators/claude/skills_library/rails-pagination-kaminari/references/performance.md +478 -0
  74. data/lib/generators/claude/skills_library/rails-views/SKILL.md +508 -0
  75. data/lib/generators/claude/skills_library/refine-requirements/SKILL.md +226 -0
  76. data/lib/generators/claude/skills_library/refine-requirements/references/examples.md +344 -0
  77. data/lib/generators/claude/skills_library/refine-requirements/references/reference.md +298 -0
  78. data/lib/generators/claude/skills_library/rspec-testing/SKILL.md +572 -0
  79. data/lib/generators/claude/skills_library/rspec-testing/references/better_specs_guide.md +273 -0
  80. data/lib/generators/claude/skills_library/rspec-testing/references/thoughtbot_patterns.md +407 -0
  81. data/lib/generators/claude/skills_library/tailwindcss/SKILL.md +371 -0
  82. data/lib/generators/claude/views/views_generator.rb +113 -0
  83. data/lib/rails_claude_skills/railtie.rb +16 -0
  84. data/lib/rails_claude_skills/version.rb +5 -0
  85. data/lib/rails_claude_skills.rb +27 -0
  86. data/sig/rails_claude_skills.rbs +4 -0
  87. metadata +199 -0
data/CONTRIBUTING.md ADDED
@@ -0,0 +1,580 @@
1
+ # Contributing to Rails Claude Skills
2
+
3
+ First off, thank you for considering contributing to Rails Claude Skills! It's people like you that make this gem better for the entire Rails community.
4
+
5
+ ## Quick Links
6
+
7
+ - 🐛 [Report a Bug](https://github.com/Shoebtamboli/rails_claude_skills/issues/new?template=bug_report.yml)
8
+ - ✨ [Request a Feature](https://github.com/Shoebtamboli/rails_claude_skills/issues/new?template=feature_request.yml)
9
+ - ❓ [Ask a Question](https://github.com/Shoebtamboli/rails_claude_skills/issues/new?template=question.yml)
10
+ - 💬 [Join Discussions](https://github.com/Shoebtamboli/rails_claude_skills/discussions)
11
+ - 📖 [Read the Docs](https://github.com/Shoebtamboli/rails_claude_skills/blob/main/README.md)
12
+
13
+ ## Table of Contents
14
+
15
+ - [Code of Conduct](#code-of-conduct)
16
+ - [How Can I Contribute?](#how-can-i-contribute)
17
+ - [Reporting Bugs](#-reporting-bugs)
18
+ - [Suggesting Features](#-suggesting-features)
19
+ - [Asking Questions](#-asking-questions)
20
+ - [Contributing Content](#contributing-content)
21
+ - [Development Setup](#development-setup)
22
+ - [Project Structure](#project-structure)
23
+ - [Adding New Content](#adding-new-content)
24
+ - [Adding a New Skill](#adding-a-new-skill)
25
+ - [Adding a New Command](#adding-a-new-command)
26
+ - [Adding a New Rule](#adding-a-new-rule)
27
+ - [Testing Your Changes](#testing-your-changes)
28
+ - [Submitting Changes](#submitting-changes)
29
+ - [Style Guidelines](#style-guidelines)
30
+ - [Questions?](#questions)
31
+
32
+ ## Code of Conduct
33
+
34
+ This project and everyone participating in it is governed by our [Code of Conduct](CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please report unacceptable behavior by [opening a confidential issue](https://github.com/Shoebtamboli/rails_claude_skills/issues/new?template=question.yml) or contacting the maintainers directly.
35
+
36
+ Key expectations:
37
+ - Be respectful and inclusive
38
+ - Welcome newcomers and help them learn
39
+ - Give and accept constructive feedback gracefully
40
+ - Focus on what's best for the community
41
+ - Show empathy and kindness
42
+
43
+ Please read the full [Code of Conduct](CODE_OF_CONDUCT.md) for detailed guidelines.
44
+
45
+ ## How Can I Contribute?
46
+
47
+ There are many ways to contribute to Rails Claude Skills:
48
+
49
+ ### 🐛 Reporting Bugs
50
+
51
+ Found a bug? Help us fix it!
52
+
53
+ **[Create a Bug Report →](https://github.com/Shoebtamboli/rails_claude_skills/issues/new?template=bug_report.yml)**
54
+
55
+ Our bug report template will guide you through providing all the necessary information:
56
+ - Steps to reproduce the issue
57
+ - Expected vs actual behavior
58
+ - Environment details (Ruby, Rails, gem versions)
59
+ - Relevant code snippets or error messages
60
+
61
+ Before submitting, please search existing issues to avoid duplicates.
62
+
63
+ ### ✨ Suggesting Features
64
+
65
+ Have an idea for a new feature or enhancement?
66
+
67
+ **[Request a Feature →](https://github.com/Shoebtamboli/rails_claude_skills/issues/new?template=feature_request.yml)**
68
+
69
+ The feature request template helps you describe:
70
+ - The problem you're trying to solve
71
+ - Your proposed solution
72
+ - Use cases and benefits
73
+ - Examples from other tools
74
+
75
+ We especially welcome suggestions for:
76
+ - New skills for popular gems or Rails patterns
77
+ - New commands for common workflows
78
+ - New rules for best practices
79
+ - Improvements to existing generators
80
+
81
+ ### ❓ Asking Questions
82
+
83
+ Need help or want to discuss something?
84
+
85
+ **[Ask a Question →](https://github.com/Shoebtamboli/rails_claude_skills/issues/new?template=question.yml)**
86
+
87
+ Or join the conversation in [GitHub Discussions](https://github.com/Shoebtamboli/rails_claude_skills/discussions)!
88
+
89
+ ### Contributing Content
90
+
91
+ The easiest way to contribute! We welcome:
92
+
93
+ 1. **New Skills** - Rails patterns, gems, best practices
94
+ 2. **New Commands** - Useful slash commands for common workflows
95
+ 3. **New Rules** - Project guidelines and conventions
96
+ 4. **Improved Documentation** - Clearer examples, better explanations
97
+ 5. **Bug Fixes** - Fixing issues in existing generators
98
+
99
+ ## Development Setup
100
+
101
+ ### 1. Fork and Clone
102
+
103
+ ```bash
104
+ # Fork the repository on GitHub, then:
105
+ git clone https://github.com/YOUR-USERNAME/rails_claude_skills.git
106
+ cd rails_claude_skills
107
+ ```
108
+
109
+ ### 2. Install Dependencies
110
+
111
+ ```bash
112
+ bundle install
113
+ ```
114
+
115
+ ### 3. Run Tests
116
+
117
+ ```bash
118
+ bundle exec rspec
119
+ bundle exec rubocop
120
+ ```
121
+
122
+ ### 4. Create a Branch
123
+
124
+ ```bash
125
+ git checkout -b feature/my-new-skill
126
+ # or
127
+ git checkout -b fix/generator-bug
128
+ ```
129
+
130
+ ## Project Structure
131
+
132
+ ```
133
+ rails_claude_skills/
134
+ ├── lib/
135
+ │ ├── generators/claude/
136
+ │ │ ├── install/ # Install generator
137
+ │ │ ├── skill/ # Skill generator
138
+ │ │ ├── agent/ # Agent generator
139
+ │ │ ├── command/ # Command generator
140
+ │ │ ├── rule/ # Rule generator
141
+ │ │ ├── views/ # Views generator
142
+ │ │ ├── skills_library/ # Pre-built skills
143
+ │ │ ├── commands_library/ # Pre-built commands
144
+ │ │ └── rules_library/ # Pre-built rules
145
+ │ └── rails_claude_skills/
146
+ │ ├── version.rb
147
+ │ └── railtie.rb
148
+ ├── spec/ # Tests
149
+ ├── CHANGELOG.md
150
+ ├── CLAUDE.md # Internal documentation
151
+ └── README.md
152
+ ```
153
+
154
+ ## Adding New Content
155
+
156
+ ### Adding a New Skill
157
+
158
+ Skills are the most common contribution. Here's how:
159
+
160
+ **1. Create the skill directory:**
161
+
162
+ ```bash
163
+ mkdir -p lib/generators/claude/skills_library/my-new-skill
164
+ ```
165
+
166
+ **2. Create SKILL.md with frontmatter:**
167
+
168
+ ```markdown
169
+ ---
170
+ name: my-new-skill
171
+ description: Brief description of what this skill covers
172
+ version: 1.0.0
173
+ tags:
174
+ - relevant
175
+ - tags
176
+ ---
177
+
178
+ # My New Skill
179
+
180
+ ## Quick Reference
181
+
182
+ | Pattern | Example |
183
+ |---------|---------|
184
+ | Key pattern | `code example` |
185
+
186
+ ## Overview
187
+
188
+ Explain what this skill covers and when to use it.
189
+
190
+ ## Common Patterns
191
+
192
+ ### Pattern Name
193
+
194
+ ```ruby
195
+ # Code example
196
+ class Example
197
+ # ...
198
+ end
199
+ ```
200
+
201
+ ## Best Practices
202
+
203
+ - Guideline 1
204
+ - Guideline 2
205
+
206
+ ## Common Pitfalls
207
+
208
+ - What to avoid
209
+ - Why it matters
210
+ ```
211
+
212
+ **3. (Optional) Add reference files:**
213
+
214
+ ```bash
215
+ mkdir lib/generators/claude/skills_library/my-new-skill/references
216
+ # Add example files, templates, etc.
217
+ ```
218
+
219
+ **4. Test it:**
220
+
221
+ ```bash
222
+ # In a test Rails app
223
+ rails g claude:views my-new-skill
224
+ cat .claude/skills/my-new-skill/SKILL.md
225
+ ```
226
+
227
+ **5. Add to a preset (if appropriate):**
228
+
229
+ Edit `lib/generators/claude/install/install_generator.rb`:
230
+
231
+ ```ruby
232
+ def install_fullstack_preset
233
+ # ... existing skills ...
234
+ install_skill("my-new-skill") # Add here
235
+ end
236
+ ```
237
+
238
+ ### Adding a New Command
239
+
240
+ **1. Create the command file:**
241
+
242
+ ```bash
243
+ touch lib/generators/claude/commands_library/my-command.md
244
+ ```
245
+
246
+ **2. Add content with frontmatter:**
247
+
248
+ ```markdown
249
+ ---
250
+ description: What this command does
251
+ argument-hint: [optional_args]
252
+ allowed-tools: Bash, Read, Edit, Write
253
+ ---
254
+
255
+ ## My Command
256
+
257
+ Detailed instructions for Claude on what this command should do.
258
+
259
+ ### Usage
260
+
261
+ ```
262
+ /my-command [arguments]
263
+ ```
264
+
265
+ ### Arguments
266
+
267
+ - `$ARGUMENTS` - All arguments as a string
268
+ - `$1` - First argument
269
+ - `$2` - Second argument
270
+
271
+ ### Example
272
+
273
+ When user runs `/my-command production`:
274
+ 1. First step
275
+ 2. Second step
276
+ 3. Final step
277
+ ```
278
+
279
+ **3. Test it:**
280
+
281
+ ```bash
282
+ rails g claude:views my-command --type=command
283
+ cat .claude/commands/my-command.md
284
+ ```
285
+
286
+ ### Adding a New Rule
287
+
288
+ **1. Create the rule file:**
289
+
290
+ ```bash
291
+ touch lib/generators/claude/rules_library/my-rule.md
292
+ ```
293
+
294
+ **2. Add content (frontmatter optional):**
295
+
296
+ ```markdown
297
+ ---
298
+ paths: app/specific/**/*
299
+ ---
300
+
301
+ # My Rule
302
+
303
+ ## Purpose
304
+
305
+ Explain what these rules enforce and why.
306
+
307
+ ## Guidelines
308
+
309
+ - Specific guideline 1
310
+ - Specific guideline 2
311
+ - Specific guideline 3
312
+
313
+ ## Examples
314
+
315
+ ### Good
316
+ ```ruby
317
+ # Example of following the rule
318
+ ```
319
+
320
+ ### Bad
321
+ ```ruby
322
+ # Example of violating the rule
323
+ ```
324
+
325
+ ## Rationale
326
+
327
+ Why these rules matter for the project.
328
+ ```
329
+
330
+ **3. Test it:**
331
+
332
+ ```bash
333
+ rails g claude:views my-rule --type=rule
334
+ cat .claude/rules/my-rule.md
335
+ ```
336
+
337
+ ## Testing Your Changes
338
+
339
+ ### Running Tests
340
+
341
+ ```bash
342
+ # Run all tests
343
+ bundle exec rspec
344
+
345
+ # Run specific test
346
+ bundle exec rspec spec/rails_claude_skills_spec.rb
347
+
348
+ # Run linter
349
+ bundle exec rubocop
350
+
351
+ # Auto-fix style issues
352
+ bundle exec rubocop -a
353
+ ```
354
+
355
+ ### Manual Testing
356
+
357
+ **Test in a real Rails app:**
358
+
359
+ ```bash
360
+ # Create test Rails app
361
+ rails new test-app
362
+ cd test-app
363
+
364
+ # Add your local gem to Gemfile
365
+ echo "gem 'rails_claude_skills', path: '/path/to/your/rails_claude_skills'" >> Gemfile
366
+ bundle install
367
+
368
+ # Test generators
369
+ rails g claude:install --preset=fullstack
370
+ rails g claude:skill test-skill
371
+ rails g claude:views my-new-skill
372
+ ```
373
+
374
+ ### What to Test
375
+
376
+ - ✅ Generator creates expected files
377
+ - ✅ Files have correct content
378
+ - ✅ Frontmatter is valid YAML
379
+ - ✅ No typos or formatting issues
380
+ - ✅ Examples actually work
381
+ - ✅ Follows existing patterns
382
+
383
+ ## Submitting Changes
384
+
385
+ ### 1. Update CHANGELOG.md
386
+
387
+ Add your changes to the `[Unreleased]` section of CHANGELOG.md:
388
+
389
+ ```markdown
390
+ ## [Unreleased]
391
+
392
+ ### Added
393
+ - New skill: rails-action-mailer
394
+
395
+ ### Fixed
396
+ - Install generator typo in basic preset
397
+
398
+ ### Changed
399
+ - Simplified skill generator templates
400
+ ```
401
+
402
+ Use these categories:
403
+ - **Added** - New features, skills, commands, rules
404
+ - **Changed** - Changes to existing functionality
405
+ - **Deprecated** - Soon-to-be removed features
406
+ - **Removed** - Removed features
407
+ - **Fixed** - Bug fixes
408
+ - **Security** - Security improvements
409
+
410
+ ### 2. Commit Your Changes
411
+
412
+ ```bash
413
+ # Stage your changes
414
+ git add .
415
+
416
+ # Commit with a clear message
417
+ git commit -m "Add skill for ActionMailer patterns"
418
+ ```
419
+
420
+ **Good commit messages:**
421
+ - `Add skill: rails-action-mailer`
422
+ - `Fix: Install generator typo in basic preset`
423
+ - `Docs: Improve README installation section`
424
+ - `Refactor: Simplify skill generator templates`
425
+
426
+ ### 3. Push to Your Fork
427
+
428
+ ```bash
429
+ git push origin feature/my-new-skill
430
+ ```
431
+
432
+ ### 4. Create Pull Request
433
+
434
+ - Go to the original repository on GitHub
435
+ - Click "Pull Request"
436
+ - Select your branch
437
+ - Fill in the PR template:
438
+
439
+ ```markdown
440
+ ## Description
441
+ Brief description of what this PR does
442
+
443
+ ## Type of Change
444
+ - [ ] New skill/command/rule
445
+ - [ ] Bug fix
446
+ - [ ] Enhancement to existing content
447
+ - [ ] Documentation improvement
448
+
449
+ ## Checklist
450
+ - [ ] I've tested this locally in a Rails app
451
+ - [ ] RuboCop passes (`bundle exec rubocop`)
452
+ - [ ] Tests pass (`bundle exec rspec`)
453
+ - [ ] I've updated CHANGELOG.md (if needed)
454
+ - [ ] Documentation is clear and accurate
455
+
456
+ ## Screenshots (if applicable)
457
+ Show the generated files or output
458
+ ```
459
+
460
+ ### 5. Respond to Feedback
461
+
462
+ - Be open to suggestions
463
+ - Make requested changes promptly
464
+ - Ask questions if anything is unclear
465
+ - Be patient - reviews take time
466
+
467
+ ## Style Guidelines
468
+
469
+ ### Ruby Code
470
+
471
+ Follow the existing `.rubocop.yml` configuration:
472
+
473
+ - Use double quotes for strings
474
+ - 2-space indentation
475
+ - Max line length: 150 characters
476
+ - Descriptive variable names
477
+
478
+ ### Markdown (Skills, Commands, Rules)
479
+
480
+ ```markdown
481
+ # Clear headings hierarchy
482
+ ## Use sentence case
483
+ ### Not Title Case
484
+
485
+ - Lists with proper grammar
486
+ - One idea per bullet point
487
+ - End with periods if complete sentences
488
+
489
+ Code blocks with language specified:
490
+ ```ruby
491
+ # Always specify the language
492
+ class Example
493
+ end
494
+ ```
495
+
496
+ ### YAML Frontmatter
497
+
498
+ ```yaml
499
+ ---
500
+ # Use lowercase-with-dashes for names
501
+ name: my-skill-name
502
+
503
+ # Clear, concise descriptions
504
+ description: Brief description under 80 chars
505
+
506
+ # Semantic versioning
507
+ version: 1.0.0
508
+
509
+ # Relevant, searchable tags
510
+ tags:
511
+ - activerecord
512
+ - database
513
+ ---
514
+ ```
515
+
516
+ ### File Naming
517
+
518
+ - Skills: `lib/generators/claude/skills_library/skill-name/`
519
+ - Commands: `lib/generators/claude/commands_library/command-name.md`
520
+ - Rules: `lib/generators/claude/rules_library/rule-name.md`
521
+ - Use kebab-case (dashes, not underscores)
522
+
523
+ ## Content Guidelines
524
+
525
+ ### Quality Standards
526
+
527
+ **Skills should:**
528
+ - ✅ Focus on one topic/gem/pattern
529
+ - ✅ Include Quick Reference table
530
+ - ✅ Provide working code examples
531
+ - ✅ Explain the "why" not just "what"
532
+ - ✅ Cover common pitfalls
533
+ - ✅ Be maintained (update with Rails versions)
534
+
535
+ **Commands should:**
536
+ - ✅ Solve a specific workflow problem
537
+ - ✅ Have clear argument handling
538
+ - ✅ Include usage examples
539
+ - ✅ Specify allowed tools
540
+
541
+ **Rules should:**
542
+ - ✅ Be specific and actionable
543
+ - ✅ Include examples (good vs bad)
544
+ - ✅ Explain the rationale
545
+ - ✅ Be scoped to relevant paths (if applicable)
546
+
547
+ ### What We're Looking For
548
+
549
+ **Great contributions:**
550
+ - 🎯 Solve real problems developers face
551
+ - 📚 Well-documented with examples
552
+ - 🧪 Tested in actual Rails apps
553
+ - 🎨 Follow existing patterns
554
+ - 💡 Include rationale/reasoning
555
+
556
+ **Avoid:**
557
+ - ❌ Overly opinionated content
558
+ - ❌ Copy-pasted from docs without context
559
+ - ❌ Outdated or deprecated patterns
560
+ - ❌ Overly complex examples
561
+ - ❌ Duplicate content
562
+
563
+ ## Questions?
564
+
565
+ - 💬 Open a discussion on GitHub
566
+ - 🐛 Create an issue for bugs
567
+ - 📧 Reach out to maintainers
568
+ - 📖 Check existing skills for examples
569
+
570
+ ## Recognition
571
+
572
+ Contributors will be:
573
+ - Listed in CHANGELOG.md
574
+ - Credited in release notes
575
+ - Added to README contributors section
576
+ - Appreciated in the Rails community! 🎉
577
+
578
+ ---
579
+
580
+ Thank you for contributing to Rails Claude Skills! 🚀
data/LICENSE.txt ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Shoeb Tamboli
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.