MCPcopy Index your code
hub / github.com/maillab/cloud-mail

github.com/maillab/cloud-mail @v3.0.0 sqlite

repository ↗ · DeepWiki ↗ · release v3.0.0 ↗
5,274 symbols 23,863 edges 226 files 1 documented · 0%
README
<img src="https://github.com/maillab/cloud-mail/raw/v3.0.0/doc/demo/logo.png" width="80px" />
<h1 align="center">Cloud Mail</h1>

A simple, responsive email service designed to run on Cloudflare Workers 🎉

   <a href="https://github.com/maillab/cloud-mail/raw/v3.0.0/README.md" style="margin-left: 5px">简体中文</a> | English






    <a href="https://github.com/maillab/cloud-mail/tree/main?tab=MIT-1-ov-file" target="_blank" >
        <img src="https://img.shields.io/badge/license-MIT-green" />
    </a>    
    <a href="https://github.com/maillab/cloud-mail/releases" target="_blank" >
        <img src="https://img.shields.io/github/v/release/maillab/cloud-mail" alt="releases" />
    </a>  
    <a href="https://github.com/maillab/cloud-mail/issues" >
        <img src="https://img.shields.io/github/issues/maillab/cloud-mail" alt="issues" />
    </a>  
    <a href="https://github.com/maillab/cloud-mail/stargazers" target="_blank">
        <img src="https://img.shields.io/github/stars/maillab/cloud-mail" alt="stargazers" />
    </a>  
    <a href="https://github.com/maillab/cloud-mail/forks" target="_blank" >
        <img src="https://img.shields.io/github/forks/maillab/cloud-mail" alt="forks" />
    </a>






    <a href="https://trendshift.io/repositories/20459" target="_blank" >
        <img src="https://trendshift.io/api/badge/repositories/20459" alt="trendshift" >
    </a>

Description

With only one domain, you can create multiple different email addresses, similar to major email platforms. This project can be deployed on Cloudflare Workers to reduce server costs and build your own email service.

Project Showcase

Features

  • 💰 Low-Cost Usage: No server required — deploy to Cloudflare Workers to reduce costs.

  • 💻 Responsive Design: Automatically adapts to both desktop and most mobile browsers.

  • 📧 Email Sending: Integrated with Resend, supporting bulk email sending and attachments.

  • 🛡️ Admin Features: Admin controls for user and email management with RBAC-based access control.

  • 📦 Attachment Support: Send and receive attachments, stored and downloaded via R2 object storage.

  • 🔔 Email Push: Forward received emails to Telegram bots or other email providers.

  • 📡 Open API: Supports batch user creation via API and multi-condition email queries

  • 🔢 Verification Code Recognition: Auto-detect codes via Workers AI

  • 📈 Data Visualization: Use ECharts to visualize system data, including user email growth.

  • 🎨 Personalization: Customize website title, login background, and transparency.

  • 🤖 CAPTCHA: Integrated with Turnstile CAPTCHA to prevent automated registration.

  • 📜 More Features: Under development...

Tech Stack

Project Structure

cloud-mail
├── mail-worker                 # Backend worker project
│   ├── src                  
│   │   ├── api                 # API layer
│   │   ├── const               # Project constants
│   │   ├── dao                 # Data access layer
│   │   ├── email               # Email processing and handling
│   │   ├── entity              # Database entities
│   │   ├── error               # Custom exceptions
│   │   ├── hono                # Web framework, middleware, error handling
│   │   ├── i18n                # Internationalization
│   │   ├── init                # Database and cache initialization
│   │   ├── model               # Response data models
│   │   ├── security            # Authentication and authorization
│   │   ├── service             # Business logic layer
│   │   ├── template            # Message templates
│   │   ├── utils               # Utility functions
│   │   └── index.js            # Entry point
│   ├── package.json            # Project dependencies
│   └── wrangler.toml           # Project configuration
│
├─ mail-vue                     # Frontend Vue project
│   ├── src
│   │   ├── axios               # Axios configuration
│   │   ├── components          # Custom components
│   │   ├── echarts             # ECharts integration
│   │   ├── i18n                # Internationalization
│   │   ├── init                # Startup initialization
│   │   ├── layout              # Main layout components
│   │   ├── perm                # Permissions and access control
│   │   ├── request             # API request layer
│   │   ├── router              # Router configuration
│   │   ├── store               # Global state management
│   │   ├── utils               # Utility functions
│   │   ├── views               # Page components
│   │   ├── app.vue             # Root component
│   │   ├── main.js             # Entry JS file
│   │   └── style.css           # Global styles
│   ├── package.json            # Project dependencies
└── └── env.release             # Environment configuration

