The project is made by using .NET Core API as backend and ElasticSearch as NoSQL database while its frontend is made with Angular 5 and Bootstrap 3. Here, we discuss some of its features and look at a bit of the code behind configuration.
News Track is a news tracking or news aggregator website where users can share the content they find on the Internet and give to it certain visibility.
The project is made by using .NET Core API as backend and ElasticSearch as NoSQL database while its frontend is made with Angular 5 and Bootstrap 3.
- Membership control panel
- Content browser
- Search engine
- Last news
- Most popular news
- Most embarrasing news
- Related news
- Suggested news and tags
- Corporate content (terms, privacy and about us)
Membership Control Panel
Nowadays, the membership is limited to admin purposes, meaning that only the admin and contributors can post news, create new users, change current password, and dispatch the suggestion process. In the near feature, more kind of users will be added.
To set your admin settings, update your backend appsettings.json file. Once the application wakes up, it will create the user.
By using this feature, the user is able to browse a given URL and choose an image, a title and some paragraphs that represent the news. At the same time, the user can relate this content to other content that is already on the system and tag it with the most representative words. It's important to tag and relate to other existing content properly because the suggestion process algorithm uses this information in order to accomplish more accurate suggestions.
The user is able to search content by using relevant words and tags.
This feature lists the last incoming news on the system:
Most Popular News
This feature lists the most viewed news on the system. Once a user gets a certain news, the views counter gets increased.
Most Embarrasing News
This feature lists the most embarrassing news on the system. The user is able to complain about certain content. Once a user clicks the embarrasing button, the counter gets increased.
This feature lists related content.
Suggested News and Tags
As much content the system has, the better. The algorithm will search for related news and tags to match other content and get suggestions.
Built-in section with Terms, Privacy and About us. You only need to update the assets/appsettings.json file to customize your website.
"corporation": "NewsTrack Corp",
Remove the social media URLs or leave them blank in case you don't want to make them appear at the website's footer.
Update the backend appsettings.json file for the following purposes:
Set your ElastichSearch endpoint.
Set your website black list in order to warn you that the content you are about to post belongs to a certain owner.
Set your SMTP settings in order to get email warnings in case your account has been blocked, account created or account confirmed. Leaving the settings as empty, the engine will generate email files into a directory called outbox.
Set your JWT settings.
Set your public website domain (with or without path).
Set your frontend authentication URL where the user has to be redirected once he confirms his membership.
Use docker compose file which wakes up a replicaset of ElasticSearch nodes and a Kibana instance.