explaingit

icutool/microsoftemailmanage

Analysis updated 2026-05-18

24JavaScriptAudience · ops devopsComplexity · 3/5Setup · moderate

TLDR

A self-hosted FastAPI dashboard for bulk-importing, tagging, and monitoring many Hotmail and Outlook mailboxes, with automatic daily OAuth token refresh.

Mindmap

mindmap
  root((mail manager))
    What it does
      Bulk mailbox import
      Tagging and notes
      Inbox and spam view
      Daily token refresh
    Tech stack
      FastAPI
      SQLite
      SQLAlchemy
      Jinja2
    Use cases
      Multi-account management
      OAuth token maintenance
      Internal team tooling
    Security
      Single admin password
      Local or trusted network only

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Bulk import a large batch of Hotmail or Outlook accounts and organize them with tags and notes.

USE CASE 2

Automatically refresh OAuth access tokens for many mailboxes every day without manual intervention.

USE CASE 3

View inbox and spam folder contents across accounts from one internal dashboard.

What is it built with?

PythonFastAPISQLiteSQLAlchemyJinja2

How does it compare?

icutool/microsoftemailmanageaaaddress1/vibe-readingamirhosseinjpl/jpl-sub-processor
Stars242424
LanguageJavaScriptJavaScriptJavaScript
Setup difficultymoderatemoderatemoderate
Complexity3/52/53/5
Audienceops devopsresearcherops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Python dependencies and OAuth client_id/refresh_token values for each account being imported.

No license information was found in the README.

In plain English

This project is a self-hosted management dashboard for handling many Hotmail and Outlook email accounts at once. Instead of logging into each mailbox one at a time, you run this tool on your own computer or server and manage every account from a single web page. It is aimed at people or small teams who need to keep track of a large number of email accounts, rather than at building a full email client. The main features are bulk importing accounts by pasting a list where each line contains the email address, password, client ID, and refresh token, tagging accounts with labels so they can be filtered by purpose or status, adding free text notes to each account for extra context, and viewing inbox and spam folder contents directly from the dashboard. A built in scheduler automatically refreshes each account's OAuth access token every day at 3 AM server time, which keeps the accounts connected to Microsoft's mail servers without manual work. Every refresh run is logged with success and failure counts, error details, and how long it took, and older refresh tokens are kept in a history table so changes can be traced later. The technology stack is Python based: FastAPI serves the backend API, Jinja2 renders the HTML pages, SQLite stores everything in one local file so no separate database server is needed, and IMAP with XOAUTH2 is used to talk to the mail servers. The dashboard is protected by a single admin password set through an environment variable, with a default password if none is set. The README states plainly that this login setup is lightweight and meant for local, trusted, or internal network use, not public internet exposure. Getting started requires installing Python dependencies and running one command.

Copy-paste prompts

Prompt 1
How do I set up MicroSoftEmailManage locally with FastAPI and SQLite to manage a batch of Hotmail accounts?
Prompt 2
Explain the bulk import format this tool expects for email, password, client_id, and refresh_token.
Prompt 3
How does the daily OAuth token refresh scheduler work and how do I change the 3 AM run time?
Prompt 4
What changes would make this dashboard safe to expose beyond a local or trusted network?

Frequently asked questions

What is microsoftemailmanage?

A self-hosted FastAPI dashboard for bulk-importing, tagging, and monitoring many Hotmail and Outlook mailboxes, with automatic daily OAuth token refresh.

What language is microsoftemailmanage written in?

Mainly JavaScript. The stack also includes Python, FastAPI, SQLite.

What license does microsoftemailmanage use?

No license information was found in the README.

How hard is microsoftemailmanage to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is microsoftemailmanage for?

Mainly ops devops.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.