Skip to content

Commit

Permalink
Merge branch 'main' into feature/checkout
Browse files Browse the repository at this point in the history
  • Loading branch information
evgongora authored Feb 6, 2025
2 parents c6b78ac + 1f6b1fa commit d6382a4
Show file tree
Hide file tree
Showing 116 changed files with 8,622 additions and 1,368 deletions.
183 changes: 183 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,183 @@
# **CONTRIBUTING GUIDE BY COFIBLOCKS**

Thank you for your interest in contributing to CofiBlocks! We appreciate your time and effort in making our project better.

This guide will help you get started with contributing to our project. Please note that we have a code of conduct, which we expect all contributors to adhere to.

## 📝 **Contributing**

We welcome contributions from the community! Here's how you can help:

1. **Clone and Fork Repo**: Click the **Fork** button in the top-right corner to create a copy of the repository under your account.

- <a href="https://github.com/Vagabonds-Labs/cofiblocks" target="_blank"> HERE</a>

#

2. **Clone the Fork:**
- Clone the forked repository to your local machine by running the following command:

```bash
git clone https://github.com/YOUR_USERNAME/REPOSITORY_NAME.git
```

- Replace `YOUR_USERNAME` and `REPOSITORY_NAME` with your GitHub username and the repository name.

#

3. **Create a new branch or use the main branch:** When modifying contracts kindly make sure the formatting is correct and all tests pass successfully.

- Create a branch name based on the type of change (e.g., `feat/name-related-issue`, `docs/name-related-issue`).

```
git checkout -b branch-name
```
- One of ideas on how to implement it for the branch name:
> `docs/update-readme` or `fix/bottom-bug`.
#
4. **Commit:** Commit your changes.
1. **git add (file-name)**
2. **git commit -m "[type] description"**
- Example:
```
git add Create_Documentation
git commit -m "[docs]: update documentation"
```
#
5. **Push fork:** Push to your fork and submit a pull request on our `main` branch. Please provide us with some explanation of why you made the changes you made. For new features make sure to explain a standard use case to us.
- Push your changes to your forked repository:
```bash
git push origin your-branch-name
```
> Replace `your-branch-name` with the name of your branch.
- Example:
```bash
git push origin fix/bug-fix
```

6. **Submit a Pull Request:** Submit a pull request to the `main` branch of the CofiBlocks repository.

- <a href="https://github.com/Vagabonds-Labs/cofiblocks/pulls" target="_blank"> Summit pull request</a>

# 📌 Update your Fork and Local Repository

### 🔒 Set up the original repository as upstream (only once)
- **Check your remote.**
```bash
git remote -v
```

- **If you don't see `upstream`, add it.**
```bash
git remote add upstream https://github.com/Vagabonds-Labs/cofiblocks.git
```
#
### 🔩 Update your Fork
1. **Bring the latest changes from the original repository.**
```bash
git fetch upstream
```
2. **Switch to the `main` branch of your local repository.**
```bash
git checkout main
```
3. **Merge `upstream/main` changes to your local branch.**
```bash
git merge upstream/main
```
4. **Upload the changes to your fork in GitHub.**
```bash
git push origin main
```
#
### 🔧 Update other branches
- **Change to the branch you want to update.**
```bash
git checkout name-of-your-rama
```
- **Take an overflow with the updated `main` branch.**
```bash
git rebase main
```
- **Upload the changes to your fork.**
```bash
git push origin name-of-your-rama --force
```
## 🎯 **Common mistakes**
1. **Local changes without saving.**
- Save changes temporarily
```bash
git stash
```
2. **Then update and recover your changes.**
```bash
git stash pop
```
3. **Untracked files causing conflict.**
- Delete them if you don't need them
```bash
rm filename
```

# **📁 Commits**

You can do a regular commit by following the next:

``` [type] significant message ```

- <a href="https://www.conventionalcommits.org/en/v1.0.0/" target="_blank">Learn more about conventional commits</a>

### Type

Add changes you worked on the issue.

**Examples:**

```bash
git commit -m "[docs]: update documentation"
```

```bash
git commit -m "[fix]: fix bug in code"
```

```bash
git commit -S -m "[test]: add test case"
```
**Other Example:**

- If you wnat to sign your commits, you can use the `-S` flag.

```bash
git commit -S -m "[refactor]: Changes in the code"
```

