Before describe the job, We want describe some issues:
1- We looking for a freelancer that want receive jobs continuously.
2- The freelancer MUST use structure already existing in our system. So MUST use the config files, folder structure and modules.
3- Freelancer MUST use the standard of indentation (4 spaces), use beautify module, camel standard to functions and variables. Like: thisIsAFunction()
4- All functions and variables MUST be in English.
5- If freelancer believes has a better module or structure, can suggest for us, but can use ONLY if approved.
6- Use the fastest method. So if our team found a slow code, we will request to change. For example: For (var i=0 is 30% faster than For each, so if we found the second, freelancer will be requested to change.
If you are ok with this, so read what the job needs:
A simple middleware for express and koaJS.
1- Will have 2 JSONs files. One with blocked IPs and the second with a list of urls.
2- When express/koa receive the request this middle will check IP list, if found, so reject access and stop express sequence.
3- If not found, middleware will check url list. If found, will reject and will add this IP in memory to block for 1 hour.
4- If not found in both list, so, pass to next middleware.
5- MUST run in Linux, macOS and Windows.