From e13fac5195bcca669adc8f4125dc814144fa7f86 Mon Sep 17 00:00:00 2001
From: Yush G
Date: Wed, 5 Apr 2023 17:34:33 +0700
Subject: [PATCH 01/10] Update basket of goods stable coin
---
README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index f3aced6..8e7801b 100644
--- a/README.md
+++ b/README.md
@@ -283,7 +283,7 @@ If you want to be added to the list of people that have completed a project, req
- **Is this website actually clientside ZK?**: A very simple browser extension that detects if a website that claims to be ZK is sending any information to a server, or is clientside only. One version would spoof all outgoing requests to be from an empty server, so that you can still do things like download zkeys, but you can't send personal data.
- Partially DONE. First half done by Monia, not open source yet.
- Create a GitHub org for non-censored DeFi frontends, as suggested [here](https://twitter.com/smsunarto/status/1560897907405901824). Host them under an uncensorable domain as well.
-- A stablecoin for basket-of-goods price index, which adjusts the interest rates of its vaults to create this peg i.e. (us dollar / inflation). It maintains surplus in the Treasury by issuing gas options, allowing a simple on chain derivates framework to generate actual income in other cryptocurrencies, allowing it to deviate from the dollar.
+- A stablecoin for basket-of-goods price index, which adjusts the interest rates of its vaults to create this peg i.e. (us dollar / inflation). It maintains surplus in the Treasury by issuing gas options and flash loans on the treasury. The gas options will allow a simple on chain derivates framework to generate actual income in other cryptocurrencies, allowing it to deviate from the dollar. You should peg to a basket of arbitrary real world currencies or assets, not crypto assets.
- **Dev NFTs on Goerli**: A developer-friendly ERC721 on testnets i.e. Goerli, that lets you send Eth to the contract and will auto-mint you back 100 dev NFTs to experiment with, so super easy to test with during hackathons
- A few fun projects related to ZK identity: if you have any experience at any level, [dm me](https://twitter.com/yush_g) for ideas catered to your level :)
- Build a full NFT marketplace that uses optimal auction theory instead of first price auctions. You should use our [on chain blind Vickrey auction contracts](https://github.com/Philogy/create2-vickrey-contracts), which you can understand via our [blog post](https://blog.aayushg.com/posts/vickrey).
@@ -294,7 +294,7 @@ If you want to be added to the list of people that have completed a project, req
- Patch ethers.js to add a function that calculates the transaction hash, without having to send the transaction. keccak256 on the signed transaction doesn't work, and there is no built in function to do so even though it is possible and one can write their own helper function (see the [description here](https://github.com/Divide-By-0/ideas-for-projects-people-would-use/issues/12)).
- **ZK Soft KYC**: A circuit on the simpler end, with a proof-of-membership to Gitcoin Alpha Passport. When you send a donation on Gitcoin, you prove you own an account (i.e. via a signature match into a merkle tree heyanon style) to prove a matching % (or soft KYC-ability), without revealing who you are. You can use an Axiom state root of the on chain Gitcoin passport to ensure up-to-dateness with the chain. Note that this trusts Gitcoin to verify your matching in a centralized manner.
- **Witness Encypted Tinder**: Implement Protocol Labs’ [new construction](https://drive.google.com/file/d/1GEfm77BfKRz1Xzby89era8KOgalqn00L/view) or [this non-succinct one](https://eprint.iacr.org/2021/1423.pdf), and then build a proof of concept Tinder where everyone selects 5 people they want to match with, and are only matched if people select each other. First, everyone commits to, say, 5 people they are most interested in. Those 5 people should get only notified if they also commit to that person as one of their chosen 5 as well. So, after everyone commits, those commitments are used in the FC-WE scheme that everyone then runs, to publish a message only to their 5 folks only if they also had valid commitments (i.e. with them in it, while keeping it anonymous, which may not be possible with groth16). Finally, in the reveal stage, everyone attempts to read every message and can only end up reading the ones that work for them. You can do this with a pairwise Socialist Millionaire or Yao’s Garbled Circuits, but this requires more back and forth stages.
-- **On Chain Proof Aggregator**: To get L1-level censorship resistance and data availability of ZK circuits is expensive, but there is a way to make this cheaper at the cost of a delay. Imagine building a contract called DelayedBatchGroth16Verify. Let's say, for instance, that I am withdrawing from Torando Cash. Then, I have two phases. One, I send my proof + public parameters to the DelayedBatchGroth16Verify contract along with a small amount of eth (say, calldata cost of that many parameters + a tip). That contract, say ~12 hours, collects all the proofs sent to it. It then uses Snarkpack or analogous (via additivity of KZG commitments) to verify all of the proofs at once for 300K gas. Anyone can batch verify and send as soon as the size of the tips in the contract exceeds the cost of a single KZG verification. Once such a verify passes, it stores say hash(proof, public) in a "passed proofs" mapping. Thus, once someone has verified for me cheaper than a single verify, I can send a second transaction to tornado cash that just checks that the proof + public parameters have been part of a past batch verification (for instance, by hashing all of them and checking that it is a valid mapping key mapping to a 1), and then continues with the rest of the logic. While long-term we expect to not need this due to exceedingly cheapening L2 costs, it will be useful for the next 2 years while we do not have robust ZK L2-to-L2 bridges or audited ZK rollups.
+- **On Chain Proof Aggregator**: To get L1-level censorship resistance and data availability of ZK circuits is expensive, but there is a way to make this cheaper at the cost of a delay. Imagine building a contract called DelayedBatchGroth16Verify. Let's say, for instance, that I am withdrawing from Torando Cash. Then, I have two phases. One, I send my proof + public parameters to the DelayedBatchGroth16Verify contract along with a small amount of eth (say, calldata cost of that many parameters + a tip). That contract, say ~12 hours, collects all the proofs sent to it. It then uses Snarkpack or analogous (via additivity of KZG commitments) to verify all of the proofs at once. Note that calculations are in Gt so it will not be gas efficient. However, anyone can batch verify and send as soon as the size of the tips in the contract exceeds the cost of a single KZG verification. Once such a verify passes, it stores say hash(proof, public) in a "passed proofs" mapping. Thus, once someone has verified for me cheaper than a single verify, I can send a second transaction to tornado cash that just checks that the proof + public parameters have been part of a past batch verification (for instance, by hashing all of them and checking that it is a valid mapping key mapping to a 1), and then continues with the rest of the logic. While long-term we expect to not need this due to exceedingly cheapening L2 costs, it will be useful for the next 2 years while we do not have robust ZK L2-to-L2 bridges or audited ZK rollups.
- ~~ed25519 encryption in a ZK SNARK (using circom). Metamask's [encrypt](https://github.com/MetaMask/eth-sig-util/blob/main/src/encryption.ts#L94) function on chain would be new, and save people from having to use MIMC as an encryption function.~~
- Edit: This is [done](https://ethresear.ch/t/verify-ed25519-signatures-cheaply-on-eth-using-zk-snarks/13139).
- ~~DNS record cert proving in SNARK. Prove the consecutive signatures for root signatures, CA signatures, etc, to be able to verify that some specific string in a name record was signed by a valid chain of authorities. Would likely use sig-verify circuits in circom.~~
From 6231f3ac1f02dc65120243ca211bc2013435e263 Mon Sep 17 00:00:00 2001
From: Yush G
Date: Wed, 5 Apr 2023 22:58:47 +0700
Subject: [PATCH 02/10] Added XOR optimizer
---
README.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/README.md b/README.md
index 8e7801b..528d2bf 100644
--- a/README.md
+++ b/README.md
@@ -292,6 +292,7 @@ If you want to be added to the list of people that have completed a project, req
- Note that this can be made more general. Any entity (the government, rektfinance.eth, or you) can create a curated list of "bad addresses". Any withdrawer can prove non-inclusion in any set of lists they think others would care about when they withdraw (via proof of inclusions in the complement).
- **Better Gitcoin Comments**: Make a PR to [Gitcoin](https://github.com/gitcoinco) to order comment section by comments first, then all contributions. Also recalculate the matching amount shown on the frontend to be adjusted to project future donations based on the average distribution, so that the matching amount is more accurate.
- Patch ethers.js to add a function that calculates the transaction hash, without having to send the transaction. keccak256 on the signed transaction doesn't work, and there is no built in function to do so even though it is possible and one can write their own helper function (see the [description here](https://github.com/Divide-By-0/ideas-for-projects-people-would-use/issues/12)).
+- **XOR Optimizer**: Rewrite general arithmetic circuits or computational programs to maximize the number of XORs used, compared to other gates. This would allow us to create garbled circuits with maximal efficiency because [XORs are free](http://www.cs.toronto.edu/~vlad/papers/XOR_ICALP08.pdf). See a beginners [intro to garbled circuits](https://crypto.stanford.edu/cs355/18sp/lec6.pdf) here.
- **ZK Soft KYC**: A circuit on the simpler end, with a proof-of-membership to Gitcoin Alpha Passport. When you send a donation on Gitcoin, you prove you own an account (i.e. via a signature match into a merkle tree heyanon style) to prove a matching % (or soft KYC-ability), without revealing who you are. You can use an Axiom state root of the on chain Gitcoin passport to ensure up-to-dateness with the chain. Note that this trusts Gitcoin to verify your matching in a centralized manner.
- **Witness Encypted Tinder**: Implement Protocol Labs’ [new construction](https://drive.google.com/file/d/1GEfm77BfKRz1Xzby89era8KOgalqn00L/view) or [this non-succinct one](https://eprint.iacr.org/2021/1423.pdf), and then build a proof of concept Tinder where everyone selects 5 people they want to match with, and are only matched if people select each other. First, everyone commits to, say, 5 people they are most interested in. Those 5 people should get only notified if they also commit to that person as one of their chosen 5 as well. So, after everyone commits, those commitments are used in the FC-WE scheme that everyone then runs, to publish a message only to their 5 folks only if they also had valid commitments (i.e. with them in it, while keeping it anonymous, which may not be possible with groth16). Finally, in the reveal stage, everyone attempts to read every message and can only end up reading the ones that work for them. You can do this with a pairwise Socialist Millionaire or Yao’s Garbled Circuits, but this requires more back and forth stages.
- **On Chain Proof Aggregator**: To get L1-level censorship resistance and data availability of ZK circuits is expensive, but there is a way to make this cheaper at the cost of a delay. Imagine building a contract called DelayedBatchGroth16Verify. Let's say, for instance, that I am withdrawing from Torando Cash. Then, I have two phases. One, I send my proof + public parameters to the DelayedBatchGroth16Verify contract along with a small amount of eth (say, calldata cost of that many parameters + a tip). That contract, say ~12 hours, collects all the proofs sent to it. It then uses Snarkpack or analogous (via additivity of KZG commitments) to verify all of the proofs at once. Note that calculations are in Gt so it will not be gas efficient. However, anyone can batch verify and send as soon as the size of the tips in the contract exceeds the cost of a single KZG verification. Once such a verify passes, it stores say hash(proof, public) in a "passed proofs" mapping. Thus, once someone has verified for me cheaper than a single verify, I can send a second transaction to tornado cash that just checks that the proof + public parameters have been part of a past batch verification (for instance, by hashing all of them and checking that it is a valid mapping key mapping to a 1), and then continues with the rest of the logic. While long-term we expect to not need this due to exceedingly cheapening L2 costs, it will be useful for the next 2 years while we do not have robust ZK L2-to-L2 bridges or audited ZK rollups.
From cd0e0a7bf97a86770d1979a31f1afdbbbd4f1737 Mon Sep 17 00:00:00 2001
From: Yush G
Date: Tue, 11 Apr 2023 00:55:17 +0900
Subject: [PATCH 03/10] Update README.md
Removed bad image processing ideas
---
README.md | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/README.md b/README.md
index 528d2bf..2402449 100644
--- a/README.md
+++ b/README.md
@@ -175,7 +175,7 @@ If you want to be added to the list of people that have completed a project, req
### Family/Roommates
- Remotely control your grandparents' computer/phone with one link click that you can send them. It should be one-time and only work for a few minutes, so hackers can't exploit it in the future. Chrome Remote Desktop requires Google sign-in from the same account in both places, which is harder to pull off for 2 different people.
-- Make an algorithm for a mounted camera that sends SMS notifications (perhaps if your roommate leaves dirty dishes?) based on this [similar one](https://medium.com/@ageitgey/snagging-parking-spaces-with-mask-r-cnn-and-python-955f2231c400) for parking spaces.
+- Make an algorithm for a mounted camera that sends SMS notifications if your roommate leaves dirty dishes, based on this [similar one](https://medium.com/@ageitgey/snagging-parking-spaces-with-mask-r-cnn-and-python-955f2231c400) for parking spaces.
@@ -191,18 +191,15 @@ If you want to be added to the list of people that have completed a project, req
### Image Processing
-- Automatically make photos look good by aligning edge detection with the rule of thirds. Perhaps as a Chrome extension that runs when you hit crop on a Google Photos image link?
-- Take a picture of a wine stand, and recommend wines by the best rating to price ratio.
-- A good online red-eye fixer. Surprisingly, the first few on Google all sucked.
- Make app/Chrome extension/background integration to auto tag Google Photos images with ongoing calendar events, so I can search for the event and see the photos from that. Useful for class notes (if all your classes are on your calendar) and generally increasing the searchability of photos.
-- A way to share event photos to specific people. It should be possible to upload an album to i.e. Google Photos or Flickr of thousands of pics of the event, and attendees can input a picture of themselves and their friends, and it automatically runs facial recognition on every pic in the album and only returns pics that include people from the inputted picture.
+- A way to share event photos to specific people. It should be possible to upload an album to i.e. Google Photos or Flickr of thousands of pics of the event, and attendees can input a picture of themselves and/or their friends, and it automatically runs facial recognition on every pic in the album and only returns pics that include people from the inputted picture. Alternatively, since Google Photos already does this, a script that scrapes through the album and sees which ones are tagged with you, and saves those to your library.
### Video Processing
- Convert any youtube video to the trapezoid holographic projection (like [this](https://www.instructables.com/3D-Holograms-Using-Phone/)) by running depth perception AI on the video, and changing the depths that different pixels are at on different screens, so you see a depth modulated image on top of your screen, holographically, for any video!
-- Animation Generator: AI labels each frame in a video with the contents in a text (representation learning), then based on given labels, generates missing labels/coherent story, then generates an animation based on all those labels. Can deepfake style transfer all images to be the same style (idea inspired by Eden Bensaid).
+- Animation Generator: AI labels each frame in a video with the contents in a text (representation learning), then based on given labels, generates missing labels/coherent story, then generates an animation based on all those labels. Can deepfake style transfer all images to be the same style (like Gen-1).
- A dashcam that alerts you if someone is giving you a parking ticket when you're away. Bonus points if it tells the cop that you'll be back in just a minute.
- Auto Analyze Game Footage: A drone above a sports game keeps track of all the footage and then you infer the plays the opponent is making based on similarity of movement, so you can get the strategies of an arbitrary team. Can also do with phone cameras possibly.
- A hidden camera on a lapel that lets you record all poker hands at a casino and then analyses them for you.
From 521ee198b03668b2339a3ec949cbe87f31b8d15b Mon Sep 17 00:00:00 2001
From: Yush G
Date: Thu, 13 Apr 2023 18:02:18 +0200
Subject: [PATCH 04/10] Added beatsaber links
---
README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 2402449..bbbcae2 100644
--- a/README.md
+++ b/README.md
@@ -230,9 +230,8 @@ If you want to be added to the list of people that have completed a project, req
### Text Processing/NLP
- **Goodreads Book Recommender via OpenSyllabus**: A site that takes in your Goodreads profile and uses the OpenSyllabus Galaxy book embeddings to build a recommender system for what you might like next.
-- A creative startup name finder powered by baby names. Find meanings for baby babes, and make a site where you can input keywords your startup is about, and it will print resulting baby names with meanings with the highest keyword overlap (or min distance in the word embedding space).
+- A creative startup name finder powered by baby names. Find meanings for baby babes, and make a site where you can input keywords your startup is about, and it will print resulting baby names with meanings with the highest keyword overlap (or min distance in the word embedding space). You can also have a keyword masher, where you input 2+ keywords, then try all reasonable pairwise ship names till you reach an untaken name .com/.ai/.io/other top TLD.
- Inspired by https://www.joinleelo.com/blog/how-we-came-up-with-the-name-leelo
-- Another startup name generator - input 2+ keywords, then try all reasonable pairwise ship names till you reach an untaken name .com/.ai/.io/other top TLD
- Convert all text in messenger apps to lowercase automatically (for speech to text or bad autocorrect).
- Keyboard shortcut for automatically fixing spelling in Google Docs+.
- A chrome extension that adds the per ounce/unit price to Instacart the same way Amazon does.
@@ -245,6 +244,7 @@ If you want to be added to the list of people that have completed a project, req
### Fun
- Create a nice frontend for DeepSaber, a way to AI generate beatsaber maps for any youtube video. Currently, it's just a [colab notebook](https://colab.research.google.com/drive/11v-ztHOUXLXFHmH4QIuXGXtTvD-3r7oP#scrollTo=mocWjd1-oatL), but it's [a few short steps away](https://gist.github.com/Divide-By-0/0fd38b7b8b0102b21b4f11bf8dd7d707) from having a nice frontend. BeatSage is a similar AI mapper that's generally regarded as having an inferior algorithm, and they hit 100K uses in a few months.
+ - Edit: Done at [bsmapper.com](https://bsmapper.com) and [beatsaberai.com](https://beatsaberai.com). A new one is coming out soon as well that should blow these two out of the water.
- A better smart time-based phone password lock. For instance, if the current time is AB:CD, the user can set their password as say, (A+B), (|C-D|), (A \* B % 10), (D), or a general user-coded function, so it changes every minute. Existing solutions only allow rudimentary functions.
- Automatic haircut chooser -- input a picture, and based on aligning your face to a celebrity with similar facial features (via keypoint matching or AI facial recognition %), then overlay celebrity hair on top of yours to preview the style or directly show that celebrity's hair to your barber.
- Automatically take a picture of your face and take cross ratios and edge detection/curve detection to determine the best sunglasses based on face shape. Training data can be celebrities with similar face shapes, and you can even have a whole startup ship and send you completely custom-sized sunglasses.
From 93179179e214d60220586ae517201ab0a4eb4639 Mon Sep 17 00:00:00 2001
From: Yush G
Date: Thu, 13 Apr 2023 18:05:11 +0200
Subject: [PATCH 05/10] Added blink tracker
---
README.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/README.md b/README.md
index bbbcae2..7f06b5b 100644
--- a/README.md
+++ b/README.md
@@ -198,6 +198,7 @@ If you want to be added to the list of people that have completed a project, req
### Video Processing
+- **Blink Tracker for iOS/Android**: Count blinks and display on screen. Here is a [full spec for an iOS app](https://docs.google.com/document/d/1w6dA5UAvva4zIa9e-msC-8sv5pUHpkX-7uuwCeT-C3Q/edit?usp=sharing).
- Convert any youtube video to the trapezoid holographic projection (like [this](https://www.instructables.com/3D-Holograms-Using-Phone/)) by running depth perception AI on the video, and changing the depths that different pixels are at on different screens, so you see a depth modulated image on top of your screen, holographically, for any video!
- Animation Generator: AI labels each frame in a video with the contents in a text (representation learning), then based on given labels, generates missing labels/coherent story, then generates an animation based on all those labels. Can deepfake style transfer all images to be the same style (like Gen-1).
- A dashcam that alerts you if someone is giving you a parking ticket when you're away. Bonus points if it tells the cop that you'll be back in just a minute.
From 2507d9db3e39850d550376dcf65be40bfa2914ea Mon Sep 17 00:00:00 2001
From: Yush G
Date: Thu, 13 Apr 2023 18:19:12 +0200
Subject: [PATCH 06/10] Added quantum proof keypairs
---
README.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/README.md b/README.md
index 7f06b5b..12843a1 100644
--- a/README.md
+++ b/README.md
@@ -267,6 +267,7 @@ If you want to be added to the list of people that have completed a project, req
### Crypto ($400 each)
+- **Quantum Proof Keypairs on Ethereum with AA**: Implement ECDSA in a STARK and integrate into EIP 4337 like this [ethresearch post suggests](https://ethresear.ch/t/quantum-proof-keypairs-with-ecdsa-zk/14901), allowing anyone to move their money to a quantum-safe wallet with ECDSA, without having to switch keypair algorithms.
- **Truly random NFT drops** The problem is that you can predict randomness and mint the best NFTs by simulating the chain. Some solutions [exist](https://www.paradigm.xyz/2021/10/a-guide-to-designing-effective-nft-launches#phase-4-metadata-reveal). However, a better way to do this is, on mint, you generate a 24+ second (2+ block) VRF seeded by the previous blockhash. Minters pay gas upfront for anyone to send a second reveal transaction. MEV searchers calculate the VDF and send the result to the chain for that gas money + a small bonus, in return for updating the NFT values on chain first. More description at this hackmd: https://hackmd.io/xgR6mtWyQYC_SZYtZTdoDA .
- **Futarchy On-Chain**: Build the first prediction markets for governance, like [MerkleDao](http://www.ralphmerkle.com/papers/DAOdemocracyDraft.pdf)'s plan. Add features like also betting reputation points proportional to money, where higher reputation leads to higher investment limits, which will help institutional players to be long-term aligned with the project instead of financial manipulators. This will also help elect legislators who consistently have high reputation, meaning they accurately predict long term impact of legislation on people.
- **Bitcoin on Chain**: [Not my ideas, but still excellent] The four ideas at the bottom of https://bitcoinmirror.org/ have not been created yet and are technically feasible as an intermediate-level project, and could be the first trustless applications of Bitcoin on Ethereum! They haven't been built yet because this was only possible a few months ago and isn't marketed very widely. Would likely quality for Gitcoin/Eth Uni grant for much more funding. WBTC uses a centralized minting system with a 10B$ market cap and can be replaced by this. Can do as well with [ZK proof of BTC headers](https://devfolio.co/projects/bls-pil-865f), which will be substantially cheaper.
From 55ba8f27a8e21c9e3f17dafd35d3535498a50d84 Mon Sep 17 00:00:00 2001
From: Yush G
Date: Tue, 18 Apr 2023 18:41:12 +0200
Subject: [PATCH 07/10] Added good luck circle shirt idea
---
README.md | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 12843a1..ad13e18 100644
--- a/README.md
+++ b/README.md
@@ -261,7 +261,8 @@ If you want to be added to the list of people that have completed a project, req
- I think college radio stations (like MIT WMBR) would really like this and probably use it!
- A Twitter bot that tweets the opposite of what a Twitter thought leader influencer says and is therefore just as insightful.
- Run analysis on which dance teams placed in what rank, to see the correlation between show order and rankings to measure bias, at shows like the Desi Dance Network.
-- An Amazon price per ounce/count calculation that works all the time, and the equivalent for Instacart, Walmart, etc
+- An Amazon price per ounce/count calculation that works all the time, and the equivalent for Instacart, Walmart, etc.
+- Draw a [bad luck circle](https://twitter.com/marsreviewer/status/1646608776747798565?t=UjK5wKUiA29kWEkDm99jSg&s=19) and sell t-shirts nearby that say you flip all bad luck for good luck, [inspired by this](https://twitter.com/Noahpinion/status/1648052997241577472). Pretty performance art-y.
From 7a7b9cebfebabc9178dfd4f82eced9338fb97c10 Mon Sep 17 00:00:00 2001
From: Yush G
Date: Thu, 4 May 2023 16:54:18 +0200
Subject: [PATCH 08/10] Added auto dj
---
README.md | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/README.md b/README.md
index ad13e18..c62152c 100644
--- a/README.md
+++ b/README.md
@@ -131,8 +131,9 @@ If you want to be added to the list of people that have completed a project, req
- A program that takes your Spotify playlist and converts it to a clean version with the same songs, and removes it if it can't find any. Used to be able to listen to my playlists in the car with my parents.
- DONE: By [Arman Rafati](https://github.com/code-arman/Cleanify), project at [cleanify.app](https://www.cleanify.app)!
- A tinder for songs -- plays the most commented 10 seconds of a song on SoundCloud and adds it to a playlist if you like it. Inspired by Soundsieve (https://github.com/wilzh40/SoundSieve) which is unfortunately dead, and fab.fm which has a different song discovery method.
-- Connect your Spotify and visualize Spotify data insights as plots. Existing apps show tables or lists, but it's a small jump to display eye-candy plots instead, and will help with virality.
-- An automatic music video creator from mp3. Upload any collection of videos, pictures, or a topic, that you want to auto-align. The app detects drumbeats or other features and staggers the videos to transition at those times.
+- Connect your Spotify and visualize Spotify data insights as pretty plots. Existing apps show tables or lists, but it's a small jump to display eye-candy plots instead, and will help with virality.
+- **Responsive AI DJ**: Uses a camera to monitor the movement of the people in the crowd and run sentiment analysis on their faces. Notices how that changes as it changes the music, with higher weights for more people. Can then "gradient descent" towards the optimal AI generated music for that crowd, keeping in mind things like repetitiveness and how the audience composition changes over time. Want to add variety over just beats, so give it some samples and voices to throw in as well.
+- An automatic music video creator from mp3. Upload any collection of videos, pictures, or a topic, that you want to auto-align. The app detects drumbeats or other features and staggers the videos to transition at those times. Note that this kind of exists with Adobe Firefly now, I think.
- Could potentially also upload a 3d scene somehow, and randomly move around and show the field of view, but at a speed proportional to music energy and rotating only when beats hit. Perhaps to import the 3d scene, could be autogenerated from an image/set of images, or just a spot on google earth or something?
- Automatically nightcore songs and post them as YouTube compilations
- An audio recorder where you can tap to add a flag at any time -- you can attach a note if you want, but the purpose is that later you can quickly skip to that time and know something important is there.
@@ -163,12 +164,11 @@ If you want to be added to the list of people that have completed a project, req
### Programming Tools
-- A lightweight create-react app for ML apps. This starter app would compile on first clone and run React and Python. Should have a 'yarn deploy' or something that does a one-click deploy to an API endpoint as well. Would be cool if the default frontend was a presetup email collector, usually the first stage of hype in a startup anyways.
- - Edit: I now think this should use React and [Modal](http://modal.com) or [Replicate](https://replicate.com) instead.
-- A debugger to catch bugs like two functions being the same and different in inconsistent ways, can use interfaces like ChatGPT automatically on your code.
- Automatically track all the keyboard shortcuts/clicks you do within an editor, and suggest/generate keybindings and commands for your most inefficient workflows (an interactive way to practice forgotten yet useful vim shortcuts, for instance)
-- A greasemonkey/tampermonkey script to automatically in the background, backup all visited pages and their hyperlinks to Internet Archive. I used to have a naiive script, but a faster script would only do the hyperlink scanning and API calls after the full page loads.
-- A greasemonkey/tampermonkey script to, when detecting a page that says "404" and "Not Found" on it, display a link to go to that page in the Internet Archive.
+- **Auto-Archiver**: A greasemonkey/tampermonkey script to automatically in the background, backup all visited pages and their hyperlinks to Internet Archive. I used to have a naiive script, but a faster script would only do the hyperlink scanning and API calls after the full page loads.
+- A lightweight create-react app for ML apps. This starter app would compile on first clone and run React and Python. Should have a 'yarn deploy' or something that does a one-click deploy to an API endpoint as well.
+ - Edit: I now think this should use React and [Modal](http://modal.com) or [Replicate](https://replicate.com) instead.
+- **404 to Archive Redirecter**: A greasemonkey/tampermonkey script to, when detecting a page that says "404" or "Not Found" on it, automatically redirect to that page in the Internet Archive.
@@ -185,13 +185,13 @@ If you want to be added to the list of people that have completed a project, req
- Prefer to make this automated by building a scraping service for all candidates on Ballotpedia comparing state senators etc. and scraping their beliefs from their speeches on youtube transcripts or personal links or Twitter etc. Can also train on the Wikipedia grid of candidate beliefs/policy votes.
- Existing solutions are lacking: isidewith (only for presidential race), voteredge (ugly), ballotpedia (no side by side or issues grid).
- This project may or may not have been done by a team from [AIM Labs](https://aimlabs.mit.edu/).
-- Given a county, it automatically scrapes candidates running for local office and analyzes their social media/public statements to infer possible political stances. If this is not enough info on local leaders, it might require an embedding/LDA type approach to analyze their public profile.
+- Given a county, it automatically scrapes candidates running for local office and analyzes their social media/public statements to infer possible political stances. If this is not enough info on local leaders, it might require an embedding/LDA type approach to analyze their public profile. Will likely be pretty easy with ChatGPT prompting.
### Image Processing
-- Make app/Chrome extension/background integration to auto tag Google Photos images with ongoing calendar events, so I can search for the event and see the photos from that. Useful for class notes (if all your classes are on your calendar) and generally increasing the searchability of photos.
+- Make app/Chrome extension/background integration to auto tag Google Photos images with ongoing calendar events, so I can search for the event and see the photos from that. Useful for class notes (if all your classes are on your calendar) and generally increasing the searchability + tagging of photos.
- A way to share event photos to specific people. It should be possible to upload an album to i.e. Google Photos or Flickr of thousands of pics of the event, and attendees can input a picture of themselves and/or their friends, and it automatically runs facial recognition on every pic in the album and only returns pics that include people from the inputted picture. Alternatively, since Google Photos already does this, a script that scrapes through the album and sees which ones are tagged with you, and saves those to your library.
From ce45cc81ebc6979e58812c5baa621d0606c9fcbb Mon Sep 17 00:00:00 2001
From: Yush G
Date: Sat, 24 Jun 2023 15:29:51 -0400
Subject: [PATCH 09/10] Added tuneder/sc-explorer WIPs and keybr clone
---
README.md | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index c62152c..766f190 100644
--- a/README.md
+++ b/README.md
@@ -89,6 +89,13 @@ If you fully deploy the project publicly, I award free hosting and small cash pr
**Bounty Prompt**: Safe tornado cash, where users can use it but hackers/North Korea can't. To be able to use tornado.cash, you have to wait a significant number of blocks between deposits and withdraws. You know the leaves being added to the Merkle tree, and can trace which are linked to stolen deposits. You can create a second blocklist of "banned leaves", which allows you to block withdraws of nullifier leaves, meaning hackers can deposit but not withdraw.
**Github Repo**: [tornado-core-blacklist](https://github.com/hananbeer/tornado-core-blacklist)
+### Open-source Keybr Clone with More Statistics
+
+**Bounty Prompt**: Make an open source keybr clone with more statistics, like seperating lowercase/capital letters, and showing most missed keys and most missed pairs of keys.
+**Completed by**: Aayush Gupta (me)
+**Github Repo**: [keybr-with-stats](https://github.com/Divide-By-0/keybr-with-stats/)
+**Deployed Website**: https://keybr.onrender.com
+
@@ -131,7 +138,7 @@ If you want to be added to the list of people that have completed a project, req
- A program that takes your Spotify playlist and converts it to a clean version with the same songs, and removes it if it can't find any. Used to be able to listen to my playlists in the car with my parents.
- DONE: By [Arman Rafati](https://github.com/code-arman/Cleanify), project at [cleanify.app](https://www.cleanify.app)!
- A tinder for songs -- plays the most commented 10 seconds of a song on SoundCloud and adds it to a playlist if you like it. Inspired by Soundsieve (https://github.com/wilzh40/SoundSieve) which is unfortunately dead, and fab.fm which has a different song discovery method.
-- Connect your Spotify and visualize Spotify data insights as pretty plots. Existing apps show tables or lists, but it's a small jump to display eye-candy plots instead, and will help with virality.
+ - EDIT: iOS app WIP by Tuneder and web app/cli WIP by sc-explorer. Both will receive full bounties on completion, but no more will be awarded.
- **Responsive AI DJ**: Uses a camera to monitor the movement of the people in the crowd and run sentiment analysis on their faces. Notices how that changes as it changes the music, with higher weights for more people. Can then "gradient descent" towards the optimal AI generated music for that crowd, keeping in mind things like repetitiveness and how the audience composition changes over time. Want to add variety over just beats, so give it some samples and voices to throw in as well.
- An automatic music video creator from mp3. Upload any collection of videos, pictures, or a topic, that you want to auto-align. The app detects drumbeats or other features and staggers the videos to transition at those times. Note that this kind of exists with Adobe Firefly now, I think.
- Could potentially also upload a 3d scene somehow, and randomly move around and show the field of view, but at a speed proportional to music energy and rotating only when beats hit. Perhaps to import the 3d scene, could be autogenerated from an image/set of images, or just a spot on google earth or something?
@@ -139,6 +146,7 @@ If you want to be added to the list of people that have completed a project, req
- An audio recorder where you can tap to add a flag at any time -- you can attach a note if you want, but the purpose is that later you can quickly skip to that time and know something important is there.
- Can do this for a timer app/song player also, not just an audio recorder.
- Kaggle for music production -- the site provides samples and teaches the general structure to layer them, then has a periodic competition to layer them to create the best beat [Note: Kenny Beats runs a similar competition but without the lessons].
+- Connect your Spotify and visualize Spotify data insights as pretty plots. Existing apps show tables or lists, but it's a small jump to display eye-candy plots instead, and will help with virality.
- A plugin that just takes a piano melody and adds corresponding drums and reverb and a beat and a chorus and everything just off those notes (like the [harmony7](https://mitadmissions.org/blogs/entry/we-made-a-website/) MIT web.lab app).
- Scrape a karaoke or music video from YouTube, match the pitch to notes (FFT?), then make bars at those pitches for you to hit, and overlay your current singing on top of it. Allows you to quickly train pitch like Yousician or Riyaz, but for any song. Can be used for live singing, singing covers at home, or singing lessons.
- Website that takes a video or movie, Shazam's all the songs or looks up soundtracks if they're public, and converts it to a Spotify playlist automatically. This might already be commonplace for mainstream movies, but doesn't exist for uncommon ones.
@@ -153,6 +161,7 @@ If you want to be added to the list of people that have completed a project, req
- **8 Hours of Sleep App**: Sleep tracker app that detects when you fall asleep. It then turns off your sleep podcast/asmr and makes sure you get as close to 8 hours as possible and wakes you up in a light sleep state. Note that existing sleep cycle apps force a wake-up time, but time-to-sleep is often so inconsistent that chances are you won't be getting 8 hours.
- **Lucid dreaming app**: Pairs with Oura ring or Sleep Cycle-type apps, to play a lucid symbol sound when you are in REM sleep to try to induce lucid dreaming, inspired by Lucid Experiment. It will also have you practice snapping to awareness when the sound is played for 5 minutes as you fall asleep every day.
+ - Edit: Turns out Sleep by Android sort of does this; I actually lucid dreamt the first time I tried it. Oura doesn't have a real-time API that can be called during sleep unfortunately. This is good enough for me, so going to deactivate this idea's bounty.
- **Patient radiology in your own hands**: An app that lets you take your physician's radiology image (or auto-align a sneaky picture of it), generate the hotspots of bilaterally asymmetric places or ML-determined anomalies, then the patient can ask the radiologist to double check those spots and comment on what it is. Inspired since radiologists' eyes often pause at the place where people have tumors, according to some studies -- noticably AI is significantly better than humans yet not widely deployed.
- A collection of all large-scale health studies for foods, ranked on a single number line of toxicity with error bars. Can scrape correlation/p values and error bars directly from papers.
- Resulting graphic should look like this: https://cdn.vox-cdn.com/uploads/chorus_asset/file/3523382/Medical_studies-05.0.png
@@ -169,6 +178,8 @@ If you want to be added to the list of people that have completed a project, req
- A lightweight create-react app for ML apps. This starter app would compile on first clone and run React and Python. Should have a 'yarn deploy' or something that does a one-click deploy to an API endpoint as well.
- Edit: I now think this should use React and [Modal](http://modal.com) or [Replicate](https://replicate.com) instead.
- **404 to Archive Redirecter**: A greasemonkey/tampermonkey script to, when detecting a page that says "404" or "Not Found" on it, automatically redirect to that page in the Internet Archive.
+- OSS Keybr Clone: Make an open source keybr clone with more statistics, like seperating lowercase/capital letters, and showing most missed keys and most missed pairs of keys.
+ - Edit: This is done at [https://keybr.onrender.com](https://keybr.onrender.com).
From 54508d9fe028c02eda4924707aec7649da6ec459 Mon Sep 17 00:00:00 2001
From: Yush G
Date: Sat, 24 Jun 2023 15:36:46 -0400
Subject: [PATCH 10/10] Added oss + adfree reasoning
---
README.md | 21 ++++++++++++++++++---
1 file changed, 18 insertions(+), 3 deletions(-)
diff --git a/README.md b/README.md
index 766f190..60c3e04 100644
--- a/README.md
+++ b/README.md
@@ -12,12 +12,10 @@ Feel free to use these for a hackathon, side project, or hacklodge project -- I'
If you fully deploy the project publicly, I award free hosting and small cash prizes at $200 per idea ($400 per crypto idea). I personally put in $200 (crypto ideas additionally 2x matched by [@smsunarto](https://twitter.com/smsunarto)). This is at my discretion so people don't game the system or feel cheated; the point is to build the project for learning and self-satisfaction, not the grant -- the money is mostly just so it can continue to exist :). I will likely fund any good-faith implementation. Reach out to [me](https://twitter.com/yush_g) if you're interested in helping sponsor bounties as well!
-**Total projects built: 11.**
+**Total projects built: 12.**
**Finished + Paid out Bounties
**
-
-
### Mixmello: Remix Spotify Playlists
**Bounty Prompt**: A program that takes your spotify playlist and converts it to another one of remixes of the same songs, to get some variety. Create remixed versions of your favourite playlists. Free and open source!
@@ -106,6 +104,23 @@ If you make any of these, please make them open source!
If you want to be added to the list of people that have completed a project, request a PR adding the project idea, your project's URL, and your repo's URL to [CONTRIBUTORS.md](./CONTRIBUTORS.md) and above, and edit the README to mark them done. I can help brainstorm relevant communities, and recommend marketing ideas to help get your first few hundred users.
+**Why make them open source and ad-free?
**
+
+
+I think open source is very, very powerful. I'd also love to add features to it if I want something, and I'm sure I'm not alone. Your app can be maintained and improved by the community that most cares about it without effort on your part, and you can just put a note in the README that anyone is free to share it not for profit, but anyone who monetizes, needs to check in with you first.
+
+Open source companies with canonical deployments are still often successful, and it makes little difference to the end user -- 99.99 percent of end users are not technical enough to even deploy a Github app. Gitlab, Android, Linux, Firefox, Flutter, React, Python, Rust, Docker, AWS, Box, Darabricks, Kubernetes, etc -- there's a massive list of open source projects that are wildly successful, and many of them have some "canonical deployment" which is monetized.
+
+I wasn't always pro-open source. I thought, aren't you giving up your technical moat by open sourcing? But the financial upside to closed source compared to open source is very little, and the developer friendliness of open source is high enough that if there's any shot for the app to get big, that's the best shot. If someone publishes a competing app without your consent, expose them on Twitter and report them to the app store. Companies recruit through open source too, so if you're a student, it's a great way to get recruited.
+
+I promise none of these will be a billion dollar app (or frankly even a thousand dollar app), and is just an early step in a long list of many future great things you will do. I highly recommend you invest in maximum social capital right now, and convert it to technical capital later. If you have a desire for monetizable projects, I'm happy to send over more ideas for those!
+
+Ads bring in surprisingly low revenue -- I hope that the bounty makes it worth your time; for most of these apps, the amount you expect to make off of ads will probably be less than the bounty amount I pay you upfront. Overall, I strongly advise against closed source and ads -- not for me, but for the success of the app, and for you to have the satisfaction of creating software used by the maximum number of people :)
+
+
+
+
+
## Index
[All Software](#all-software)