Fermat-ORG / fermat-framework

This is the Fermat Framework described on the first Fermat whitepaper. The Java Framework, Android Framework, Linux Framework, and all platforms are here. This project is currently paused until we put the network infraestructure in place. Later this work will be resumed to put this client-side infraestructure to work with the new set of networks.
https://drive.google.com/file/d/0B02V15ufCwR3UDNER3l2WGVmcE0/view
Other
2 stars 2 forks source link

alt text

Fermat

A Decentralized, Collaborative, Blockchain-Enabled, Modular App Platform To Unleash the P2P “Internet of People” Economy

Welcome to Fermat!

In the last 20 years virtually everything went digital: pictures, music, videos, mails, etc. Nevertheless we still have cash as paper money.

Why isn't cash money digital yet?

The reason is that digital information can be cloned, and if digital cash could be cloned it would render it useless. When bitcoin was invented it brought with it the solution to the last barrier preventing money from going digital: the solution to the double spend problem.

We firmly believe that the next decade will witness governments issuing digital currency based on blockchain technology. We expect paper money is going to disappear within the next 5 to 10 years. Thus a strong consumer demand for digital wallets will inevitably emerge.

Wallets that will evolve into sophisticated financial applications to serve the diverse needs of the world's population. To faciliate this Fermat provides APPs with the ability to easily handle digital cash and digital assets.

The Master Plan

Fermat is a master plan to avoid getting into that future by waiting for independent entrepreneurs to build each of these APPSs one at the time and from scratch, repeating every time all the math, accounting, cryptography and algorithms that are common to all these APPs. Fermat handles all that and by doing the heavy lifting enables any developer in the world to easily create white label blockchain-enabled APPs on top of its shared infrastructure.

Fermat offers a new approach, allowing us to achieve large-scale and systematic cooperation in an entirely distributed and decentralized manner. Our goal is to move from competition to collaboration by creating the infraestructure needed to decentralize not only software development, but also analysis and design, and adding new layers on top, also to enable a true P2P economy where third parties are optional. This will evolve the actual web of servers into an Internet of People.

The System

The Fermat System has three major architectural pillars:

  1. The P2P Network: a peer-to-peer infrastructure that allows data flows between Fermat apps without going through central servers
  2. The Component Framework: the technology that runs the collection of reusable atomic components that can be added to or drawn upon for use in Fermat-powered applications (apps)
  3. The Ecosystem of Fermat Apps: where end users interact with each other. Fermat apps are white label P2P apps that allow customization, and are made up of dozens of components.

The Network

The Fermat system runs on end users devices, wherever it is needed: phones, tablets, laptops, PCs and even web servers. One of the design requirements was to create a censorship resistant system. Since these devices need to communicate with each other in order to exchange information, the need arose for a reliable, compatible p2p network to enable this communication without going through third parties. If device-to-device communications were to go through centralized service providers, then the system would not be secure and autonomous. This system requires specialized nodes.

Fermats handles p2p transactions in an unique way, splitting the transport of information from the transport of value. In every transaction Fermat features a peer-to-peer network for transporting metadata and interconnect network clients between each other. Existing cryptocurrency networks are used by Fermat to transport the value component.

On top of that network a synchronization scheme transforms a standalone app into a distributed application across several devices still owned by the same user.

alt text

The Framework

Fermat’s Framework sits on top of the device’s OS and extends it in order to support Fermat apps, which run on top of the Framework. Each of these apps are in fact a set of interconnected, reusable atomic components, one or more being the user interface. The Fermat system is downloaded as a whole, but each Fermat App is activated when the end user performs the usual act of "installing" them. What happens really is that underneath the skin are a set of app components interacting with each other – a few may have been built for specific Fermat apps, while the rest are part of a pool of reusable components, and coordinated they offer the desired functionality. The pool of reusable components expands each time a new Fermat app is added to the system.

alt text

Fermat Goals

Open Source

The challenge is truly colossal, but we know that the difference between the possible and impossible lies in a team's determination. We have the will to transcend and to spread our vision for this world.

We have the talent, motivation and determination required to create the next generation of financial applications. These will allow people to manage their own digital wallets in a secure way enabling them to interact using their funds in a wide array of transactions and business oriented opportunities across the globe.

