[DEV] add a complete file reader