ideas.html.j2 (4018B)
1 {% extends "common/base.j2" %} 2 {% block subtitle %}{{ _("Project Ideas")}}{% endblock subtitle %} 3 {% block body_content %} 4 <main id="maincontent"> 5 <div class="container"> 6 <h1>{% trans %}Project ideas{% endtrans %}</h1> 7 <p> 8 {% trans %}This page lists various ideas for projects related to GNU Taler 9 that might be suitable for the right person to work on, possibly 10 under an <a href="https://nlnet.nl/propose">NLnet NGI Open Call</a>. 11 For each idea, we give a rough estimate for how long it is expected 12 to take and how difficult it should be.{% endtrans %} 13 </p> 14 <h2>{% trans %}Open{% endtrans %}</h2> 15 <ul> 16 <li>Update Pretix integration to latest Taler APIs, making use of the 17 newly added support for WebHooks and using refunds, possibly via 18 the rewards API (120h, moderate difficulty)</li> 19 <li>Extend the Point-of-Sale App with multi-currency support. The 20 configuration should specify multiple currencies and their conversion 21 rate. During payment, the user should be given the choice of currency 22 to pay with. (30h, easy)</li> 23 <li>Extend the Point-of-Sale App with the ability to enter a table number 24 (for restaurants), and include the table in the contract terms. Implement 25 a second app that shows active orders to kitchen staff and allows them 26 to mark orders as completed. (300h, moderate difficulty)</li> 27 <li>Add self-service Web frontend to the merchant backend that allows 28 non-admin visitors to order (and pay for) the creation of 29 merchant instances hosted by a (trusted) merchant backend provider. 30 This should make it trivial for non-technical users to sign up at 31 a merchant backend hoster to obtain an instance at that hoster. 32 The Web frontend should collect contact information, warn the user 33 if their service agreement is about to expire, and delete (and 34 eventually purge) instances for which the payment has expired. 35 (600h, moderate difficulty)</li> 36 <li>Implement a currency conversion service by enhancing the merchant 37 backend to allow a wallet to pay with one currency for signatures 38 on blindly signed tokens in another currency. (300h, hard)</li> 39 <li>Add the merchant backend database plugin that supports sqlite3. (600h, tedious)</li> 40 <li>Add sales analytics (how many products are sold when) 41 to the merchant backend (120h, easy)</li> 42 <li>Add merchant backend inventory alerts (Webhooks that fire when inventory falls below 43 certain thresholds) to the merchant backend (60h, easy).</li> 44 <li>Add exchange command-line tool to re-encrypt exchange KYC attributes to a different 45 symmetric key to enable changing the encryption key (for example, 46 when it was accidentally disclosed). (60h, easy)</li> 47 <li>Implement improved coin-selection algorithm in wallet-core 48 that is better at minimizing state size and customer fees, 49 and spends coins before they would require a refresh (to prevent expiration). 50 (300h, hard)</li> 51 <li>A wallet should have a way to export its reserve public key (for P2P payments) 52 as a QR code and users should be able to scan this QR code to trigger arbitrary 53 payments into that wallet. Wallets should periodically fetch the reserve history 54 of their reserve to observe such payments. This would be like the merchant backend 55 templating mechanism (buyer enters amount and subject, or they might also be 56 pre-set in the QR code) but work without a merchant backend or bank account 57 (transfers go wallet-to-wallet). (600h, moderate difficulty)</li> 58 <li>See <a href="https://bugs.taler.net/">our bugtracker</a> for further ideas.</li> 59 </ul> 60 <h2>{% trans %}Claimed{% endtrans %}</h2> 61 <ul> 62 <li></li> 63 </ul> 64 <h2>{% trans %}Finished{% endtrans %}</h2> 65 <ul> 66 <li></li> 67 </ul> 68 69 </div> 70 {% endblock body_content %}