I have a machine, I have a hosting with FTP. On my venture I found out about lftp.
And the instructions are here: http://www.dangibbs.co.uk/journal/ftp-sync-usin-linux

Snippet is this:

open ftp://username:password@website.com
mirror -v --only-newer /home/local/path/ /website.com/public_html/

Do these things still work? Also, how do I loop it? I don't want to spam my computer with looping query, and execute 200000 mirrors in a second, when I'll update in 5 next seconds. Is there a way to make it automatic, so that I can leave it in background and let it go, I just want to update my files and have program update it on the FTP server.

Heh.. you want to build a personal one drive? That's kinda neat.. I might try and figure that out, too...

I suggest a bash script

while true; do 
    lftp -f /path/to/lftp-script
    sleep 300

lftp is a very good way to sync a local folder with an FTP folder.

No. I just want to upload project that I'm working on (HTML, CSS, JS etc.) to my FTP client. But I guess OneDrive would be nice application too.

To me this sounds like the old ftp and rsync discussion ( https://www.google.com/search?q=is+rsync+better+than+ftp+mirror&ie=utf-8&oe=utf-8 ) so I'd pick over that. You would have to benchmark the byte count of each system to see which has the lower overhead.

I like the banter at https://ask.slashdot.org/story/03/02/13/2132221/ftp-better-than-http-or-obsolete

At the end of the day your choice on how much overhead as you up your sync rate. At the office we settled for daily syncs. During the day we could always issue a command to "do it now."