<commit_before># .Net Core Image Server

[![GitHub Actions](https://github.com/cemusta/ImageServer.Core/workflows/build/badge.svg)](https://github.com/cemusta/ImageServer.Core/actions) [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/cemusta/ImageServer.Core/master/LICENSE)

This project is made for replacing python tornado image proxy server project internally used in [Hurriyet](http://www.hurriyet.com.tr). Written on .net core 3.0 with async i/o. Uses magick.net (imagemagick for .net) library for image operations. Tested in Linux and Windows.

Can read files from Mongo GridFS, File System or web url (can support multiple image sources simultaniously). Logs errors to console and Elastic stack (ELK) using NLog.

## Getting Started

Setting up the project is pretty straight thru. There is no external configuration necessary except the host setup. See deployment for notes on how to deploy the project on a live system.

When started as self hosted, project starts listening on ports 5000 and 5001.

At least one host configuration should be defined appsettings.json or webserver will not answer image or file endpoints.

## Configuration
<commit_msg>Updated Readme.md to include quality report<commit_after># .Net Core Image Server

[![GitHub Actions](https://github.com/cemusta/ImageServer.Core/workflows/build/badge.svg)](https://github.com/cemusta/ImageServer.Core/actions) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=cemusta_ImageServer.Core&metric=alert_status)](https://sonarcloud.io/dashboard?id=cemusta_ImageServer.Core) [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/cemusta/ImageServer.Core/master/LICENSE)

This project is made for replacing python tornado image proxy server project internally used in [Hurriyet](http://www.hurriyet.com.tr). Written on .net core 3.0 with async i/o. Uses magick.net (imagemagick for .net) library for image operations. Tested in Linux and Windows.

Can read files from Mongo GridFS, File System or web url (can support multiple image sources simultaniously). Logs errors to console and Elastic stack (ELK) using NLog.

## Getting Started

Setting up the project is pretty straight thru. There is no external configuration necessary except the host setup. See deployment for notes on how to deploy the project on a live system.

When started as self hosted, project starts listening on ports 5000 and 5001.

At least one host configuration should be defined appsettings.json or webserver will not answer image or file endpoints.

## Configuration

{'fraction_non_alphanumeric': 0.08744817188088956, 'fraction_numerical': 0.007538635506973238, 'mean_word_length': 5.059360730593608, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 10, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '997758', 'n_tokens_mistral': 764, 'n_tokens_neox': 716, 'n_words': 288}