We believe the open source community collectively has more influence than any of us individually. Therefore for us it is important to acknowledge and revere services where others invested their time and efforts in order to build. We believe in decentralization.

Developer Network

We are asking each of you to help lead the way. Because we’re already connected with you as we are also developers and designers, and we want to build our relationship with you into a network of developers across the world to share new ideas and forge new collaborations. Working together, we can build the tools and technology that people need to become financially independent, have access from any country to financial products and be safe of nasty third parties spying on them or trying to tell them what they can and can not do with their money. We believe in true financial freedom.

We want to hear from you on how we can build this network. We are already dozens of developers / designers / academics / entrepreneurs collaborating full and part time on Fermat, and every day a new members coming on board. To learn more about how to join, just read the how-to-participate-guide. We hope at every single one of you will join us. Because Fermat and the world need you. We need your skills, imagination and optimism. And with this new network, we're sure we can be partners for decades to come.

We believe in people with passion who are crazy enough to think they can change the world. With a lot of hard work, we believe we can accomplish this.

We won't stop until we do it.


The Challenge

While designing Fermat we tried to find the answer to the following questions:

The answers to each of these questions are addressed within Fermat.


What is Fermat?

Fermat is a system where we experiment on what needs to be done for the masses to adopt crypto currencies. As it is very easy to develop mobile APPs on Fermat, entrepreneurs can use it to easily test their business models.

Technically Fermat is an open-source P2P system built on a Plug-in architecture that handles a stack of platforms and runs on multiple OS including Android, Linux, iOS, OSX and Windows.

What makes Fermat different from other wallet systems or services?

Fermat is moving towards version 1, but we're not stopping there. We have many feature ideas on our white paper that we're anxious to add. So take Fermat out for a spin and let us know how we can make it your favorite platform to launch your own digital wallet or financial APP.

You can learn more about the project and see the latest information at the official site Fermat.org.

alt text


Fermat's Purpose


Fermat's Mission


Fermat Principles

1. Fermat must not allow censorship.
2. Fermat must not allow spying on their user base.
3. Fermat must be secure and resistant to all kind of attacks.
4. Fermat must never loose a user's funds.
5. Fermat must be useful to each segment of the world population.
6. Fermat must be extensible and open to innovation.
7. Fermat must be open and inclusive.
8. Each developer must be compensated for their contribution to Fermat.
9. Fermat user base must be a shared asset.
10. Fermat must be inclusive with crypto currency industry members.
11. Fermat must be inclusive with the current financial system.
12. Fermat must be unbanked-people friendly.
13. Fermat must be OS agnostic.
14. Fermat must learn from its user base.
15. Fermat must be the financially most efficient way to move or spend the end user's money.
16. Fermat must facilitate the regional distribution and access to crypto currencies.


How to Install and Run Fermat

Download

Installers for the latest version of Android can be downloaded here. Mac, Windows and Linux (Debian/Ubuntu) will be supported in the near future.

Installation

In addition to the core features built into Fermat, there is a growing community of developers building Plug-ins and Niche Wallets that add all sorts of useful functionality.

For instructions on how to install and run the source code, see the Installation Guide.

Need Help?

Having problems compiling or running Fermat the first time, or not sure how to use Fermat? Please contact any of our developers teams at Dev Teams

Learn More?

Take a look at the Fermat Book that it is being written in order to help developers learn more about Fermat technology.

Project status

As of March 2016 the project status is the following:

Code state : Under development for 10 months. No releases yet. Alpha version available at [fermat.org]. Fermat Dev Teams is a network of developers teams actively working on the project. Dev Teams

Future path of development : Active (First release with very limited features scheduled for April 2016).


I Want to Join the Team!

Awesome!

There are lots of ways you can help.

Developers

If you are a developer and want to contribute either from a bug-fix up to building a whole financial APP on top of Fermat, please read the Contributing Guide, then learn how to pull the repo and hack on Fermat. Or you can also find us on Facebook.

Others

You don't need to be a developer to participate on the project. There are many ways to do it and we explain each one of them at the How to Participate Guide.

alt text