{"version":"https://jsonfeed.org/version/1","title":"Micro.blog - Mateus Rodrigues de Morais","home_page_url":"https://micro.blog","feed_url":"https://micro.blog/posts/mateusmorais","_microblog":{"about":"https://micro.blog/about/api","id":"1725926","username":"mateusmorais","bio":"Maintainer of the .NET toolchain on Ubuntu. I’ve been in .NET for 10 years, from IoT to large-scale web apps. I enjoy writing code, reading, watching good movies, and making music.","pronouns":"he/him","is_following":false,"is_you":false,"following_count":2,"discover_count":0},"author":{"name":"Mateus Rodrigues de Morais","url":"https://mateusmorais.micro.blog/","avatar":"https://www.gravatar.com/avatar/648c777609f44c094a7b4f4e7a3e8720?s=96&d=https%3A%2F%2Fmicro.blog%2Fimages%2Fblank_avatar.png"},"items":[{"id":"61577787","content_html":"<p>OpenCV Series #3: Working with Histograms: <a href=\"https://mateusmorais.micro.blog/2020/10/26/opencv-series-working-with-histograms.html\">mateusmorais.micro.blog</a></p>","summary":"Histograms play a crucial role in digital image processing, particularly for tasks like histogram equalization and motion detection, utilizing tools such as OpenCV for enhanced image analysis.","url":"https://mateusmorais.micro.blog/2020/10/26/opencv-series-working-with-histograms.html","date_published":"2020-10-27T01:18:04+00:00","author":{"name":"Mateus Rodrigues de Morais","url":"https://mateusmorais.micro.blog/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2F648c777609f44c094a7b4f4e7a3e8720%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"mateusmorais"}},"_microblog":{"date_relative":"2020-10-27 01:18","date_timestamp":1603761484,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":[]}},{"id":"61577788","content_html":"<p>OpenCV Series #2: Labeling Image Features: <a href=\"https://mateusmorais.micro.blog/2020/10/22/opencv-series-labeling-image-features.html\">mateusmorais.micro.blog</a></p>","summary":"","url":"https://mateusmorais.micro.blog/2020/10/22/opencv-series-labeling-image-features.html","date_published":"2020-10-22T13:53:24+00:00","author":{"name":"Mateus Rodrigues de Morais","url":"https://mateusmorais.micro.blog/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2F648c777609f44c094a7b4f4e7a3e8720%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"mateusmorais"}},"_microblog":{"date_relative":"2020-10-22 13:53","date_timestamp":1603374804,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":[]}},{"id":"61577789","content_html":"<p>OpenCV Series #1: Pixel Manipulation: <a href=\"https://mateusmorais.micro.blog/2020/03/17/opencv-series-pixel-manipulation.html\">mateusmorais.micro.blog</a></p>","summary":"","url":"https://mateusmorais.micro.blog/2020/03/17/opencv-series-pixel-manipulation.html","date_published":"2020-03-17T18:05:41+00:00","author":{"name":"Mateus Rodrigues de Morais","url":"https://mateusmorais.micro.blog/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2F648c777609f44c094a7b4f4e7a3e8720%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"mateusmorais"}},"_microblog":{"date_relative":"2020-03-17 18:05","date_timestamp":1584468341,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":[]}},{"id":"61577790","content_html":"<p>Deploy to Azure Web App from a Linux build agent <img src=\"https://micro.blog/photos/50/https://mateusmorais.micro.blog/uploads/2025/d7117047d3.jpg\" width=\"20\" height=\"20\" class=\"mini_thumbnail\" alt=\"Directions to where the Get publish profile button is\"><img src=\"https://micro.blog/photos/50/https://mateusmorais.micro.blog/uploads/2025/9164b50689.jpg\" width=\"20\" height=\"20\" class=\"mini_thumbnail\" alt=\"The asp.net core website successfully loaded\"> : <a href=\"https://mateusmorais.micro.blog/2018/03/09/deploy-to-azure-web-app.html\">mateusmorais.micro.blog</a></p>","summary":"Deploying an ASP.NET Core web project to an Azure Web App using a Linux build agent involves zipping the build artifact and utilizing the Kudu REST API for deployment. See how that can be done.","url":"https://mateusmorais.micro.blog/2018/03/09/deploy-to-azure-web-app.html","date_published":"2018-03-09T16:24:29+00:00","author":{"name":"Mateus Rodrigues de Morais","url":"https://mateusmorais.micro.blog/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2F648c777609f44c094a7b4f4e7a3e8720%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"mateusmorais"}},"_microblog":{"date_relative":"2018-03-09 16:24","date_timestamp":1520612669,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":[]}},{"id":"61577791","content_html":"<p>How I built my own Dropbox-like server using NextCloud <img src=\"https://micro.blog/photos/50/https://mateusmorais.micro.blog/uploads/2025/ca7f221f4e.jpg\" width=\"20\" height=\"20\" class=\"mini_thumbnail\" alt=\"\"> : <a href=\"https://mateusmorais.micro.blog/2018/02/15/how-i-built-my-own.html\">mateusmorais.micro.blog</a></p>","summary":"A quick virtual machine, some tweaks, SSL for security, and boom—personal cloud, no fees, full control. Just like Dropbox, but DIY style.","url":"https://mateusmorais.micro.blog/2018/02/15/how-i-built-my-own.html","date_published":"2018-02-16T01:56:08+00:00","author":{"name":"Mateus Rodrigues de Morais","url":"https://mateusmorais.micro.blog/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2F648c777609f44c094a7b4f4e7a3e8720%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"mateusmorais"}},"_microblog":{"date_relative":"2018-02-16 01:56","date_timestamp":1518746168,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":[]}},{"id":"61577792","content_html":"<p>Multiplatform IntelliSense with OmniSharp + Atom <img src=\"https://micro.blog/photos/50/https://mateusmorais.micro.blog/uploads/2025/9a46ac1ce9.jpg\" width=\"20\" height=\"20\" class=\"mini_thumbnail\" alt=\"\"><img src=\"https://micro.blog/photos/50/https://mateusmorais.micro.blog/uploads/2025/18cae84944.jpg\" width=\"20\" height=\"20\" class=\"mini_thumbnail\" alt=\"\"><img src=\"https://micro.blog/photos/50/https://mateusmorais.micro.blog/uploads/2025/36cbe0f0b6.jpg\" width=\"20\" height=\"20\" class=\"mini_thumbnail\" alt=\"\"> : <a href=\"https://mateusmorais.micro.blog/2018/02/15/multiplatform-intellisense-with-omnisharp-atom.html\">mateusmorais.micro.blog</a></p>","summary":"","url":"https://mateusmorais.micro.blog/2018/02/15/multiplatform-intellisense-with-omnisharp-atom.html","date_published":"2018-02-16T01:42:13+00:00","author":{"name":"Mateus Rodrigues de Morais","url":"https://mateusmorais.micro.blog/","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2F648c777609f44c094a7b4f4e7a3e8720%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"mateusmorais"}},"_microblog":{"date_relative":"2018-02-16 01:42","date_timestamp":1518745333,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"note":"","syndication":[]}}]}