Code Monkey home page Code Monkey logo

b3pay / ic-reactor Goto Github PK

View Code? Open in Web Editor NEW
7.0 1.0 1.0 31.1 MB

IC-Reactor: A suite of JavaScript libraries for seamless frontend development on the Internet Computer platform, offering state management, React integration, and core functionalities for efficient blockchain interactions.

Home Page: https://b3pay.github.io/ic-reactor/

License: MIT License

Rust 0.48% JavaScript 30.81% Shell 0.09% TypeScript 68.62%
dfinity hooks icp internet-computer-protocol internet-identity reactjs typescript

ic-reactor's Introduction

ic-reactor

A Suite of Frontend Utilities for Internet Computer (IC) Development

Documentation - Packages

Welcome to IC-Reactor, a comprehensive collection of TypeScript libraries designed to simplify and enhance frontend development on the Internet Computer (IC) blockchain platform. This project provides a set of tools that cater to various aspects of frontend development, ranging from vanilla JavaScript applications to sophisticated React-based projects.

Versatility Across Front-End Development

Whether you're building a simple vanilla JavaScript application, a complex React project, or anything in between, the IC-Reactor suite is equipped to support your development process. By abstracting the complexities of blockchain interactions and state management, these libraries allow developers to focus on building feature-rich, responsive, and user-friendly front-end applications on the Internet Computer platform.

IC-Reactor is heavily typed and provides type safety, ensuring that your code is robust and free from common errors. With strong typing, you can catch potential issues at compile-time and benefit from better code completion and documentation, developers can efficiently handle a range of tasks from querying and displaying blockchain data to managing user authentication states - all within the familiar ecosystem of JavaScript and React.

@ic-reactor/core npm version

@ic-reactor/core is a foundational library for managing and interacting with Internet Computer (IC) blockchain actors within your application. It simplifies the process of initializing actors, handling state, authentication, performing queries and updates.

Key Features

  • Efficient Actor Initialization and Management: Streamline the process of initializing and managing IC actors.
  • State Management: Track loading, authentication, and error states easily.
  • Query and Update Functionality: Simplified methods for querying data from actors and updating actor states.
  • Testability: Built with testing in mind, allowing you to easily test actor interactions.

Read Docs

@ic-reactor/react @ic-reactor/react

@ic-reactor/react is a React library designed to seamlessly integrate Internet Computer (IC) blockchain interactions into your React applications. It simplifies the process of managing actor states, performing queries, and handling updates within the IC blockchain ecosystem.

Key Features

  • React Context Integration: Utilizes React Context for managing global state related to IC actors.
  • Type-Safe Actor Interactions: Type-safe interaction with IC actors using the provided actor declaration file.
  • Custom React Hooks: Provides custom hooks (useQueryCall, useUpdateCall, useAuth) for easy interaction with IC actors.
  • Simplified Actor Interaction: Streamlines the process of querying and updating data from IC actors.
  • Efficient State Management: Manages loading, error, and data states efficiently within React components.

Read Docs

We Welcome Feature Requests and Contributions

Feature Requests

Your feedback and ideas are invaluable in helping IC-Reactor evolve and improve. We warmly welcome feature requests and suggestions that can enhance the functionality and usability of our libraries. If there's something you'd like to see added or improved, please feel free to share your thoughts:

  • Submit a Feature Request: You can use the GitHub Issues section of the respective package repository to submit feature requests. Please provide as much detail as possible about the feature and how it would benefit users.

  • Discussion and Planning: Our team is open to discussing potential features and their implementation. We value community input and are always looking for ways to make our tools more useful and accessible.

Contributing to IC-Reactor

IC-Reactor is an open-source project, and we encourage contributions from developers of all skill levels. Whether you're fixing bugs, adding features, or improving documentation, your help is welcome. Here's how you can contribute:

  1. Check the Issues: Browse the existing issues for bugs or feature requests that interest you. You can also create a new issue if you have a proposal or have identified a bug.

  2. Fork and Clone: Fork the repository you wish to contribute to, and clone it to your local machine.

  3. Create a Branch: Make your changes in a new branch. Naming your branch something relevant to your changes can be helpful.

  4. Develop and Test: Make your changes and test them thoroughly. Ensure you adhere to the existing code style and guidelines.

  5. Submit a Pull Request: Once you're satisfied with your changes, push your branch to your fork and submit a pull request to the main repository. Provide a clear description of your changes and any relevant issue numbers.

  6. Review and Merge: The maintainers will review your pull request and either merge it or request changes. If your pull request is merged, you will be credited as a contributor.

Join Our Community

We believe in the power of community collaboration to create amazing tools. Your contributions, whether code, ideas, or feedback, are crucial to the success and growth of IC-Reactor. Join us in our mission to build effective and user-friendly tools for Internet Computer blockchain development!

License

This project is licensed under the MIT License. See the LICENSE file for more details.

ic-reactor's People

Contributors

b3hr4d avatar github-actions[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

edmhok

ic-reactor's Issues

Unexpected behavior in Gitpod environment

This is a follow-up from rvanasa/vite-react-motoko#12.

When using the "Open in Gitpod" link on the Vite + React + Motoko readme, the project currently breaks with an error message along the lines of "IC0536: Canister bkyz2-fmaaa-aaaaa-qaaaq-cai has no query method 'get'".

This probably has something to do with @ic-reactor/react trying to use the ICP mainnet instead of the local Gitpod environment, which is handled in @dfinity/agent by default. Here is the relevant source code in case this is helpful for resolving the issue.

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.