Sponsor

License

This project is licensed under the MIT license.

Communication

Telegram

Extension points exported contracts — how you extend this code

AstNodeConstructor (Interface)
(no doc) [1 implementers]
mail-vue/public/tinymce/tinymce.d.ts
EditorObservable (Interface)
(no doc) [1 implementers]
mail-vue/public/tinymce/tinymce.d.ts
StringPathBookmark (Interface)
(no doc)
mail-vue/public/tinymce/tinymce.d.ts
RangeBookmark (Interface)
(no doc)
mail-vue/public/tinymce/tinymce.d.ts
IdBookmark (Interface)
(no doc)
mail-vue/public/tinymce/tinymce.d.ts

Core symbols most depended-on inside this repo

get
called by 585
mail-vue/public/tinymce/tinymce.d.ts
on
called by 394
mail-vue/public/tinymce/tinymce.d.ts
add
called by 173
mail-vue/public/tinymce/tinymce.d.ts
dispatch
called by 147
mail-vue/public/tinymce/tinymce.d.ts
remove
called by 144
mail-vue/public/tinymce/tinymce.d.ts
orm
called by 134
mail-worker/src/entity/orm.js
run
called by 110
mail-vue/public/tinymce/tinymce.d.ts
execCommand
called by 101
mail-vue/public/tinymce/tinymce.d.ts

Shape

Function 4,261
Method 595
Interface 336
Class 82

Languages

TypeScript100%

Modules by API surface

mail-vue/public/tinymce/tinymce.min.js1,457 symbols
mail-vue/public/tinymce/themes/silver/theme.min.js1,226 symbols
mail-vue/public/tinymce/models/dom/model.min.js568 symbols
mail-vue/public/tinymce/tinymce.d.ts379 symbols
mail-vue/public/tinymce/plugins/table/plugin.min.js194 symbols
mail-vue/public/tinymce/plugins/lists/plugin.min.js170 symbols
mail-vue/public/tinymce/plugins/image/plugin.min.js99 symbols
mail-vue/public/tinymce/plugins/link/plugin.min.js86 symbols
mail-vue/public/tinymce/plugins/fullscreen/plugin.min.js86 symbols
mail-vue/public/tinymce/plugins/accordion/plugin.min.js83 symbols
mail-vue/public/tinymce/plugins/searchreplace/plugin.min.js73 symbols
mail-vue/public/tinymce/plugins/media/plugin.min.js67 symbols

Dependencies from manifests, versioned

@aws-sdk/client-s33.882.0 · 1×
@cloudflare/vite-plugin1.6.0 · 1×
@cloudflare/vitest-pool-workers0.7.5 · 1×
@iconify/vue4.3.0 · 1×
@vitejs/plugin-vue5.2.1 · 1×
@vueuse/components14.1.0 · 1×
@vueuse/core12.0.0 · 1×
axios1.15.2 · 1×
compressorjs1.2.1 · 1×
date-time-format-timezone1.0.22 · 1×
dayjs1.11.13 · 1×
dexie4.0.11 · 1×

For agents

$ claude mcp add cloud-mail \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact