About Project
Project Origin
This project is developed and refactored based on gocron.
We really appreciate the design philosophy of the original project, but since the original author is no longer maintaining it, we have done extensive refactoring work on this foundation to build a more modern, secure, and easy-to-use distributed scheduled task management system.
Key Improvements
We have made significant improvements based on the original project:
- Internationalization: Complete Chinese/English interface switching support
- Security Enhancements:
- Added Two-Factor Authentication (2FA)
- Added TLS Mutual Authentication support
- Log System: Added automatic log cleanup, supporting both database and file logs
- Frontend Refactoring: Adopted modern Vue3 + Element Plus + Vite architecture
- Backend Refactoring:
- Database Support: Added SQLite support for lightweight deployment
- Bug Fixes: Fixed critical issues such as Shell task stop functionality and orphaned task handling after restart
- Experience Optimization: Brand new UI design and interaction experience
Tech Stack
Backend (Go)
- Web Framework: Gin - High-performance HTTP Web framework
- ORM Framework: GORM - The fantastic ORM library for Golang
- RPC Framework: gRPC - High performance, open source universal RPC framework
- Cron Library: cron - Robust cron library (Forked)
- JWT: golang-jwt - JSON Web Token implementation
- 2FA: otp - One-time password library for 2FA
- CLI: cli - Simple, fast, and fun package for building command line apps
- Logger: logrus - Structured logger for Golang
- Static Assets: statik - Embeds static files into a Go executable
Frontend (Vue 3)
- Core Framework: Vue 3 - The Progressive JavaScript Framework
- Build Tool: Vite - Next Generation Frontend Tooling
- UI Library: Element Plus - A Vue 3 based component library
- Router: Vue Router - The official router for Vue.js
- State Management: Pinia - The Vue Store that you will enjoy using
- HTTP Client: Axios - Promise based HTTP client
- I18n: Vue I18n - Internationalization plugin for Vue.js
- Utilities: VueUse - Collection of Essential Vue Composition Utilities
Acknowledgments & Support
The development of gocron relies on the support of the open source community.
If you find this project helpful, please give it a Star ⭐. This is not only a recognition of our work but also helps more people discover this project.
We also warmly welcome you to submit Issues for feedback or suggestions, or submit Pull Requests to contribute code. Let's work together to build an even better distributed scheduled task management system!