GithubHelp home page GithubHelp logo

raccoonrat / aelf Goto Github PK

View Code? Open in Web Editor NEW

This project forked from aelfproject/aelf

0.0 1.0 0.0 51.59 MB

A scalable cloud computing blockchain platform

Home Page: https://aelf.io/

License: MIT License

C# 98.77% Shell 0.47% Python 0.14% Batchfile 0.07% JavaScript 0.54% Dockerfile 0.01%

aelf's Introduction

AElf - A Decentralized Cloud Computing Blockchain Network

Build Status Build status GitHub closed issues codecov lisence Nuget MyGet (with prereleases)

Twitter Follow Gitter

Welcome to AElf's official GitHub repo !

AElf is a blockchain system aiming to achieve scalability and extensibility through the use of side-chains and a flexible design. To support multiple use cases AElf makes it as easy as possible to extend/customize the system by providing easy to use tools and frameworks in order to customize the chains and write smart contracts. AElf will eventually support various languages that will let developers choose the one they are the most comfortable with.

For more information you can follow these links:

Getting Started

This repository

This repo is where you will find the code that can use to run an AElf node and the command line tool used to interact with it. It also contains a tests folder that centralizes all the unit tests.

If you're looking for the js sdk, follow this link.

Prerequisites

Because most of AElf is written in C# with the dotnet core framework, you will need to download and install the .NET Core SDK. Concerning the IDE, you can use any as long as it has support for C#. Good choices include Jetbrains Rider, Visual Studio and Visual Studio Code. Strictly speaking, if you only want to run the node, no need for an IDE since you can build and run with dotnet commands, but if you want to contribute to AElf, it's better to have more support for solution and project files.
Finally if you want to run the node you will have to install and run a Redis or SSDB for the nodes data.

Note that, if you intend to develop AElf itself you will have to install protobuf/gRPC.

Build

sh scripts/build.sh

Run the tests

Our tests are in the test folder, in order to run you only have to execute the following script:

sh scripts/test.sh

Contributing

If you have a reasonable understanding of blockchain technology and at least some notions of C# you can of course contribute. We also appreciate other types of contributions such as documentation improvements or even correcting typos in the code if you spot any.

We expect every contributor to be respectful and constructive so that everyone has a positive experience, you can find out more in our code of conduct.

Reporting an issue

We currently only use GitHub for tracking issues, feature request and pull requests. If you're not familiar with these tools have a look at the GitHub documentation.

Bug report

If you think you have found a bug in our system feel free to open a GitHub issue, but first:

  • check with GitHub's search engine that the bug doesn't already exist.
  • in the request give as much information as possible such as: the OS, the version of AElf, how to reproduce...

Missing feature

We also use the GitHub issue tracker for features. If you think that some piece of functionality is missing in AElf, you can open an issue with the following in mind:

  • check for similare feature requests already open.
  • provide as much detail and context as possible.
  • be as convincing as possible as to why we need this feature and how everybody can benefit from it.

Pull request

For any non trivial modification of the code, the pull requests should be associated with an issue that was previously discussed. During the time you implement and are not yet ready for review, prefix the PR's title with [WIP] and also don't forget to do the following:

  • add a description in the pull request saying which issue you are fixing/implementing.
  • be as explicit as possible about the changes in the description.
  • add the tests corresponding to your modifications.
  • pull requests should be made against the dev branch.

When you are ready for a review by the core team, just remove [WIP] from your PR's title and others will review. This will either lead to a discussion or to a refactor of the code. The Travis CI system makes sure that every pull request is built for Windows, Linux, and macOS, and that unit tests are run automatically. The CI passing is a pre-condition for the PR to be merged as well as the approval from the core team.

Versioning

We use Semantic Versioning (SemVer) for versioning, if you're intereted in closely following AElf's developement please check out the SemVer docs.

License

AElf is licenced under MIT

aelf's People

Contributors

eancuznaivy avatar shiwk avatar gldeng avatar loning avatar samfrb avatar rosona avatar zhxymh avatar ericblack avatar padawanzh avatar aerkol avatar dennislfurrer avatar jason-test-2021 avatar xtaci avatar yuezh127 avatar hzz780 avatar dependabot-support avatar llyyss1988 avatar reyoung1110 avatar jason-hoopox avatar dependabot[bot] avatar justbeingjustin avatar 15110040288 avatar xuxiao415 avatar zhaoyiqi726 avatar daotianya avatar mengruipan avatar yanhuaviolet avatar mashujie avatar doclight1 avatar ethiril avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.