Skip to content

Commit ceea62f

Browse files
authored
Create CONTRIBUTING.md
1 parent 5d4d526 commit ceea62f

File tree

1 file changed

+104
-0
lines changed

1 file changed

+104
-0
lines changed

CONTRIBUTING.md

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
# Contributing to StudyMaster
2+
3+
First off, thank you for considering contributing to StudyMaster! 🎉
4+
5+
## Code of Conduct
6+
7+
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.
8+
9+
## How Can I Contribute?
10+
11+
### Reporting Bugs
12+
13+
Before creating bug reports, please check the issue list as you might find that you don't need to create one. When creating a bug report, include as many details as possible:
14+
15+
- Use a clear and descriptive title
16+
- Describe the exact steps to reproduce the problem
17+
- Provide specific examples to demonstrate the steps
18+
- Describe the behavior you observed and what you expected to see
19+
- Include screenshots if possible
20+
21+
### Suggesting Enhancements
22+
23+
Enhancement suggestions are tracked as GitHub issues. When creating an enhancement suggestion:
24+
25+
- Use a clear and descriptive title
26+
- Provide a step-by-step description of the suggested enhancement
27+
- Provide specific examples to demonstrate how the enhancement would be used
28+
- Explain why this enhancement would be useful
29+
30+
### Pull Requests
31+
32+
1. Fork the repo and create your branch from `main`
33+
2. If you've added code that should be tested, add tests
34+
3. If you've changed APIs, update the documentation
35+
4. Ensure the test suite passes
36+
5. Make sure your code lints
37+
6. Issue that pull request!
38+
39+
## Development Process
40+
41+
### Setup
42+
43+
```bash
44+
git clone https://github.com/KrunalValvi/StudyMaster.git
45+
cd StudyMaster
46+
npm install
47+
npm run dev
48+
```
49+
50+
### Coding Standards
51+
52+
- Use TypeScript for all new code
53+
- Follow the existing code style
54+
- Use meaningful variable and function names
55+
- Write comments for complex logic
56+
- Keep functions small and focused
57+
58+
### Commit Message Format
59+
60+
```
61+
type(scope): description
62+
63+
[optional body]
64+
65+
[optional footer]
66+
```
67+
68+
Types:
69+
- feat: A new feature
70+
- fix: A bug fix
71+
- docs: Documentation changes
72+
- style: Code style changes
73+
- refactor: Code refactoring
74+
- test: Adding or updating tests
75+
- chore: Maintenance tasks
76+
77+
### Testing
78+
79+
```bash
80+
# Run all tests
81+
npm run test
82+
83+
# Run tests in watch mode
84+
npm run test:watch
85+
86+
# Run with coverage
87+
npm run test:coverage
88+
```
89+
90+
## Project Structure
91+
92+
```
93+
src/
94+
├── components/ # Reusable UI components
95+
├── pages/ # Application pages
96+
├── lib/ # Core business logic
97+
├── types/ # TypeScript definitions
98+
├── styles/ # Styling files
99+
└── utils/ # Utility functions
100+
```
101+
102+
## Questions?
103+
104+
Feel free to contact the maintainers if you have any questions. We're here to help!

0 commit comments

Comments
 (0)