Giter Club home page Giter Club logo

celo-composer's Introduction

Celo

Celo Composer

Build, deploy, and iterate quickly on decentralized applications using Celo.

GitHub Contributors GitHub Contributors Issues GitHub pull requests MIT License

Table of Contents
  1. About The Project
  2. Usage
  3. Roadmap
  4. Contributing
  5. License
  6. Contact
  7. Acknowledgments

About The Project

Celo Composer allows you to quickly build, deploy, and iterate on decentralized applications using Celo. It provides a number of frameworks, examples, and Celo specific functionality to help you get started with your next dApp.

(back to top)

Built With

Celo Composer is built on Celo to make it simple to build dApps using a variety of front-end frameworks, and libraries.

(back to top)

Prerequisites

  • Node (v20 or higher)
  • Git (v2.38 or higher)

How to use Celo Composer

The easiest way to start with Celo Composer is using @celo/celo-composer. This CLI tool lets you quickly start building dApps on Celo for multiple frameworks, including React (with either react-celo or rainbowkit-celo), React Native (w/o Expo), Flutter, and Angular. To get started, just run the following command, and follow the steps:

  • Step 1
npx @celo/celo-composer@latest create
  • Step 2: Provide the Project Name: You will be prompted to enter the name of your project.
What is your project name: 
  • Step 3: Choose to Use Hardhat: You will be asked if you want to use Hardhat. Select Yes or No.
Do you want to use Hardhat? (Y/n)
  • Step 4: Choose to Use a Template: You will be asked if you want to use a template. Select Yes or No.
Do you want to use a template?
  • Step 5: Select a Template: If you chose to use a template, you will be prompted to select a template from the list provided.
- Minipay
- Valora
- Social Connect
  • Step 6: Provide the Project Owner's Name: You will be asked to enter the project owner's name.
Project Owner name:
  • Step 7: Wait for Project Creation: The CLI will now create the project based on your inputs. This may take a few minutes.

  • Step 8: Follow the instructions to start the project. The same will be displayed on the console after the project is created.

πŸš€ Your starter project has been successfully created!

Before you start the project, please follow these steps:

1. Rename the file:
   packages/react-app/.env.template
   to
   packages/react-app/.env

2. Open the newly renamed .env file and add all the required environment variables.

Once you've done that, you're all set to start your project!

Run the following commands from the packages/react-app folder to start the project:

   yarn install
   yarn dev

If you prefer npm, you can run:

   npm install
   npm run dev

Thank you for using Celo Composer! If you have any questions or need further assistance, please refer to the README or reach out to our team.

πŸ”₯Voila, you have a dApp ready to go. Start building your dApp on Celo.

Getting started

Once your custom dApp has been created, just install dependencies, either with yarn or npm i, and run the respective script from the package.json file.

Supported Frameworks

React / Nextjs

  • Support for Website and Progressive Web Application.
  • Works with all major crypto wallets.

Check nextjs docs to learn more about it.

Hardhat

  • Robust framework for building and testing smart contracts.
  • Compatible with various Ethereum development tools and plugins.

Check hardhat docs to learn more about it.

Supported Templates

Minipay

  • Pre-built template for creating a mini-payment application.
  • Seamless integration with Celo blockchain for handling payments.

Checkout minipay docs to learn more about it.

Valora

  • Template designed for Valora wallet integration.
  • Facilitates easy wallet connectivity and transaction management.

Checkout valora docs to learn more about it.

Social Connect

  • Template for building applications with social connectivity features.
  • Supports various social login methods and user interactions.

Checkout social connect docs to learn more about it.

πŸ”­ Learning Solidity

πŸ“• Read the docs: https://docs.soliditylang.org

πŸ“§ Learn the Solidity globals and units

Support

Join the Celo Discord server at https://chat.celo.org. Reach out on the dedicated repo channel here.

Roadmap

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

We welcome contributions from the community.

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

Contact

(back to top)

celo-composer's People

Contributors

