Skip to content

Commit 772d016

Browse files
authored
[feat]:Mentor-Guide added (#4)
Signed-off-by: sonichigo <[email protected]>
1 parent d84cd57 commit 772d016

File tree

3 files changed

+158
-11
lines changed

3 files changed

+158
-11
lines changed

CONTRIBUTING.md

+85-10
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,102 @@
11
# Contributing to Keploy
22

3-
Thank you for your interest in Keploy and for taking the time to contribute to this project. 🙌
4-
Keploy is a project by developers for developers and there are a lot of ways you can contribute.
3+
Thank you for your interest in Keploy and for taking the time to contribute to this project. 🙌 Keploy is a project by developers for developers and there are a lot of ways you can contribute.
4+
55
If you don't know where to start contributing, ask us on our [Slack channel](https://join.slack.com/t/keploy/shared_invite/zt-12rfbvc01-o54cOG0X1G6eVJTuI_orSA).
66

77
## Code of conduct
88

9-
Read our [Code of Conduct](CODE_OF_CONDUCT.md) before contributing
9+
Contributors are expected to adhere to the [Code of Conduct](CODE_OF_CONDUCT.md).
10+
11+
## Prerequisites for the contributors
12+
13+
Contributors should have knowledge of git, go, and markdown for most projects since the project work heavily depends on them.
14+
We encourage Contributors to set up Keploy for local development and play around with the code and tests to get more comfortable with the project.
15+
16+
Sections
17+
18+
- <a name="contributing"> General Contribution Flow</a>
19+
- <a name="#commit-signing">Developer Certificate of Origin</a>
20+
- <a name="contributing-keploy">Keploy Contribution Flow</a>
21+
- <a name="keploy-server">Keploy Server</a>
22+
- <a name="keploy-docs">Keploy Documentation</a>
23+
- <a name="keploy-sdks">Keploy SDK Integration</a>
24+
25+
# <a name="contributing">General Contribution Flow</a>
26+
27+
## <a name="commit-signing">Signing-off on Commits (Developer Certificate of Origin)</a>
28+
29+
To contribute to this project, you must agree to the Developer Certificate of
30+
Origin (DCO) for each commit you make. The DCO is a simple statement that you,
31+
as a contributor, have the legal right to make the contribution.
32+
33+
See the [DCO](https://developercertificate.org) file for the full text of what you must agree to
34+
and how it works [here](https://github.com/probot/dco#how-it-works).
35+
To signify that you agree to the DCO for contributions, you simply add a line to each of your
36+
git commit messages:
37+
38+
```
39+
Signed-off-by: Jane Smith <[email protected]>
40+
```
41+
42+
In most cases, you can add this signoff to your commit automatically with the
43+
`-s` or `--signoff` flag to `git commit`. You must use your real name and a reachable email
44+
address (sorry, no pseudonyms or anonymous contributions). An example of signing off on a commit:
45+
46+
```
47+
$ commit -s -m “my commit message w/signoff”
48+
```
49+
50+
To ensure all your commits are signed, you may choose to add this alias to your global `.gitconfig`:
51+
52+
_~/.gitconfig_
1053

11-
## How can I contribute?
54+
```
55+
[alias]
56+
amend = commit -s --amend
57+
cm = commit -s -m
58+
commit = commit -s
59+
```
60+
61+
## <a name="contributing-keploy">Keploy Contribution Flow</a>
62+
63+
Keploy is written in `Go` (Golang) and leverages Go Modules. Relevant coding style guidelines are the [Go Code Review Comments](https://code.google.com/p/go-wiki/wiki/CodeReviewComments) and the _Formatting and style_ section of Peter Bourgon's [Go: Best
64+
Practices for Production Environments](https://peter.bourgon.org/go-in-production/#formatting-and-style).
1265

1366
There are many ways in which you can contribute to Keploy.
1467

15-
#### 🐛 Report a bug
68+
### <a name="keploy-server">Keploy Server</a>
69+
70+
#### Report a Bug
1671
Report all issues through GitHub Issues using the [Report a Bug](https://github.com/keploy/keploy/issues/new?assignees=&labels=&template=bug_report.md&title=) template.
1772
To help resolve your issue as quickly as possible, read the template and provide all the requested information.
1873

19-
#### 🛠 File a feature request
74+
#### Feature request
2075
We welcome all feature requests, whether it's to add new functionality to an existing extension or to offer an idea for a brand new extension.
2176
File your feature request through GitHub Issues using the [Feature Request](https://github.com/keploy/keploy/issues/new?assignees=&labels=&template=feature_request.md&title=) template.
2277

23-
#### 📝 Improve the documentation
24-
In the process of shipping features quickly, we may forget to keep our docs up to date. You can help by suggesting improvements to our documentation using the [Documentation Improvement](https://github.com/keploy/docs/issues) template!
78+
#### Close a Bug
79+
We welcome contributions that help make keploy bug free & improve the experience of our users. You can also find issues tagged [Good First Issues](https://github.com/keploy/keploy/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22).
80+
81+
### <a name="keploy-docs">Keploy Documentation</a>
82+
83+
The Keploy documentation site uses Docusaurus 2, which is a static website generator, you can make changes locally without previewing them in the browser.
84+
85+
In the process of shipping features quickly, we may forget to keep our docs up to date. You can help by suggesting improvements to our documentation using the [Documentation Improvement](https://github.com/keploy/docs/issues) template.
86+
87+
Please refer to [Keploy Docs Contributing Guide](https://github.com/keploy/docs/blob/main/CONTRIBUTING.md#-how-to-set-up-the-docs-website-locally) for setting up your development environment and the follow [Keploy Style Guide](https://github.com/keploy/docs/blob/main/STYLE.md).
88+
89+
### <a name="keploy-sdks">Keploy SDKs</a>
90+
91+
Keploy provides stable support for ``Go``, ``Java`` and ``Ts`` language based applications.
92+
93+
- [x] [Go SDK](https://github.com/keploy/go-sdk)
94+
- [x] [Java SDK](https://github.com/keploy/java-sdk)
95+
- [x] [TypeScript SDK](https://github.com/keploy/typescript-sdk)
96+
97+
Every SDKs support the popular and common Routers and Databases.
98+
99+
100+
# Contact
25101

26-
#### ⚙️ Close a Bug / Feature issue
27-
We welcome contributions that help make keploy bug free & improve the experience of our users. You can also find issues tagged [Good First Issues](https://github.com/keploy/keploy/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22).
102+
Feel free to join [slack](https://join.slack.com/t/keploy/shared_invite/zt-12rfbvc01-o54cOG0X1G6eVJTuI_orSA) to start a conversation with us.

MENTOR-GUIDE.md

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Mentor guide
2+
## External resources for mentors
3+
[GSoC’s mentor guide](https://google.github.io/gsocguides/mentor/)
4+
5+
## Why become a mentor?
6+
As a mentor you get the opportunity to mentor a newbie in open source on your favourite project.
7+
8+
## How to become a mentor?
9+
There are 3 steps to becoming a GSoC mentor:
10+
* Propose a project (make sure you have the green light from your manager on the time commitment)
11+
* Interact with students in the student application phase, answer their questions and help them develop their applications
12+
* Review student applications to your organization and project. Select a student(s) to work with you!
13+
14+
## What is expected of a mentor?
15+
As a mentor you have the following responsibilities:
16+
* Carefully plan out a project, expectations, deliverables with the student you take on.
17+
* Make sure you have enough experience with the project you’re proposing.
18+
* Mentor the student throughout the code period, making sure they have a good development/testing setup and a good way to get started.
19+
* Review their progress regularly.

README.md

+54-1
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,66 @@
33
[![Slack](.github/slack.svg)](https://join.slack.com/t/keploy/shared_invite/zt-12rfbvc01-o54cOG0X1G6eVJTuI_orSA)
44
[![License](.github/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
55

6-
# Keploy
6+
# About Keploy
77
Keploy is a no-code testing platform that generates tests from API calls.
88

99
It captures the external dependency network calls (like database queries, internal/external services) for each request to replay them (including writes/mutations!) later during testing.
1010

1111
Developers can use keploy alongside their favorite unit testing framework to save time writing testcases.
1212

13+
# Keploy + Google Summer of Code, 2023
14+
This is the main place for all information related to Keploy's participation in Google Summer of Code, 2023 as a mentoring organization.
15+
16+
## What is Google Summer of Code?
17+
18+
[Google Summer of Code](https://summerofcode.withgoogle.com/) is a 16 years old program, run every summer, with the intention of bringing more students into open source.
19+
20+
Open source projects apply as mentor organizations and if they are accepted, students send proposals to them to work on a few months' long project. Projects can be planned out by the organizations in advance or can be proposed by students.
21+
22+
Google pays the students, not the organizations they work with. Beginning in 2023, Google is opening the program up to all newcomers of open source that are 18 years and older.
23+
24+
You can read more about the format of the program and its goals [here](https://google.github.io/gsocguides/mentor/).
25+
26+
27+
## What is the timeline for GSoC 2023?
28+
[Full timeline](https://summerofcode.withgoogle.com/programs/2023)
29+
30+
|Important events | Deadline|
31+
| ----- | ----- |
32+
| Organization Applications Open | January 23, 2023|
33+
| Organization Application Deadline | February 7, 2023 |
34+
| Organizations Announced | February 22, 2023 |
35+
| Potential GSoC contributors discuss application ideas with mentoring organizations | February 22 - March 20, 2023 |
36+
| GSoC contributor application period | March 20 - April 4, 2023 |
37+
| Accepted GSoC Contributor projects announced | May 4, 2023 |
38+
| Students work on their Google Summer of Code project | May 4, 2023 - NOvember 17, 2023|
39+
40+
#### Statistics
41+
- Since year 2005, 16,000+ students and 13000 mentors from over 118 countries has came together to participate in GSoC
42+
- Approximately 38+ million lines of code have been produced
43+
44+
---
45+
46+
# Additional Information
47+
48+
## Who can propose a project and who can be a mentor?
49+
50+
Keploy members and members from the wider community can both propose projects, however, only Keploy members can be mentors.
51+
52+
## What is expected of a mentor?
53+
Please read [The Mentor Guide](MENTOR-GUIDE.md).
54+
55+
## Information for applying students
56+
57+
Students should have knowledge of git, go, and markdown for most projects since the project work heavily depends on them.
58+
59+
We invite students to look into [our open proposals](https://github.com/keploy/gsoc/tree/main/2023), ask mentors questions to understand the projects better and if interested apply for the project when the application period opens.
60+
61+
Mentors would like to know why the project interests the student, whether they have the pre-requisite skills, and most importantly, how they plan to implement it.
62+
63+
We encourage Contributors to set up Keploy for local development and play around with the code and tests to get more comfortable with the project.
64+
65+
1366
## Community support
1467
We'd love to collaborate with you to make Keploy great. To get started:
1568
* [Slack](https://join.slack.com/t/keploy/shared_invite/zt-12rfbvc01-o54cOG0X1G6eVJTuI_orSA) - Discussions with the community and the team.

0 commit comments

Comments
 (0)