# **🔗 Branches**
1. There must be a `main` branch, used only for the releases.
2. Avoid long descriptive names for long-lived branches.
3. Use kebab-case (no CamelCase).
4. Use grouping tokens (words) at the beginning of your branch names (in a similar way to the `type` of commit).
5. Define and use short lead tokens to differentiate branches in a way that is meaningful to your workflow.
6. Use slashes to separate parts of your branch names.
7. Remove your branch after merging it if it is not important.
**Examples:**
```
git branch -b docs/readme
git branch -b test/a-feature
git branch -b feat/sidebar
git branch -b fix/b-feature
```
#
91 changes: 91 additions & 0 deletions FAQ.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
# 🎉 Frequently Asked Questions (FAQ) 🎉

Welcome to the **CofiBlocks FAQ** section! Here you’ll find answers to the most common questions about our platform, including its purpose, setup, features, and how to contribute. If you’re new here, this is a great place to start! 🚀

## 📚 Sections
1. [General Questions](#general-questions)
2. [Community Questions](#community-questions)
3. [Technical Questions](#technical-questions)
4. [Contribution Questions](#contribution-questions)

## General Questions

### 1. How to get started? 🤔

To begin understanding the **CofiBlocks** project, we recommend following these steps:

1. **📄 Read the main README file:**
Get a comprehensive explanation of the project’s purpose and scope. You can find it [here](./README.md).

2. **👥 Review the Community Guidelines:**
Familiarize yourself with the community standards by reading the [Community Guidelines](./COMMUNITY_GUIDELINES.md).

3. **🔍 Understand the project structure:**
The project is divided into two main parts:
- **Backend:** Learn more by reading the [backend README](./apps/snfoundry/README.md).
- **Frontend:** Discover details by checking the [frontend README](./apps/web/README.md).

## Community Questions

Discover how to be an active and respectful member of the **CofiBlocks** community! Learn about our values, expectations, and how to contribute positively to our mission. 🌍

[📖 Read the full Community Guidelines here.](./COMMUNITY_GUIDELINES.md)

### 1. 🤝 What is a Collaborative Business?
A Collaborative Business is an organization where customers, producers, and supporters become members. These members share responsibility, decision-making, and benefits (both monetary and otherwise). Our model represents an evolution of the cooperative and DAO (Decentralized Autonomous Organization) concepts, leveraging blockchain technology, smart contracts, and crypto assets (such as NFTs and social currencies).

### 2. ☕ How CofiBlocks Business Works?

#### 🏡 Cofi in Your Home
Subscribers receive freshly roasted coffee delivered to their doorsteps monthly, ensuring they enjoy the finest brews while supporting local producers.

#### ⚖️ Cofi is Fair
Producers receive fair payments upfront, allowing them to plan and understand demand ahead of time, thanks to our subscription model.

#### 🎨 Cofi Art & NFTs
In its pilot year, CofiBlocks will create a collection of NFTs featuring original artwork, distributed via coffee labels on each bag sold.

#### 🪙 Cofi Complementary Currency
Members of the CofiBlocks pilot community on the Cambiatus app can claim their COFI tokens—a complementary blockchain currency that ensures participation in the Collaborative Business's benefits.

#### 📈 Cofi Distribution
At the end of the first year, all CofiBlocks members will receive a percentage of the pilot's financial results in cryptocurrency based on their accumulated COFI tokens. Members will also have the opportunity to participate in decision-making for future stages of the project.

#### 🔗 CofiBlocks & Cambiatus

CofiBlocks is a proud member of Cambiatus's Social Currency and Collaborative Business Ecosystem.

[🌐 Learn More About Cambiatus](https://cambiatus.com)

#### 🚀 CofiBlocks & Starknet

We're building our Web3 marketplace using Starknet technology.

[💻 Explore on GitHub](https://github.com/Vagabonds-Labs/marketplace)

### 3. 🗣️ How Can I Join the Community Conversations?
Connect with us on our community group chats to discuss ideas, share feedback, and engage with other members!

[💬 Join the Community Here](https://github.com/Vagabonds-Labs/cofiblocks?tab=readme-ov-file#-join-the-community)

## Technical Questions

### 1. How can I run the backend locally? 🖥️

You can run the **CofiBlocks** backend locally by following the steps in the [backend README](./apps/snfoundry/README.md).

### 2. How can I run the frontend locally? 🌐

To run the **CofiBlocks** frontend locally, follow the steps in the [frontend README](./apps/web/README.md).

### 3. Where can I find development resources? 📚

Explore all the resources, tools, and guides for developers working on **CofiBlocks** in our [Development Resources](https://github.com/Vagabonds-Labs/cofiblocks?tab=readme-ov-file#-development-resources) section.

## Contribution Questions

Find everything you need to know about contributing to **CofiBlocks**, from submitting pull requests to following our coding standards. 📈

[Check the Contribution Guide here.](./pull_request_template.md)

We’re excited to have you on board! Let’s build something amazing together. 💪💥
Loading

0 comments on commit d6382a4

Please sign in to comment.