Giter Club home page Giter Club logo

steemconnect-firebase-functions's Introduction

steemconnect-firebase-functions

A TypeScript library that can help you build applications with SteemConnect and Firebase

Build Status


What is steemconnect-firebase-functions?

It is a library designed to help developers who want to create apps based on SteemConnect and Firebase. The library makes it easy to:

  • implement OAuth2 Authorization Code Grant
  • broadcast operations to the Steem blockchain
  • check OAuth2 error types
  • mint Firebase Custom Tokens
  • create Firebase Auth accounts for your users with additional data
  • store tokens in the Firebase Cloud Firestore

How to install?

npm i steemconnect-firebase-functions

Documentation

The documentation is available here.

steemconnect-firebase-functions's People

Contributors

jakipatryk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

dpays

steemconnect-firebase-functions's Issues

Copy Writing Proposal

Hello, i just checked your lovely project and i discovered you have some sections missing out like FAQ, about us, contact us and privacy policy. If you dont mind i will like to write that for you.
My email: [email protected]

Hivesigner migration

Hello,

As you may have heard, Steemconnect rebranded/migrated to Hivesigner. Is there plans to create Hivesigner alternative?

Changes are minimal mostly end points which is single point now to: https://hivesigner.com

Error constants

There should be constants for common errors and error messages.

  • create errors folder and module
  • add error constant for an expired access token
  • add error constant for an invalid access token
  • add error constant for a revoked access token

Modularity

steemconnect-firebase-functions should be more modular.

  • restructure the folder structure
  • each folder should have its own index.ts file

Documentation in a different folder

The number of functions in steemconnect-firebase-functions has increased, so documentation shouldn't be placed in the README anymore.

  • create in-code docs
  • generate external docs based on it
  • create docs in Markdown for each module
  • generate external docs with MkDocs

Helper module - error checkers

There should be a module for helper functions. Let's start with error checkers.

  • add helper functions module
  • add functions that check what given error is caused by

Intuitive broadcasting downvote

Make broadcasting a downvote more intuitive.

To do so, let's:

  • create a createVote function which creates and returns a vote operation
  • create a broadcastDownvote function
  • refactor broadcastUpvote to use createVote

Configuration object for operation creator functions

Operation creator functions should accept a single parameter - configuration object.

  • create interfaces for them
  • refactor operation creator functions to accept a single parameter - configuration object
  • its properties should be immediately assigned to variables (via destructuring)

Function for reliable broadcasting any operation

broadcastOperations should use access_token and refresh_token to reliably broadcast any operations to the Steem blockchain.

What do I mean by reliably?

  • given correct access_token and refresh_token, this function should always broadcast given operation
  • if access_token expired, it should get a new one using refresh_token and try broadcasting operation again
  • maybe it should require the entire AccessTokenResponse object

Requires completely new broadcasting system!

Operation creators

Each operation should have its own creator function.

  • make creator functions for every type of operation
  • refactor the broadcast functions to use these creators

Deleting a comment/post

There should be a function to delete a comment or a post.

  • create a delete_comment operation creator
  • create a broadcastDelete function

Updating user metadata

Library consumer should be able to easily update user metadata.

  • create setUserMetadata function

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.