[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-73768":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":21,"hasPages":21,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":34,"readmeContent":35,"aiSummary":36,"trendingCount":16,"starSnapshotCount":16,"syncStatus":37,"lastSyncTime":38,"discoverSource":39},73768,"worklenz","Worklenz\u002Fworklenz","Worklenz","All in one project management tool for efficient teams","https:\u002F\u002Fworklenz.com",null,"TypeScript",3068,323,15,53,0,4,25,64.03,"GNU Affero General Public License v3.0",false,"main",[24,25,26,27,28,29,30,31,32,33],"expressjs","postgresql","project-management","react","resource-management","rest-api","scheduler","task-management","time-tracking","typescript","2026-06-12 04:01:11","\u003Cdiv align=\"center\">\n\u003Ch1 align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Fworklenz.com\" target=\"_blank\" rel=\"noopener noreferrer\">\n        \u003Cimg src=\"https:\u002F\u002Fs3.dualstack.us-west-2.amazonaws.com\u002Fworklenz.com\u002Fassets\u002Fworklenz-light-mode.png\" alt=\"Worklenz Logo\" width=\"400\">\n    \u003C\u002Fa>  \n\u003C\u002Fh1>\n\u003Ch3 align=\"center\">All-in-one open-source project management for efficient teams\u003C\u002Fh3>\n\n\u003Cp align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fblob\u002Fmain\u002FLICENSE\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-AGPL--3.0-blue.svg\" alt=\"License\">\n    \u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Freleases\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Frelease\u002FWorklenz\u002Fworklenz\" alt=\"Release\">\n    \u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fstargazers\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FWorklenz\u002Fworklenz\" alt=\"Stars\">\n    \u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fnetwork\u002Fmembers\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fforks\u002FWorklenz\u002Fworklenz\" alt=\"Forks\">\n    \u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fissues\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fissues\u002FWorklenz\u002Fworklenz\" alt=\"Issues\">\n    \u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fdiscord.com\u002Finvite\u002F6Qmm839mgr\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fdiscord\u002F1202616582757556276?style=flat&logo=discord&logoColor=white&label=Discord&color=5865F2\" alt=\"Discord\">\n    \u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Fworklenz.com\">\u003Cb>Website\u003C\u002Fb>\u003C\u002Fa> •\n    \u003Ca href=\"https:\u002F\u002Fapp.worklenz.com\u002Fauth\u002Fsignup\">\u003Cb>Sign in\u003C\u002Fb>\u003C\u002Fa> •\n    \u003Ca href=\"https:\u002F\u002Fdocs.worklenz.com\u002Fen\u002Fstart\u002Fintroduction\u002F\">\u003Cb>Documentation\u003C\u002Fb>\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003C\u002Fdiv>\n\n---\nMeet [Worklenz](https:\u002F\u002Fworklenz.com), a powerful, open-source project management platform built to help teams plan smarter, collaborate better, and ship faster. No bloated tools. No unnecessary complexity. Just everything your team needs, in one place. 🚀\n> Worklenz is growing every day. Your bug reports, feature ideas, and feedback shape what we build next. Jump into [Discord](https:\u002F\u002Fdiscord.com\u002Finvite\u002F6Qmm839mgr) or open a GitHub issue - we read everything!\n\n\n## 🚀 Getting Started\n\nPick the setup that works best for you:\n\u003Cbr>\n### ☁️ Worklenz Cloud\nThe fastest way to get started - no setup, no infrastructure. Just sign up at [worklenz.com](https:\u002F\u002Fworklenz.com) and start managing projects in minutes.\n\n### 🖥️ Self-Host Worklenz\nPrefer full control over your data? Run Worklenz on your own server.\n\n| Method | Guide |\n|--------|-------|\n| 🐳 Docker (Recommended) | [Quick Docker Setup](#quick-start-docker) | \n| 🔧 Manual Installation | [Manual Dev Setup](#manual-installation) |\n\n\u003Cbr>\n\n## 🌟 Features\n\n- **🗺️ Project Management** - Plan, execute, and monitor projects from start to finish with full visibility across every stage.\n- **📋 Task Management** - Break projects into tasks, set priorities, due dates, and track progress with multiple views (list, board, Gantt).\n- **📐 Resource Planning** - Allocate the right people to the right tasks at the right time - keep your team balanced and productive.\n- **👥 Team & Client Collaboration** - Bring your team and clients together in one shared space to align on goals, updates, and deliverables.\n- **💰 Financial Insights** - Track budgets, costs, and financial performance across projects to keep spending on track and transparent.\n- **⏱️ Time Tracking** - Log time directly on tasks to understand where your team's hours are actually going.\n- **📊 Analytics & Reporting** - Get real-time insights into project health, team workload, and performance.\n- **🗓️ Resource Management** - Plan team capacity, avoid overallocation, and schedule work with a visual scheduler.\n- **🧩 Project Templates** - Start new projects in seconds using pre-built templates for common workflows.\n- **🤝 Team Collaboration** - Comment on tasks, share files, and keep all communication in context - right where the work is.\n\u003Cbr>\u003Cbr>\n\n## 📸 Screenshots\n\n\u003Cdiv align=\"center\">\n\n[![Task Management Task List View](https:\u002F\u002Ftinyurl.com\u002F2cd35sk2)](https:\u002F\u002Fworklenz.com\u002Ftask-management\u002F)\n_**Task Management Task List View**_\n\n[![Task Management Kanban View](https:\u002F\u002Ftinyurl.com\u002F253o4fp7)](https:\u002F\u002Fworklenz.com\u002Ftask-management\u002F)\n_**Task Management Kanban View**_\n\n[![Resource Management](https:\u002F\u002Ftinyurl.com\u002F228kgt26)](https:\u002F\u002Fworklenz.com\u002Fresource-management\u002F)\n_**Resource Management**_\n\n[![Projects & Tasks Templates](https:\u002F\u002Ftinyurl.com\u002F2are8yqt)](https:\u002F\u002Fworklenz.com\u002Fproject-templates\u002F)\n_**Projects & Tasks Templates**_\n\n[![Time Tracking](https:\u002F\u002Ftinyurl.com\u002F28t2gryx)](https:\u002F\u002Fworklenz.com\u002Ftime-tracking\u002F)\n_**Time Tracking**_\n\n[![Project Insights](https:\u002F\u002Ftinyurl.com\u002F23lxzxx9)](https:\u002F\u002Fworklenz.com\u002Fanalytics\u002F)\n_**Project Insights**_\n\n[![Team Utilization](https:\u002F\u002Ftinyurl.com\u002F2xox9a9v)](https:\u002F\u002Fworklenz.com\u002Fteam-utilization\u002F)\n_**Team Utilization**_\n\n[![Scheduler](https:\u002F\u002Ftinyurl.com\u002F239vjndh)](https:\u002F\u002Fworklenz.com\u002Ftimesheets\u002F)\n_**Scheduler**_\n\n[![Project Profitability Monitor](https:\u002F\u002Ftinyurl.com\u002F2y4husx3)](https:\u002F\u002Fworklenz.com\u002Fproject-finance\u002F)\n_**Project Profitability Monitor**_\n\n[![Client Portal](https:\u002F\u002Ftinyurl.com\u002F2yepbyt2)](https:\u002F\u002Fworklenz.com\u002Fclient-portal\u002F)\n_**Client Portal**_\n\u003C\u002Fdiv>\n\u003Cbr>\n\n## ⚙️ Tech Stack\n\n[![React](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FReact-20232A?style=for-the-badge&logo=react&logoColor=61DAFB)](https:\u002F\u002Freactjs.org\u002F)\n[![TypeScript](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTypeScript-007ACC?style=for-the-badge&logo=typescript&logoColor=white)](https:\u002F\u002Fwww.typescriptlang.org\u002F)\n[![Express.js](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FExpress.js-404D59?style=for-the-badge&logo=express&logoColor=white)](https:\u002F\u002Fexpressjs.com\u002F)\n[![PostgreSQL](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPostgreSQL-316192?style=for-the-badge&logo=postgresql&logoColor=white)](https:\u002F\u002Fwww.postgresql.org\u002F)\n[![Docker](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDocker-2496ED?style=for-the-badge&logo=docker&logoColor=white)](https:\u002F\u002Fwww.docker.com\u002F)\n\n| Layer | Technology |\n|-------|-----------|\n| **Frontend** | React + Ant Design |\n| **Backend** | TypeScript + Express.js |\n| **Database** | PostgreSQL |\n| **Storage** | MinIO (S3-compatible) \u002F AWS S3 \u002F Azure Blob |\n| **Cache** | Redis |\n| **Proxy** | Nginx |\n\n### Requirements\n\n- Node.js version v18 or newer\n- PostgreSQL version v15 or newer\n- Docker and Docker Compose (for containerized setup)\n\n\n## 📝 Documentation\n\nExplore Worklenz's [product documentation](https:\u002F\u002Fdocs.worklenz.com\u002Fen\u002Fstart\u002Fintroduction\u002F) to learn about features, setup, and usage and more.\n\u003Cbr>\n\n\u003Ca id=\"quick-start-docker\">\u003C\u002Fa>\n### 🐳 Quick Start (Docker — Recommended)\n\nThe fastest way to get Worklenz running locally with all dependencies included. This setup includes **production-ready features** like nginx reverse proxy, SSL\u002FTLS support, Redis caching, and automated backups.\n\n**📋 Prerequisites:**\n- Docker and Docker Compose installed on your system\n- Git\n\n**🪜 Steps:**\n\n#### Option 1: Automated Setup (Easiest)\n```bash\n# 📥 Clone the repository\ngit clone https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz.git\ncd worklenz\n\n# Run the automated setup script\n.\u002Fquick-setup.sh\n```\n\nThis script will:\n- ✅ Create `.env` file with auto-generated security secrets\n- ✅ Configure URLs based on your domain (localhost or production)\n- ✅ Set up SSL certificates (self-signed for localhost, Let's Encrypt for production)\n- ✅ Install and start all services\n\n#### Option 2: Manual Setup\n```bash\n# 📥 Clone the repository\ngit clone https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz.git\ncd worklenz\n\n# 📄 Copy and configure environment file\ncp .env.example .env\n# Edit .env and set required values (DB_PASSWORD, SESSION_SECRET, etc.)\n\n# ▶️ Start services (Express mode - includes PostgreSQL, Redis, MinIO)\ndocker compose --profile express up -d\n```\n\n**🌐 Access the application:**\n- **Application**: https:\u002F\u002Flocalhost (or http:\u002F\u002Flocalhost)\n- **MinIO Console**: http:\u002F\u002Flocalhost:9001 (login: minioadmin\u002Fminioadmin)\n\n**🛠️ Management:**\n```bash\n# Use the management script for common operations\n.\u002Fmanage.sh status    # View service status\n.\u002Fmanage.sh logs      # View logs\n.\u002Fmanage.sh backup    # Create database backup\n.\u002Fmanage.sh stop      # Stop all services\n.\u002Fmanage.sh start     # Start all services\n```\n\n**For detailed documentation**, see [DOCKER_SETUP.md](DOCKER_SETUP.md)\n\n**Video Guide**: For a visual walkthrough of the local Docker deployment process, check out our [step-by-step video guide](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=AfwAKxJbqLg).\n\n\u003Ca id=\"manual-installation\">\u003C\u002Fa>\n### 🛠️ Manual Installation (For Development)\n\nFor developers who want to run the services individually or customize the setup.\n\n**📋 Prerequisites:**\n- Node.js (version 18 or higher)\n- PostgreSQL (version 15 or higher)\n- An S3-compatible storage service (like MinIO) or Azure Blob Storage\n\n**🪜 Steps:**\n\n1. 📥 Clone the repository:\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz.git\ncd worklenz\n```\n\n2. ⚙️ Set up environment variables:\n```bash\ncp worklenz-backend\u002F.env.template worklenz-backend\u002F.env\n# Update the environment variables with your configuration\n```\n\n3. 📦 Install dependencies:\n```bash\n# Backend dependencies\ncd worklenz-backend\nnpm install\n\n# 🖥️ Frontend dependencies\ncd ..\u002Fworklenz-frontend\nnpm install\n```\n\n4. 🗄️ Set up the database:\n```bash\n# Create a PostgreSQL database named worklenz_db\ncd worklenz-backend\n\n# Execute the SQL setup files in the correct order\npsql -U your_username -d worklenz_db -f database\u002Fsql\u002F0_extensions.sql\npsql -U your_username -d worklenz_db -f database\u002Fsql\u002F1_tables.sql\npsql -U your_username -d worklenz_db -f database\u002Fsql\u002Findexes.sql\npsql -U your_username -d worklenz_db -f database\u002Fsql\u002F4_functions.sql\npsql -U your_username -d worklenz_db -f database\u002Fsql\u002Ftriggers.sql\npsql -U your_username -d worklenz_db -f database\u002Fsql\u002F3_views.sql\npsql -U your_username -d worklenz_db -f database\u002Fsql\u002F2_dml.sql\npsql -U your_username -d worklenz_db -f database\u002Fsql\u002F5_database_user.sql\n```\n\n5. ▶️ Start the development servers:\n```bash\n# Backend (single command for build, watch, and auto-restart)\ncd worklenz-backend\nnpm run dev:all\n\n# Frontend (in another terminal)\ncd worklenz-frontend\nnpm run dev\n```\n\n6. 🌐 Access the application at http:\u002F\u002Flocalhost:5000\n\n## 🚢 Deployment\n\n### 🏠 Local Development\n\nFor local development, follow the [Quick Start (Docker)](#quick-start-docker) section above.\n\n### 🌍 Production Deployment\n\nThe new Docker setup includes production-ready features for secure and scalable deployments.\n\n#### ⚡ Quick Production Setup\n\n```bash\n# Clone and navigate to the repository\ngit clone https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz.git\ncd worklenz\n\n# Run the automated setup\n.\u002Fquick-setup.sh\n# When prompted, enter your production domain (e.g., worklenz.example.com)\n# The script will configure SSL with Let's Encrypt automatically\n```\n\n#### 🔧 Manual Production Setup\n\n1. **Configure environment for your domain:**\n   ```bash\n   cp .env.example .env\n   # Edit .env and set:\n   # - DOMAIN=your-domain.com\n   # - VITE_API_URL=https:\u002F\u002Fyour-domain.com\n   # - VITE_SOCKET_URL=wss:\u002F\u002Fyour-domain.com\n   # - ENABLE_SSL=true\n   # - LETSENCRYPT_EMAIL=your-email@domain.com\n   # - Generate secure secrets for DB_PASSWORD, SESSION_SECRET, etc.\n   ```\n\n2. **Point your domain's DNS A record to your server IP**\n\n3. **Start services with SSL:**\n   ```bash\n   docker compose --profile express --profile ssl up -d\n   ```\n\n4. **Access your application at:** https:\u002F\u002Fyour-domain.com\n\n#### 🛠️ Management Commands\n\n```bash\n.\u002Fmanage.sh install    # Interactive installation\n.\u002Fmanage.sh upgrade    # Upgrade to latest version\n.\u002Fmanage.sh backup     # Create database backup\n.\u002Fmanage.sh restore    # Restore from backup\n.\u002Fmanage.sh ssl        # Manage SSL certificates\n.\u002Fmanage.sh status     # View service status\n```\n\n#### 🗂️ Deployment Modes\n\n- 🟢 **Express Mode** (default): All services bundled (PostgreSQL, Redis, MinIO)\n  ```bash\n  docker compose --profile express up -d\n  ```\n\n- 🔵 **Advanced Mode**: Use external services (AWS S3, Azure Blob, external PostgreSQL)\n  ```bash\n  # Set DEPLOYMENT_MODE=advanced in .env\n  docker compose up -d\n  ```\n\n**For complete deployment documentation**, see [DOCKER_SETUP.md](DOCKER_SETUP.md)\n\n**Video Guide**: For a complete walkthrough of deploying Worklenz to a remote server, check out our [deployment video guide](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=CAZGu2iOXQs&t=10s).\n\n## ⚙️ Configuration\n\n### Environment Variables\n\nWorklenz uses a comprehensive environment configuration system. Copy `.env.example` to `.env` and configure according to your needs.\n\n**📂 Key Configuration Areas:**\n\n- **Deployment Mode**: `express` (all services bundled) or `advanced` (external services)\n- **Domain & URLs**: Configure for localhost or production domain\n- **Database**: PostgreSQL credentials and connection settings\n- **Security Secrets**: Session, cookie, and JWT secrets (auto-generated by setup scripts)\n- **Storage**: MinIO (default), AWS S3, or Azure Blob Storage\n- **Redis**: Cache configuration (Express mode)\n- **SSL\u002FTLS**: Let's Encrypt for production, self-signed for localhost\n- **Backups**: Automated backup retention settings\n- **Optional Features**: Google OAuth, reCAPTCHA, email notifications\n\n**⚡ Quick Configuration:**\n\n```bash\n# Auto-generate all secrets and configure based on domain\n.\u002Fmanage.sh auto-configure\n\n# Or manually generate secrets\nopenssl rand -hex 32  # Use for SESSION_SECRET, COOKIE_SECRET, JWT_SECRET\n```\n\n**📌 Important Variables:**\n\n- `DOMAIN`: Your domain (localhost for local testing)\n- `DEPLOYMENT_MODE`: express or advanced\n- `STORAGE_PROVIDER`: s3 (MinIO\u002FAWS) or azure\n- `ENABLE_SSL`: true\u002Ffalse for SSL\u002FTLS\n- `BACKUP_RETENTION_DAYS`: Days to keep backups (default: 30)\n\nFor a complete list of variables with detailed documentation, see `.env.example`.\n\n## 🪣 MinIO Integration\n\nThe project uses MinIO as an S3-compatible object storage service, which provides an open-source alternative to AWS S3 for development and production.\n\n### 🔧 Working with MinIO\n\nMinIO provides an S3-compatible API, so any code that works with S3 will work with MinIO by simply changing the endpoint URL. The backend has been configured to use MinIO by default, with no additional configuration required.\n\n- **🖥️ MinIO Console**: http:\u002F\u002Flocalhost:9001\n  - Username: minioadmin\n  - Password: minioadmin\n\n- **🪣 Default Bucket**: worklenz-bucket (created automatically when the containers start)\n\n### 🛠️ Backend Storage Configuration\n\nThe backend is pre-configured to use MinIO with the following settings:\n\n```javascript\n\u002F\u002F S3 credentials with MinIO defaults\nexport const REGION = process.env.AWS_REGION || \"us-east-1\";\nexport const BUCKET = process.env.AWS_BUCKET || \"worklenz-bucket\";\nexport const S3_URL = process.env.S3_URL || \"http:\u002F\u002Fminio:9000\u002Fworklenz-bucket\";\nexport const S3_ACCESS_KEY_ID = process.env.AWS_ACCESS_KEY_ID || \"minioadmin\";\nexport const S3_SECRET_ACCESS_KEY = process.env.AWS_SECRET_ACCESS_KEY || \"minioadmin\";\n```\n\n## 🔒 Security\n\nWorklenz is built with security in mind:\n\n- 🔐 Non-root Docker containers\n- 🌐 Network isolation (backend is internal-only)\n- 🔑 SSL\u002FTLS (Let's Encrypt for production, self-signed for localhost)\n- 🛡️ Rate limiting on API and login endpoints\n- 🔒 Security headers (HSTS, CSP, X-Frame-Options, etc.)\n- 🗝️ Auto-generated secure secrets via `openssl rand -hex 32`\n\nFound a security vulnerability? Please **do not** open a public issue. Email us at [info@worklenz.com](mailto:info@worklenz.com) instead. We take all legitimate reports seriously.\n\u003Cbr>\n\n## 📈 Analytics\n\nWorklenz uses Google Analytics to better understand how the application is used - helping us prioritize improvements and make smarter product decisions.\n\n**What we track:**\n- 📊 Anonymous usage statistics\n- 🗺️ Page views and navigation patterns\n- 🧩 Feature usage\n- 💻 Browser and device information\n\n**Your privacy matters:**\n- 🔘 Analytics is **opt-in only** - we never collect data without your consent\n- 🙈 No personal information is ever collected\n- 🚪 You can **opt-out at any time** by clearing your browser's local storage for the Worklenz domain, or clicking \"Decline\" in the analytics notice\n- 📜 Data is stored and handled according to [Google's Privacy Policy](https:\u002F\u002Fpolicies.google.com\u002Fprivacy)\n\u003Cbr\u002F>\n\n## 🤝 Contributing\nWe love contributions from the community! Here's how you can help:\n\n- 🐛 [Report bugs](https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fissues\u002Fnew)\n- ✨ [Request features](https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fissues\u002Fnew)\n- 📖 Improve the documentation\n- 💬 Share Worklenz with your team or write about it\n\nPlease read [CONTRIBUTING.md](https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fblob\u002Fmain\u002FCONTRIBUTING.md) before submitting a pull request.\n\u003Cbr>\n\n## Contributors\nThanks to everyone who has contributed to Worklenz! 💙\n\n[![Contributors](https:\u002F\u002Fcontrib.rocks\u002Fimage?repo=Worklenz\u002Fworklenz)](https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fgraphs\u002Fcontributors)\n\u003Cbr>\n\n## 💙 Community\nJoin the Worklenz community:\n\n- 💬 [Discord Server](https:\u002F\u002Fdiscord.gg\u002F6Qmm839mgr) - chat with contributors and users\n- 🐙 [GitHub Discussions](https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fdiscussions) - longer form conversations\n- 🐦 Follow updates on our [website](https:\u002F\u002Fworklenz.com)\n\nWe follow a [Code of Conduct](https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fblob\u002Fmain\u002FCODE_OF_CONDUCT.md) across all community spaces.\n\u003Cbr>\n\n## 📄 License\n\nWorklenz is open source, released under the [GNU Affero General Public License v3.0](https:\u002F\u002Fgithub.com\u002FWorklenz\u002Fworklenz\u002Fblob\u002Fmain\u002FLICENSE).\n\nBy contributing to Worklenz, you agree your contributions will be licensed under AGPL v3.0.\n\u003Cbr>\n\n---\n\u003Cbr>\n\u003Cdiv align=\"center\">\n  \u003Cstrong>Built with 💙 by the Worklenz team and amazing contributors around the world.\u003C\u002Fstrong>\n  \u003Cbr\u002F>\n  \u003Ca href=\"https:\u002F\u002Fworklenz.com\">www.worklenz.com\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n","Worklenz 是一个面向高效团队的一体化项目管理工具。它使用 TypeScript 构建，集成了 Express.js 和 PostgreSQL 等技术，提供全面的项目管理和任务跟踪功能，支持多种视图（如列表、看板和甘特图）来展示项目进度，并具备资源规划能力，帮助团队合理分配人力和其他资源。此外，Worklenz 还支持时间追踪与调度功能，确保项目按时完成。该平台既可通过云服务快速启动，也允许用户自托管以完全控制数据，适用于需要灵活部署方案的各种规模团队或企业。",2,"2026-06-11 03:47:18","high_star"]