Coder Social home page Coder Social logo

ninegua / tipjar Goto Github PK

View Code? Open in Web Editor NEW
49.0 3.0 10.0 179 KB

Donate cycles to canisters of your choice.

Home Page: https://tipjar.rocks

License: MIT License

HTML 7.54% JavaScript 61.42% Motoko 28.38% Makefile 1.44% Dhall 0.99% Nix 0.22%
icp canister internetcomputer donation cycles

tipjar's Introduction

Canister Tip Jar

https://tipjar.rocks (which redirects to https://k25co-pqaaa-aaaab-aaakq-cai.ic0.app)

Donate cycles to your favorite canisters on the Internet Computer and keep them live and healthy!

Features and Roadmap

Got questions? We have answers!

Please check out the list of Frequently Asked Questions.

I also wrote down some random notes on the design decisions in making this app.

Releases

  • Version 0.0.0 (retired)

    A technical demo that shows ICPs can be automatically converted into Cycles.

  • Version 0.0.1 (live)

    There could still be bugs to iron out over time, please report issues on GitHub. Source code is already released.

  • Version 0.1.0

    Ready when existing features are sufficiently tested.

  • Version 0.2.0

    Complete features for both donors and canister developers.

  • Version 0.3.0

    Feature freeze. Only bug fixes will be implemented.

  • Version 0.4.0

    The day when TipJar becomes immutable by having the black hole as its only controller!

Local deployment

If you want to run tipjar locally in your dfx environment, you will need GNU make, curl, and a working vessel installation too. For nix users, simply entering nix-shell is enough.

dfx start --background
make deploy

This will start a dfx replica, download necessary files, and deploy all canisters locally.

tipjar's People

Contributors

letmejustputthishere avatar ninegua 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

Watchers

 avatar  avatar  avatar

tipjar's Issues

Let controllers create canister bundle

Problem

One application often has more than one canisters, so it makes sense to donate from a single allocation to a group of canisters when any one of them runs low on cycle balance.

Plan

  1. Allow canister controllers to group a list of canisters together to create a bundle. A canister can only be put in one bundle.
  2. Have a separate page that shows bundle specific info. This can also serve as as "donate to me" landing page.
  3. Allow user to add bundles to their allocation list.
  4. Existing per-canister allocation will be replaced by bundle if the canister is in a bundle.
  5. Notify users when bundle member list is updated.

Independent deposit

The previous design of cycle deposit process was synchronized with other cycle related activities (e.g. canister top-up or other deposits) because we had no easy way of calculating how much cycle was deposited by converting from ICP.

But this has changed with the new CMC canister interface. The method notify_top_up(..) now returns the actual amount of cycles sent to the tipjar canister (after depositing user's ICP). So this means the deposit process can be made independent and it is safe to run concurrently too. As a result the we'll have a more simplified and streamlined process.

send cycles to tipjar

currently afaik it's only possible to send ICP that are then converted to cycles. i bought a bunch of XTC on sonic, bc it's cheaper than burning ICP atm and would love to send them to tipjar. is there a work around or can this feature be added?

Canister list sorting, pagination and search box

Problem

At the moment canister list is not sorted, lacks pagination, and there is no basic search by name (or id).

Plan

  1. Allow the list to be sorted by newly added, or recently donated.
  2. Simple pagination with a more button/anchor. At the moment there is a 200 max limit, so it won't be too bad.
  3. Add a search box that will display substring matches (of alias or canister id) in real time.

Optionally:

  1. Suggest canister id (or bundle) when adding a new canister (or bundle).

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.