---
title: 'Participating in This Project'
ShowRssButtonInSectionTermList: true
cover:
  image:
date: 2023-02-01T10:26:53+08:00
draft: false
showtoc: true
tocopen: false
type: posts
author: ["Xinwei Xiong", "Me"]
keywords: ["blockchain", "learning platform", "community contribution", "software development"]
tags:
  - Blog
  - Blockchain
  - Open Source
  - Community
categories:
  - AI & Technology
description: >
    Welcome to our project about building a blockchain-based learning platform. Here, we share insights and updates on our progress. You can switch to the specified language for more detailed information.
aliases:
  - "/archives/contributors" # This alias allows the page to be accessed via the specified URL
tldr:
  - "Contribute to this blockchain-based learning platform through issues, coding, documentation, or community support regardless of skill level"
  - "Follow contribution guidelines including Markdown formatting, Google coding standards, and proper GitHub workflow with fork-clone-modify-push-PR steps"
  - "Always pull latest upstream code before pushing, review changes carefully with git diff, avoid force push, and submit well-crafted commit messages for any contribution"
---


# Participating in this Project

## ⚡ Introduction

Welcome to our project! This project aims to establish a blockchain-based universal learning platform, promoting the widespread adoption of technology and knowledge through collective wisdom and effort. Whether you are a beginner or an experienced developer, your contributions will have a positive impact on the project.

## 💡 About This Project (Please Read First❗)

This project is initiated by a team passionate about blockchain and software development. We are dedicated to creating an open-source, decentralized learning environment, allowing everyone to access and share knowledge.

### 🌐 Contact Information

