Skip to content
@KibokoDao-Africa

KibokoDao-Africa

About KibokoDAO-Africa 👋

KibokoDAO-Africa coding style guide

This style guide will cover every aspect of our engineering cycle from naming repositories, files, and folders to code layout and best practices to our git workflow.

Style Guide Note

The goal of this style guide is to provide consistency all across our projects. Consistency will improve the quality of code we write, increase readability and make it easy for us to onboard new developers.

Some of these guides are peculiar to a particular language while others will cut across the entire engineering workflow. A lot of the guide if not all follows industry standards making it easy for new developers joining the team to adapt to these standards.

Naming Repositories, Folders and Files

  • Repositories should be all lowercase, and a repository with a compound word should be separated by a dash i.e light-ideas.
  • Folders within a repository also should be all lowercase, a folder with a compound word should be separated by an underscore i.e smart_contracts.
  • Files should use camelCase convention i.e citizenSmart

General Code Layout

  • Use 4 spaces i.e 1 tab per indentation level (For typescript/javascript projects with a formatter such as prettier, ensure it is set to 4 spaces rather than 2 spaces).
  • Write only one statement per line.
  • Write only one declaration per line.
  • Ensure each source file is wrapped.
  • Functions should use camelCase and should describe exactly what actions they perform i.e function() getUserData and not function() userData.
  • Classes, Structs, Interfaces, Events, and Contracts should use PascalCase i.e struct UserData, not struct userData.
  • Variables should follow camelCase.

Commenting Code

Tools and Frameworks

  • Developers should use specific tools and frameworks required for the development process, such as IDEs or version control software.
  • For TypeScript and JavaScript projects, we encourage the use of Prettier for style formatting.
  • For more information on using specific tools and frameworks, see the relevant documentation or ask other developers for guidance.

Git WorkFlow

  • Always work in a branch named to describe what feature you are implementing and branches should be named similar to repositories i.e trading-fees.
  • After working on a feature and updating a branch, create a pull request to merge into the develop branch. Develop branch will merge the changes after testing that the code works correctly.
  • Commit messages should always describe what changes were made to a code or what new features were added.
  • Use templates or examples for pull requests and commit messages to ensure consistency across the development team.
  • Master/Main should only contain WORKING, and PRODUCTION code and can ONLY BE UPDATED by develop branch after all aspects of the new changes have been reviewed properly.
  • Bugs should be reported as issues in GitHub and may also be reported in Asana, the corresponding pull request should reference the parent issue or Asana task.

Popular repositories Loading

  1. dApp-starter-kit dApp-starter-kit Public

    This is a starter kit for building decentralized applications (dApps). It contains a pre-written smart contract in solidity and frontend in react.js. Check out README for the documentation

    JavaScript 18 3

  2. starknet-project-starter starknet-project-starter Public

    Starknet Web Dapp Starter Kit

    JavaScript 5

  3. blockchain_hands_on blockchain_hands_on Public

    JavaScript 3 2

  4. KibokoGetPriceHook KibokoGetPriceHook Public

    Package containing a bunch of functions that can be called to perform varios functions includeing: get price of crypto in local currencies,fetch price feeds from Starknet's pragma contract among ot…

    TypeScript 2 1

  5. mpesa-offramp-backend mpesa-offramp-backend Public

    TypeScript 2 2

  6. Adamur-Tribe-12-Nights-of-Code Adamur-Tribe-12-Nights-of-Code Public

    TypeScript 2 5

Repositories

Showing 10 of 42 repositories
  • KibokoDao-Africa/mpesa-offramp-backend’s past year of commit activity
    TypeScript 2 2 0 0 Updated Dec 27, 2024
  • genesis-nft Public
    KibokoDao-Africa/genesis-nft’s past year of commit activity
    JavaScript 0 0 0 0 Updated Dec 22, 2024
  • KibokoDao-Africa/solutions-frontend’s past year of commit activity
    JavaScript 0 0 0 0 Updated Dec 19, 2024
  • KibokoGetPriceHook Public

    Package containing a bunch of functions that can be called to perform varios functions includeing: get price of crypto in local currencies,fetch price feeds from Starknet's pragma contract among others

    KibokoDao-Africa/KibokoGetPriceHook’s past year of commit activity
    TypeScript 2 1 0 0 Updated Dec 10, 2024
  • KibokoDao-Africa/solutions-center’s past year of commit activity
    Python 0 0 0 0 Updated Dec 6, 2024
  • KibokoDao-Africa/Adamur-Tribe-12-Nights-of-Code’s past year of commit activity
    TypeScript 2 5 0 0 Updated Dec 3, 2024
  • website Public
    KibokoDao-Africa/website’s past year of commit activity
    TypeScript 0 0 0 0 Updated Nov 29, 2024
  • livestream Public
    KibokoDao-Africa/livestream’s past year of commit activity
    TypeScript 0 0 0 0 Updated Nov 28, 2024
  • KibokoDao-Africa/KibokoYouthMonth’s past year of commit activity
    1 13 0 8 Updated Nov 14, 2024
  • kiboko-dao-next Public

    KibokoDAO is a decentralized autonomous organization aimed at empowering Africa’s blockchain community by providing a collaborative platform that enhances education, financial inclusion, and decentralized innovation.

    KibokoDao-Africa/kiboko-dao-next’s past year of commit activity
    TypeScript 0 0 0 0 Updated Nov 6, 2024

Top languages

Loading…

Most used topics

Loading…