- replace Database with db instance - use schema imports for tables - use db.select, db.insert, onConflictDoUpdate - remove manual connection handling and console logs - improve type safety and maintainability refactor(students): migrate to Drizzle ORM and async queries Replace raw sqlite queries with Drizzle ORM. Remove the connect helper and use the shared db instance and schema definitions. Convert getItself, getAll and addStudents to async functions, use eq and lt helpers, and simplify promotion handling. This improves type safety, maintainability, and allows non‑blocking database access.
✨ PolyMPR ✨
PolyMPR (Poly Management Platform for Resources) is a modern, modular framework built on Deno and Fresh, designed to help organizations transition their HR systems to the cloud. With its modulith architecture, PolyMPR simplifies the development, deployment, and maintenance of HR applications, making it the perfect choice for teams looking to modernize their workflows. 🌐
Features ✨
- Modular Design: Easily add, remove, or update features without disrupting the entire system. 🧩
- Cloud-Native: Built for the cloud, enabling seamless integration with cloud services (amU DataCenter). ☁️
- Deno-Powered: Utilizes Deno's secure runtime for TypeScript. 🦕
- Fresh Framework: Delivers fast, edge-ready web applications with minimal overhead. ⚡
- HR-Focused: Tailored to meet the unique needs of INFO's HR. 👩💼👨💼
Getting Started 🛠️
Prerequisites
- Deno: Install Deno by following the official guide.
- Docker (optional): Install Docker for containerized deployments. Follow the Docker installation guide.
Installation
- Clone the PolyMPR repository:
git clone https://github.com/fedyna-k/PolyMPR.git cd PolyMPR - Start the application:
deno task start - Access the application at
https://localhost.
For detailed installation instructions, check out the Installation Guide.
Modules Overview 🧩
PolyMPR comes with a variety of modules to streamline HR processes.
To learn how to create a module, visit the Module Overview.
CLI Documentation 📄
The PolyMPR CLI simplifies development tasks. Here are some common commands:
- Create a new module:
pmpr module create <module-name-kebab-case>
For detailed CLI usage, check out the CLI Documentation.
Contributing 🤝
We welcome contributions from the community! Whether you're fixing bugs, adding features, or improving documentation, your help is appreciated. Here’s how to get started:
- Create a new issue.
- Create a new branch for your changes:
git checkout -b PMPR-:ISSUE_ID: - Commit your changes and push them to your branch.
- Submit a pull request.
For more details, read the Contributing Guide.
Community and Support 🌟
Join the PolyMPR community to connect with other users and developers:
- GitHub Discussions: Ask questions and share ideas. 💬
- Issue Tracker: Report bugs or request features. 🐛
License 📜
PolyMPR is open-source and released under the MIT License. Feel free to use, modify, and distribute it as per the license terms.