The giant then reached out the hands in haste Whose mighty grip was felt by Hercules And took my guide. Feeling himself embraced, Virgil looked down and said: "Come closer, please: It's your turn." Inferno, Canto 31
Antaeus is a node webserver that wraps the IPFS daemon. It allows you to define a mapping from a hostname to an IPFS address, so that you can serve a website from IPFS on a root domain name.
Antaeus requires the ipfs client and daemon to be installed and running. It is packaged as an npm module:
$ npm install -g antaeusThis will install a command line program antaeus that can be used to start the webserver:
$ antaeus start --port 8080 --dnsConfig dnsMapping.jsonThe dns mapping file is a json map from hostnames to ipfs addresses:
{
"www.example.com": "/ipfs/QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u"
}Once started, you will need to modify your hosts file to test the mapping in the browser.
You can test with curl more directly by setting the appropriate hostname:
$ curl -H 'Host: www.example.com' localhost:8080 # Hello WorldThe dns mapping file can be loaded from ipfs itself. The dnsConfig option accepts an ipfs address:
$ ipfs add dnsMapping.json
added QmeUrP9wiBxBv9GA7D22F8n5gNok4uMmBeZWkarmAwBJHD dnsMapping.json
$ antaeus start --port 8080 --dnsConfig QmeUrP9wiBxBv9GA7D22F8n5gNok4uMmBeZWkarmAwBJHDThe main entry point is src/index.js, so to start the server for development run:
$ nodemon src/index test/exampleDNSConfig.jsonTo run the tests:
$ npm testTo lint the code:
$ npm run lintTo get the test coverage:
$ npm run coverageMIT