# How could you recreate server-side logic with IPFS?

**URL:** <https://discuss.ipfs.tech/t/how-could-you-recreate-server-side-logic-with-ipfs/5123>\
**Category:** Help\
**Created:** [March 30, 2019, 8:17pm UTC](https://discuss.ipfs.tech/t/how-could-you-recreate-server-side-logic-with-ipfs/5123 "2019-03-30T20:17:43Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![JacopoStanchi](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ipfs.tech/jacopostanchi/32/2938_2.png) [@JacopoStanchi](https://discuss.ipfs.tech/u/JacopoStanchi)\
**Post date:** [March 30, 2019, 8:17pm UTC](https://discuss.ipfs.tech/t/how-could-you-recreate-server-side-logic-with-ipfs/5123/1 "2019-03-30T20:17:43Z")

</div>

IPFS is a very exciting technology, but I fail to see how it could completely replace HTTP.

How could you make REST APIs with IPFS for instance? You’d have to generate a content ID (CID) of something dynamic. Every time a webapp requires a server-side logic like for templating or a centralized database, HTTP is still necessary, unless every peer on the network runs the webserver and has exactly the same database (which would be a very big security breach, let alone the fact that no one would want to host your webserver on their computer).

I agree that if all your website is static HTML pages, images or videos, it could very well be served with IPFS though.

Thank you for your help.

---

<div class="post-metadata">

**Author:** ![stebalien](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ipfs.tech/stebalien/32/156_2.png) [@stebalien](https://discuss.ipfs.tech/u/stebalien)\
**Post date:** [April 1, 2019, 9:58am UTC](https://discuss.ipfs.tech/t/how-could-you-recreate-server-side-logic-with-ipfs/5123/2 "2019-04-01T09:58:26Z")

</div>

Building web-apps out of _only_ IPFS will requires a new web architecture. This new architecture is usually called “dweb” (decentralized web). In short, the answer is “don’t”. That is, don’t have a centralized database, don’t have REST APIs, etc.

Unfortunately, this is a rather _large_ and complicated topic but I encourage you to look at, e.g., the [W3C’s Solid](https://solid.mit.edu/) to get a better understanding of how systems like this could work.
