[Ndn-interest] [EXT] Tips for getting started?
Junxiao Shi
shijunxiao at email.arizona.edu
Sun May 10 08:48:27 PDT 2020
Hi Erno
NDNts <https://yoursunny.com/p/NDNts/> (JavaScript and TypeScript) and
python-ndn <https://python-ndn.readthedocs.io/> (Python 3) are two modern
and up-to-date libraries.
The three libraries mentioned in Philipp's message are either missing
important features, or no longer maintained.
A quick start of sending a few packets locally, using NDNts in JavaScript:
1. You need to install NFD locally. It's best to install from binary
packages, not source code. On Ubuntu 18.04 execute the following commands:
sudo add-apt-repository ppa:named-data/ppa
sudo apt install --no-install-recommends nfd
2. Install Node.js 14.x. It's best to install with NVM
<https://github.com/nvm-sh/nvm>. On Ubuntu 18.04 execute the following
commands:
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh
| bash
nvm use 14
In case NVM installation doesn't work, you may also use NodeSource
packages <https://github.com/nodesource/distributions#deb>.
3. Download the three files in the attachment, and save them into an
empty directory.
4. cd to that directory, and execute:
npm install
5. In the first console window, run the producer:
NDNTS_NFDREG=1 node ./producer.mjs
6. In the second console window, run the consumer:
node ./consumer.mjs
To develop applications with NDNts, you can start looking at @ndn/endpoint
<https://github.com/yoursunny/NDNts/tree/master/packages/endpoint> package.
Note that NDNts doesn't often publish to NPM, so that you should use
the nightly
packages <https://ndnts-nightly.netlify.app> as shown in the demo.
Yours, Junxiao
On Sun, May 10, 2020 at 5:56 AM Philipp Moll <philipp.moll at itec.aau.at>
wrote:
>
> Based on my own experiences, I would recommend to start with creating a
> simple application. Something like a producer that provides files in a
> local directory to consumers. This way, you learn how the NDN protocol
> primitives work and you'll see NDN in a small application in action. NDN
> libraries providing API's for client applications are available for various
> programming languages. A few examples:
>
> - C++: https://github.com/named-data/ndn-cxx
> - Python: https://github.com/named-data/PyNDN2
> - Java: https://github.com/named-data/jndn
>
> All the libraries on GitHub include small examples showing how to use the
> libraries. I think APIs for more languages are available and can be found
> on the named-data GitHub page (https://github.com/named-data).
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndn-interest/attachments/20200510/4dd27aa3/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: package.json
Type: application/json
Size: 382 bytes
Desc: not available
URL: <http://www.lists.cs.ucla.edu/pipermail/ndn-interest/attachments/20200510/4dd27aa3/attachment.json>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: consumer.mjs
Type: application/x-javascript
Size: 799 bytes
Desc: not available
URL: <http://www.lists.cs.ucla.edu/pipermail/ndn-interest/attachments/20200510/4dd27aa3/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: producer.mjs
Type: application/x-javascript
Size: 685 bytes
Desc: not available
URL: <http://www.lists.cs.ucla.edu/pipermail/ndn-interest/attachments/20200510/4dd27aa3/attachment-0001.bin>
More information about the Ndn-interest
mailing list