## Inspiration

Peer-review is critical to modern science, engineering, and healthcare
endeavors. However, the system for implementing this process has lagged behind
and results in expensive costs for publishing and accessing material, long turn
around times reminiscent of snail-mail, and shockingly opaque editorial
practices. Astronomy, Physics, Mathematics, and Engineering use a "pre-print
server" ([arXiv](https://arxiv.org)) which was the early internet's improvement
upon snail-mailing articles to researchers around the world. This pre-print
server is maintained by a single university, and is constantly requesting
donations to keep up the servers and maintenance. While researchers widely
acknowledge the importance of the pre-print server, there is no peer-review
incorporated, and none planned due to technical reasons. Thus, researchers are
stuck with spending >$1000 per paper to be published in journals, all the while
individual article access can cost as high as $32 per paper!
([source](https://www.nature.com/subscriptions/purchasing.html)). For reference,
a single PhD thesis can contain >150 references, or essentially cost $4800 if
purchased individually.

The recent advance of blockchain and smart contract technology
([Ethereum](https://www.ethereum.org/)) coupled with decentralized
file sharing networks ([InterPlanetaryFileSystem](https://ipfs.io))
naturally lead us to believe that archaic journals and editors could
be bypassed. We created our manuscript distribution and reviewing
platform based on the arXiv, but in a completely decentralized manner.
Users utilize, maintain, and grow the network of scholarship by simply
running a simple program and web interface.

## What it does

arXain is a Dapp that deals with all the aspects of a peer-reviewed journal service.
An author (wallet address) will come with a bomb-ass paper they wrote.
In order to "upload" their paper to the blockchain, they will first
need to add their file/directory to the IPFS distributed file system. This will
produce a unique reference number (DOI is currently used in journals)
and hash corresponding to the current paper file/directory.

The author can then use their address on the Ethereum network to create a new contract
to submit the paper using this reference number and paperID. In this way, there will
be one paper per contract. The only other action the
author can make to that paper is submitting another draft.

Others can review and comment on papers, but an address can not comment/review
its own paper. The reviews are rated on a "work needed", "acceptable" basis
and the reviewer can also upload an IPFS hash of their comments file/directory.
Protection is also built in such that others can not submit revisions of the
original author's paper.

The blockchain will have a record of the initial paper submitted, revisions made
by the author, and comments/reviews made by peers. The beauty of all of this is
one can see the full transaction histories and reconstruct the full evolution of
the document. One can see the initial draft, all suggestions from reviewers,
how many reviewers, and how many of them think the final draft is reasonable.

## How we built it

There are 2 main back-end components, the IPFS file hosting service
and the Ethereum blockchain smart contracts. They are bridged together
with ([MetaMask](https://metamask.io/)), a tool for connecting
the distributed blockchain world, and by extension the distributed
papers, to a web browser.

We designed smart contracts in Solidity. The IPFS interface was built using a
combination of Bash, HTML, and a lot of regex!
. Then we connected the IPFS distributed net with the Ethereum Blockchain using
MetaMask and Javascript.

## Challenges we ran into

On the Ethereum side, setting up the Truffle Ethereum framework and test
networks were challenging. Learning the limits of Solidity and constantly
reminding ourselves that we had to remain decentralized was hard!
The IPFS side required a lot of clever regex-ing. Ensuring that public access
to researchers manuscript and review history requires other proper identification
and distribution on the network.

The hardest part was using MetaMask and Javascript to call our contracts
and connect the blockchain to the browser. We struggled for about hours
trying to get javascript to deploy a contract on the blockchain. We were all
new to functional programming.

## Accomplishments that we're proud of

Closing all the curly bois and close parentheticals in javascript.
Learning a whole lot about the blockchain and IPFS. We went into this
weekend wanting to learning about how the blockchain worked, and came out
learning about Solidity, IPFS, Javascript, and a whole lot more. You can
see our "genesis-paper"on an IPFS gateway (a bridge between HTTP and IPFS) [here](https://gateway.ipfs.io/ipfs/QmdN2Hqp5z1kmG1gVd78DR7vZmHsXAiSbugCpXRKxen6kD/0x627306090abaB3A6e1400e9345bC60c78a8BEf57_1.pdf)

## What we learned

We went into this with knowledge that was a way to write smart contracts,
that IPFS existed, and minimal Javascript.

We learned intimate knowledge of setting up Ethereum Truffle frameworks,
Ganache, and test networks along with the development side of Ethereum
Dapps like the Solidity language, and javascript tests with the Mocha framework.

We learned how to navigate the filespace of IPFS, hash and and organize directories,
and how the file distribution works on a P2P swarm.

## What's next for arXain

With some more extensive testing, arXain is ready for the Ropsten test network
*at the least*. If we had a little more ETH to spare, we would consider launching
our Dapp on the Main Network. arXain PDFs are already on the IPFS swarm and can
be accessed by any IPFS node.
## Inspiration

Feeling major self-doubt when you first start hitting the gym or injuring yourself accidentally while working out are not uncommon experiences for most people. This inspired us to create Core, a platform to empower our users to take control of their well-being by removing the financial barriers around fitness.

## What it does

Core analyses the movements performed by the user and provides live auditory feedback on their form, allowing them to stay fully present and engaged during their workout. Our users can also take advantage of the visual indications on the screen where they can view a graph of the keypoint which can be used to reduce the risk of potential injury.

## How we built it

Prior to development, a prototype was created on Figma which was used as a reference point when the app was developed in ReactJs. In order to recognize the joints of the user and perform analysis, Tensorflow's MoveNet model was integrated into Core.

## Challenges we ran into

Initially, it was planned that Core would serve as a mobile application built using React Native, but as we developed a better understanding of the structure, we saw more potential in a cross-platform website. Our team was relatively inexperienced with the technologies that were used, which meant learning had to be done in parallel with the development.

## Accomplishments that we're proud of

This hackathon allowed us to develop code in ReactJs, and we hope that our learnings can be applied to our future endeavours. Most of us were also new to hackathons, and it was really rewarding to see how much we accomplished throughout the weekend.

## What we learned

We gained a better understanding of the technologies used and learned how to develop for the fast-paced nature of hackathons.

## What's next for Core

Currently, Core uses TensorFlow to track several key points and analyzes the information with mathematical models to determine the statistical probability of the correctness of the user's form. However, there's scope for improvement by implementing a machine learning model that is trained on Big Data to yield higher performance and accuracy.
We'd also love to expand our collection of exercises to include a wider variety of possible workouts.
## Inspiration 💡

Let us start with a story. About one year ago, one of our teammates got a text message about a charitable crowdfunding campaign seeking donations that promised that all the money raised would go towards planting trees. Our teammate scrolled through their Facebook page and was impressed by their previous work greenifying areas in India. So he made a sizable donation to the campaign. However, he later learned that the pictures posted were scraped off the internet and he, along with several other people, was scammed by this fraudulent crowdfunding campaign.

Reflecting on that experience, we decided that we will only make donations to charitable campaigns if and only if they show us deliverables for the cause they support. However, **current crowdfunding platforms focus on raising money before the campaign takes actions.** By compelling campaigns to deliver on certain milestones, we can **effectively prevent fraud because donations do not take place until evidence is provided.** We were willing to donate only after certain milestones were achieved by the campaign.

*To facilitate a transparent deliverables-based transaction between donors and charitable crowdfunding campaigns, we created* **Fintruist** ✨

![TopBar.png](https://i.postimg.cc/mkNgL4mp/TopBar.png)
![prev-topbar.png](https://i.postimg.cc/6QPQpYtR/prev-topbar.png)

![break](https://res.cloudinary.com/devpost/image/fetch/s--B0JC0SQ_--/c_limit,f_auto,fl_lossy,q_auto:eco,w_900/https://ipfs.infura.io/ipfs/QmaNVVQELQk7EVBZRCWhNbdxDbMBVU5a4koeH7yBK1dojC)

## What it does 🤔

**Fintruist** is a *decentralized crowdfunding application* that uses bleeding edge-technologies to fight against Scams and Frauds in the name of Fundraising and Crowdcampaigns.

![what-it-does2.png](https://i.postimg.cc/SNVkKDGs/what-it-does2.png)

On **Fintruist**, charitable organizations can create campaigns that allow users to donate *fixed amounts*. *But donations will* **only be executed after the donors verify the deliverables** *that were promised by the organization*.

![Userflow.png](https://i.postimg.cc/wBJ0FxFG/Userflow.png)

![break](https://res.cloudinary.com/devpost/image/fetch/s--B0JC0SQ_--/c_limit,f_auto,fl_lossy,q_auto:eco,w_900/https://ipfs.infura.io/ipfs/QmaNVVQELQk7EVBZRCWhNbdxDbMBVU5a4koeH7yBK1dojC)

## How we built it 🦾

* **Frontend:** ReactJs, Tailwind CSS
* **Backend:** Solidity, Truffle, IPFS, Web3.js
* **Tools:** Auth0, Botdoc.io, Dasha, Moralis
* **Design:** Figma, Illustrator, Photoshop, After Effects

For Blockchain Network, we went ahead with ETH & Wei.
![Chain.png](https://i.postimg.cc/G2S54gpF/Chain.png)

And several other 3rd party services & testing tools & obviously GitHub as VCS.

![tech-stack-Devpost.png](https://i.postimg.cc/GtGxbXTh/tech-stack-Devpost.png)

![break](https://res.cloudinary.com/devpost/image/fetch/s--B0JC0SQ_--/c_limit,f_auto,fl_lossy,q_auto:eco,w_900/https://ipfs.infura.io/ipfs/QmaNVVQELQk7EVBZRCWhNbdxDbMBVU5a4koeH7yBK1dojC)

## Team Discord Usernames

* chief\_of\_mischief#8050
* Hogo101#3616
* Neel#0242
* EndofLeTime#6747

## Social Good 👨🏻‍🤝‍👨🏽

*We began this hackathon with a singular mission*: **To facilitate deliverables-based donations to prevent donors from falling for scams**. A government study estimates that **annually $15 million are lost** in *charitable crowdfunding campaigns*. We want to stop this money leak. Preventing the said hefty amount from being lost in these scams is $15 million more being devoted towards causes for social good.

Moreover, our long term aim is to win the trust of donors so that they feel confident to donate larger amounts and increase the total number of donors of social good in this world!

*We are a team of* **4** *driven to build technology to promote* **social good**.

![Mockup.gif](https://i.postimg.cc/PqW6tFmV/Mockup.gif)

---

## Design 🎨

Our Figma file consists of Wireframes, Mockups, and Design Documents we used to build our application.

We were heavily inspired by the revised version of **Double-Diamond** design process, which not only includes visual design, but a full-fledged research cycle in which you must discover and define your problem before tackling your solution & then finally deploy it.

![Double-Diamond-1.png](https://i.postimg.cc/B6qjjNzn/Double-Diamond-1.png)

>
> 1. **Discover**: a deep dive into the problem we are trying to solve.
> 2. **Define**: synthesizing the information from the discovery phase into a problem definition.
> 3. **Develop**: think up solutions to the problem.
> 4. **Deliver**: pick the best solution and build that.
>
>
>

This time went for the minimalist **Tailwind** inspired design. We utilized design tools like Figma, Photoshop & Illustrator to prototype our designs before doing any coding. Through this, we are able to get iterative feedback so that we spend less time re-writing code.

![figmacrop.png](https://i.postimg.cc/P5SD1gm8/figmacrop.png)
![color-palette.png](https://i.postimg.cc/J4mHvrxk/color-palette.png)

![break](https://res.cloudinary.com/devpost/image/fetch/s--B0JC0SQ_--/c_limit,f_auto,fl_lossy,q_auto:eco,w_900/https://ipfs.infura.io/ipfs/QmaNVVQELQk7EVBZRCWhNbdxDbMBVU5a4koeH7yBK1dojC)

## Research 📚

Research is the key to empathizing with users: we found our specific user group early and that paves the way for our whole project. Here are a few of the resources that were helpful to us —

* <https://bit.ly/3qXELlA>
* <https://bit.ly/3jh0IIt>
* <https://bit.ly/3u1gFbE>
* <https://bit.ly/3NIetO8>

## Best Use of Dasha AI 👂

Given that Web 3.0 is still in the infancy stage, we believe that decentralized applications need constant feedback on user experience to disrupt their Web 2.0 counterparts. To *get feedback*, we use Dasha SDK to create **a chatbot that collects feedback from donors on our platform**.

## Botdoc 🤖

The *donations in our application need to be securely logged for our donors* **so that they have a chance to review their donations later**. To send receipts securely, we use the **Botdoc API** to send a receipt to users after they approve a donation. Given the ubiquity of mobile phones, we also send a message to the user using Botdoc's messaging API with the receipt attached. **Botdoc's API has allowed us to reinforce our mission to become the safest and most secure crowdfunding platform.**

## Auth0 🔐

Auth0 was used to integrate seamless login via **SSO**, and we even use Multi-Factor Authentication to have a Secure sign-in. This is important to prevent spam, fraudulent, charitable crowdfunding campaigns from flooding our application.

## Best Domain Name from Domain.com 🌐

* `deliverables-based-donations.space`

## 🏅 Accomplishments that we're proud of

We are proud of finishing the project on time which seemed like a tough task as we had so many features to implement. Moreover, we learned a lot about AuthO, Dasha, BOTDOC.io, new web3 technologies, and libraries that we could incorporate into our project to meet our unique needs. And as always, working overnight was pretty fun! :)

## 🧠 Challenges we ran into

This project was especially an achievement for us because this time the experience was very different than what we have while building typical hackathon projects, which also includes heavy brainstorming, *extensive research*, and yes, hitting the final pin on the board.

We tried to incorporate several *Web 3.0 technologies* and this was challenging since half of the team's forte was in Web 2.0 technolgies\*.

Special thanks to — *Rafael from Botdoc* [**Rafael Juzwiak#3199**] 🤗

## What we learned 📖

**Proper sleep is very important! :p** Well, a lot of things, both summed up in technical & non-technical sides. Also not to mention, we enhanced our googling and Stackoverflow searching skill during the hackathon :)

## What's next for Finturist 🚀

*We believe that our App has great potential*. We plan to expand it's capabilities by *incorporating other languages*. Our next step is to expand the number of variables taken into account in our algorithm. Besides, creating a mobile app is also on our mind which will surely amply the count of audience base from across the globe.

**Note ⚠️ — API credentials have been revoked. If you want to run the same on your local, use your own credentials.**

![footer.png](https://i.postimg.cc/xTkBrQd9/footer.png)