Umi Electron Template

screenshot of Umi Electron Template

Umi Electron Template

Overview

The Umi Electron Template is an innovative development template built on the Umi framework and the umi-plugin-electron-builder. This template allows developers to leverage the complete Umi ecosystem while also utilizing Electron for building and packaging applications. With a well-structured architecture that includes both Main and Renderer directories, it's tailored for those looking to create robust desktop applications seamlessly.

This template promotes enhanced development experiences and efficient release processes. Its integration of various technologies simplifies common tasks and ensures that applications are not only powerful but are also maintainable and scalable. Whether you are a seasoned developer or just getting started with Electron, the Umi Electron Template aims to provide a smooth and effective setup.

Features

  • Umi Plugin Integration: Built on umi-plugin-electron-builder, enabling full access to the Umi development ecosystem.
  • Dual Directory Architecture: Utilizes a Main and Renderer directory structure for better organization and management of code.
  • Dependency Injection: Implements Inversify for Dependency Injection (DI) and Inversion of Control (IoC) to streamline application development.
  • Integrated Styling Framework: Comes with antd-style, ensuring that developers can create visually appealing applications easily.
  • Data Persistence: Incorporates sqlite3 for local database management, along with TypeORM for Object-Relational Mapping (ORM).
  • macOS Signing and Notarization: Automatically signs and notarizes applications for macOS as part of the CI/CD workflow.
  • Enhanced Development Tools: Includes integration with React DevTools and Redux DevTools for a richer debugging and development process.
  • Automated Version Management: Adopts the Gitmoji Commit Workflow for seamless version control and automated releases.
template
Templates & Themes

A template or theme refers to a pre-designed layout or structure that provides a basic framework for building a specific type of application or website. It typically includes good design, placeholder content and functional features, allowing developers to customize and fill in the details according to their specific needs.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.