0xkenta avatar 0xzoz avatar aaronmgdr avatar alofeoluwafemi avatar amoweolubusayo avatar annaalexakr avatar critesjosh avatar cryptoster avatar dependabot[bot] avatar ericnakagawa avatar ernesto-tha-great avatar gigahierz avatar hatskier avatar hpratt avatar iamoracle avatar jodaatgithub avatar joenyzio avatar leetdev avatar lvpeschke avatar mujhtech avatar nestorbonilla avatar nikbhintade avatar rast000 avatar reachjason avatar renovate[bot] avatar superbow1 avatar therealharpaljadeja avatar viral-sangani avatar yuliyu123 avatar zhyd1997 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

celo-composer's Issues

React-Celo Integration

Composer currently uses use-contractkit. Update code to use latest version - react-celo.

import { useContractKit } from "@celo-tools/use-contractkit";

Improve celo-progressive-dapp-starter

This is an open issue for the Celo Progressive dApp Starter project Gitcoin Bounty.

The Bounty works as follows:

  • If you improve the user interface or create new components that you think might be useful for other developers you may be eligible for a bounty.
  • Meaningful and novel contributions from the community to improve or extend the project will receive a bounty ranging from 5 to 50 cUSD (or more) depending on the work.
  • To claim a bounty, register for the open Gitcoin bounty as a worker and link to your PR.
  • If you are working on something that is in heavy demand from the Celo Developer Community, be sure to get the community excited and commenting on your PR. Although PRs are welcome gitcoin bounty awards will be selected at the discretion of the Celo Foundation team.

Some starter ideas include:

  • improved or new documentation
  • improved functionality
  • extension of current functionality to do something novel or useful
  • improving readability of the project code or file structure
  • improved design or better support for design changes
  • localization of documentation into a new language

Improve Celo Composer

This is an open issue for the Celo Composer Gitcoin Bounty.

The Bounty works as follows:

  • If you improve the user interface or create new components that you think might be useful for other developers you may be eligible for a bounty.
  • Meaningful and novel contributions from the community to improve or extend the project will receive a bounty ranging from 5 to 50 cUSD (or more) depending on the work.
  • To claim a bounty, register for the open Gitcoin bounty as a worker and link to your PR.
  • If you are working on something that is in heavy demand from the Celo Developer Community, be sure to get the community excited and commenting on your PR. Although PRs are welcome gitcoin bounty awards will be selected at the discretion of the Celo Foundation team.

Some starter ideas include:

  • improved or new documentation
  • improved functionality
  • extension of current functionality to do something novel or useful
  • improving readability of the project code or file structure
  • improved design or better support for design changes
  • localization of documentation into a new language

If you are unsure whether your idea is a good improvement for Celo Composer, feel free to comment below and ask for additional guidance.

Add debounce support for inputs

To limit excessive hits to data services per keystroke, implement debounce for the useInput hook for string input components used in GreeterContract.tsx and StorageContract.tsx.

Celo Dapp Integrations

Make it easy for developers to integrate with dApps in the Celo ecosystem. Choose 3 examples from Valora dApp explorer and directions for how to add more.

Improve Celo Composer

This is an open issue for the Celo Composer Gitcoin Bounty.

The Bounty works as follows:

  • If you improve the user interface or create new components that you think might be useful for other developers you may be eligible for a bounty.
  • Meaningful and novel contributions from the community to improve or extend the project will receive a bounty ranging from 5 to 50 cUSD (or more) depending on the work.
  • To claim a bounty, register for the open Gitcoin bounty as a worker and link to your PR.
  • If you are working on something that is in heavy demand from the Celo Developer Community, be sure to get the community excited and commenting on your PR. Although PRs are welcome gitcoin bounty awards will be selected at the discretion of the Celo Foundation team.

Some starter ideas include:

  • improved or new documentation
  • improved functionality
  • extension of current functionality to do something novel or useful
  • improving readability of the project code or file structure
  • improved design or better support for design changes
  • localization of documentation into a new language

If you are unsure whether your idea is a good improvement for Celo Composer, feel free to comment below and ask for additional guidance.

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.