Update november 2019
From now on the recommended way to use harfbuzz with luatex and latex is to use a latex format based on the engine luahbtex together with the version 3.11 or newer of luaotfload which contains support for the harf mode.
The binary luahbtex has been added to texlive 2019 for the major OS. It has been connected to the lualatex-dev format. So texlive user can try it out by compiling with lualatex-dev. (see What is "latex-dev"? about what latex-dev means)
MiKTeX has luahbtex too. It has also mapped lualatex-dev to this engine. You should have both executables in the \miktex\bin folder of MiKTeX.
With the new engine and luaotfload 3.11 the example below would look like this. It is no longer needed to load special lua code. Starting with this version the script should be a script in the font (similar to the normal handling with luatex and mode=node).
\documentclass{article}
\usepackage{fontspec}
\setmainfont{notosansbengali-regular.ttf}[RawFeature={mode=harf;script=ben2;}]
\begin{document}
কণ্যা এখন কি করিবে?
\end{document}
With a current fontspec the mode and the script can be selected like this.
\documentclass{article}
\usepackage{fontspec}
\setmainfont{notosansbengali-regular.ttf}[Renderer=Harfbuzz,Script=Bengali]
\begin{document}
কণ্যা এখন কি করিবে?
\end{document}
======================================
Old version (Installation of harftex)
First step
As you are on windows, get binaries from http://w32tex.org/. If you follow the link ctan you will find a link to harftex-w32.tar.xz.
Unpack it and copy harftex.dll, perhaps icudt64.dll, harflatex.exe and harftex.exe to your texlive/<year>/bin/win32 folder.
Create in texmf-local/web2c a fmtutil.cnf with this content
harflatex harftex language.dat,language.dat.lua lualatex.ini
harftex harftex language.def,language.dat.lua luatex.ini
Then create a texmf.cnf in the same directory with this content
TEXINPUTS.harftex = $TEXMFDOTDIR;$TEXMF/tex/{harftex,luatex,plain,generic,}//
TEXINPUTS.harflatex = $TEXMFDOTDIR;$TEXMF/tex/{harflatex,lualatex,latex,luatex,generic,}//
LUAINPUTS.harflatex = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{harflatex,lualatex,latex,luatex,generic,}//
Then run in command line
mktexlsr
fmtutil-sys --byengine=harftex
You can then try if harflatex works by running a small document with
harflatex test-document
You will see no real difference to using lualatex here. To make use of the additional feature of harflatex more files are needed, but this is then the second step.
Second step
get from https://github.com/khaledhosny/harf/tree/master/src all luafiles and the harfload.sty file. Put them e.g. in texmf-local/tex/latex/harf. Run mktexlsr.
Then test e.g. with this document (I used the noto-font as I don't have yours). The important part is (beside loading the harfload-package) the mode=harf in the font definitions. Fonts with this settings will use harfbuzz in the background. Don't use it for fonts that should use the "normal" lualatex fontloader.
\documentclass{article}
\usepackage{harfload}
\usepackage{fontspec}
\setmainfont{notosansbengali-regular.ttf}[RawFeature={mode=harf}]
\begin{document}
কণ্যা এখন কি করিবে? \
\end{document}
output with harflatex

output with lualatex for comparision:

\font\test={file:notosansbengali-regular.ttf:mode=harf;}\testjust before your banga. – Ulrike Fischer May 29 '19 at 16:44\setmainfont...part, doesn't work! – May 29 '19 at 17:02lualatexwitharabluatexpackage, I've linked my previous question, where I'd used those, in this post. – May 29 '19 at 17:20tlmgralready takes care of the format generation, so everything should be ready to go. – norbert May 30 '19 at 12:54harftexbin to texlive'sbin/win32! – May 30 '19 at 14:52fonttext.cfgin the texmf tree (one from LaTeX kernel and one from CSLaTeX), without the proper kpse search path set HarfTeX finds the forms which misses the TU encoding definition. – خالد حسني May 31 '19 at 15:40luaotfloadseems to work on MikTeX, but I still get bad vowel positioning (despite no error messages). – Kazi bácsi Dec 04 '19 at 19:59lualatex-devrefers only to TeXLive users. Despite all my respect for this huge development effort, I suppose average users are not informed well. Here I should have only replacedlualatex.exewith thelualatex-dev.exe, yet I can't find anywhere a proper documentation, where it is written down in a comprehensible way. – Kazi bácsi Dec 07 '19 at 20:04