- [Website](https://telsacoin.io/)
- [Blog](https://cubxxw.com)
- [Telegram](https://t.me/smile3293172751)

<p align='center'>
  <!-- Social media and contact badges -->
</p>

### 🔍 Project Background

We believe that through the power of collective intelligence and technology, we can create a more open and inclusive learning environment. This project is not only a technical challenge but also a result of community collaboration.

### 🌟 How to Participate

No matter your skill level, there are various ways to get involved in this project:

- Submit issues and feature suggestions.
- Participate in coding and documentation.
- Provide help and support in the community.

We are all potential customers with great prospects for this repository, or contributors. Thank you for choosing to join the `C-UB` community. We will work together, and in the future, we will consider building a universal learning platform based on blockchain. Each of us will be a builder of this community, promoting the development and progress of the [c-universal blockchain (Chain Learning)](https://github.com/c-ub) community~

1. If you have any suggestions for this project or find errors in the content, feel free to submit issues for correction.
2. For knowledge points not covered in the document, feel free to submit PRs.

> We might wonder?
>
> When participating in contributions, if we have cloned the **[🧷 cs-awesome-Block_Chain](https://github.com/3293172751/cs-awesome-Block_Chain) project, but find it troublesome to fetch upstream code every time, how to submit interesting code? This article will solve this problem~⬇️ **

## ⚡ Before You Start...

+ [x] [**Learn to use Markdown🖱️**](https://github.com/3293172751/CS_COURSE/blob/master/markdown/README.md)
+ [x] [Learn to use Git](https://github.com/3293172751/CS_COURSE/tree/master/Git)
+ [x] [**Your code follows Google coding standards**](https://zh-google-styleguide.readthedocs.io/en/latest/google-cpp-styleguide/)

### Formatting

The content of notes follows the [Chinese Copywriting Guidelines](https://github.com/sparanoid/chinese-copywriting-guidelines) for readability.

Instead of using `![]()` to reference images, we use `<img>` tags. This is to control the display size of images appropriately, and because [GFM](https://github.github.com/gfm/) does not support centering images using `<center> ![]() </center>`. Instead, use `<div align="center"> <img src=""/> </div>` for centering.

+ Online formatting tool: [Text-Typesetting](https://github.com/CyC2018/Text-Typesetting).
+ Online formula tool: [LaTex](https://latexlive.com/)
+ Online table conversion tool: [tableconvert](https://tableconvert.com/zh-CN/markdown-generator)

### Google Coding Standards

> 🧷 [Google Coding Standards](https://zh-google-styleguide.readthedocs.io/en/latest/google-cpp-styleguide/) are widely recognized and adopted by most enterprises~
>
> For large programs, we need a certain understanding of [🔥software engineering](https://github.com/3293172751/cs-awesome-Block_Chain/blob/master/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B&%E7%B3%BB%E7%BB%9F%E8%AE%BE%E8%AE%A1%E5%92%8C%E6%9E%B6%E6%9E%84/README.md

)

<img src="https://sm.nsddd.top//typora/E1GMeZO5A3kbK29.png?mail:3293172751@qq.com" style="zoom:200%;"/>

### License

All content follows the [CC-BY-SA 3.0 license (Attribution-ShareAlike)](http://zh.wikipedia.org/wiki/Wikipedia:CC-by-sa-3.0%E5%8D%8F%E8%AE%AE%E6%96%87%E6%9C%AC) 
<br>

## ⚡ Contribution Steps

> How to keep our fork in sync with the upstream in real-time? [🧷This tutorial teaches you how to keep your GitHub forks automatically synchronized with the upstream repository and push to Gitee](https://cubxxw.com/archives/git-fork)
>
> 📮 You can even play more with [🧷GitHub's actions ci/cd~](https://cubxxw.com/archives/actions)

💡 **Steps**:

1. First, `fork` this repository on `Github` to your repository
2. `git clone` to clone it to your local machine
3. Modify the corresponding code locally
4. `git push` to your own repository
5. Perform a `pull request` operation in your repository

`Github` will first compare the differences between your repository and the target repository, and check whether the two can be merged.

After a while, if `Github` indicates `Able to merge`, you can click `Create pull request`.

Here you will be asked to write a description of your code changes, then you can create a real `pull request` (by clicking this `Create pull request` button).

## ⚡ You Can Also

1. Recreate a branch
2. Modify under the branch
3. Submit the code

## ⚡ If You Are In CubDoc Documentation

 ⚠️ **For example, if you are in the following documentation~**

+ [x] [Learn Go](https://go.nsddd.top/)
+ [x] [Learn Docker](https://docker.nsddd.top/)

⬇️ Then it's even easier for you, you can choose one of the following two methods:

### Direct Modification and Upload

![Direct modification and upload example image](https://sm.nsddd.top/smimage-20221015232042494.png?xxw@nsddd.top)

⬇️ Continue to modify the `md` file directly in GitHub and then submit:

![GitHub direct modification example image](https://sm.nsddd.top/smimage-20221015232445350.png?xxw@nsddd.top)

### Clone to Local and Modify

1. First, `fork` the repository containing the documentation to your own account (view source code)
2. `Clone` the repository you just `forked` to your account
3. Modify locally, remembering to frequently `pull` upstream code
4. Submit the local code to your repository
5. Contribute your repository to our repository

📜 **Explanation**:

> We need to `pull` frequently to keep the branch up-to-date, see [🧷This tutorial teaches you how to keep your GitHub forks automatically synchronized with the upstream repository and push to Gitee](https://cubxxw.com/archives/git-fork)
>
> To contribute your repository to ours, just:
>
> ![GitHub pull request example image](https://sm.nsddd.top/smimage-20221015233657581.png?xxw@nsddd.top)

### What Kind of Request Do We Hope For?

**Optimize existing code or documentation**

![](https://sm.nsddd.top//typora/6rnRNubHeXAp54s.png?mail:3293172751@qq.com)

2. **Supplement and share project notes**
3. **Correct erroneous code**
4. **Provide supplements and explanations for unclear areas**

### Reminder⚠️ 

**Before pushing code, be sure to pull the latest code first**, otherwise the submitted `pr` might include deletions of others' pushes.

A `pr` should not modify too many files, as if there's an issue with one file, it prevents merging and affects other files.

Before `git add`, use `git diff` to review the changes, ensuring that the modifications are what you intended and there are no mistaken deletions or additions.

When submitting code, avoid using `git push -f` (or `--force`) without fully understanding the implications of force pushing.

You don't have to write impressive code to submit a `PR`. Any detected issues in the article, even typos, are welcome for `PR` submissions to become a `contributor`.

> **Commit messages should follow the standard. Then push, and finally submit a pull request.**