Converting .msg to PDF using Python on Windows

Converting .msg to PDF using Python on Windows

I recently needed to convert a bunch of .msg files to PDF. I didn’t want to install any additional 3rd party software other than the Python libraries I needed. As the code would run on Windows servers, I though I’d utilize the excellen win32com Python package, and use only native Windows applications for performing the actual converting. I didn’t find a way to convert .msg to PDF in one, so I solved it by first using Outlook to convert the…

Read More Read More

Running Flask CLI and API

Running Flask CLI and API

Note to self: Here’s a super simple starting point for setting up a Flask application that supports both API and CLI interaction. To run it, run this command: To “map” the CLI to a custom app name, add a setup.py file with contents like this: Restart the Flask app. Now, uses can interact with the CLI like this:

Plotly without Dash

Plotly without Dash

While Plotly’s Dash looks like a great project for getting data visualization dashboards up and running quickly, it may not always be the best option, especially for dashboards that over time evolve into complex apps. So I’ve been looking into harnessing the power of Plotly’s excellent graphing tools, while running technologies that can grow with the app. This post will be somewhat of a note-to-self, to keep track of the viable options for utilizing Plotly on standard technology stacks. Flask…

Read More Read More

React breadcrumbs

React breadcrumbs

I recently needed a simple breadcrumbs implementation in a React app, and thought I’d use https://github.com/NiklasMencke/nextjs-breadcrumbs‘s source code as a starting point for my own implementation. I thought I’d share the source code here in case anyone might benefit from it,. But first, at little context. In the app’s URL, we might see something like this: http://<url>/stores/3/products/58. Note that the numbers are database ID’s for the stores and products. For my breadcrumbs, I wanted the names instead if database ID’s,…

Read More Read More

Sharepoint: List ‘Site Pages’ does not exist at site

Sharepoint: List ‘Site Pages’ does not exist at site

I recently got this error from Sharepoint Online, when trying to fetch a site’s list using https://pnp.github.io/pnpjs/: The code resulting in the error was this: After spending (too much) time troubleshooting this, it turned out to be a language settings mismatch: The site I was connect to was set up with Norwegian as the default language, which means that the list isn’t called “Site Pages” but rather “Områdesider”. So apparently, when fetching lists from sites you must account for site’s…

Read More Read More

Sharepoint Online: Custom web part that display news only from followed sites

Sharepoint Online: Custom web part that display news only from followed sites

At work we rolling out our new Intranet based on Sharepoint Online. While the news web part shipped with the platform works pretty well, we found that we had some requirements that combined didn’t make is a good fit: All news should be available to logged in user News are aggregated from intranet related sites the users follow Users can not opt out from receiving news from their own department With these requirements in mind, we decided to implement our…

Read More Read More

Next.js: Cannot read property of undefined

Next.js: Cannot read property of undefined

I had a bug in my Next.js app, in which the props passed to my component unexpectedly was undefined. Duckduckgo’ing the issue didn’t result in any resolution, as my particular mistake was a self introduced bug. Just in case others makes the same mistake as I did, here’s a quick write-up. Consider this /pages/blog.tsx file: When executing the above code, I got this type of error message: “TypeError: Cannot read property ‘posts’ of undefined“. Many Next.js developers may have spotted…

Read More Read More

SharePoint Online hub sites namespace and structure

SharePoint Online hub sites namespace and structure

For my company’s upcoming intranet based on SharePoint Online (SPO), we’ve looked into ways to organize our sites. As I haven’t found much online information on the subject, I though I’d share a couple of points here. Namespacing First, let’s discuss namespacing. We’ve had SPO around for a long time, long before we got around to manage it properly, so we have numerous sites with vastly different URLs and contents. As our intranet will consist of just a subset of…

Read More Read More