Welcome to Moostjs, a metadata-driven Event Processing Framework inspired by NestJS and powered by Wooks. While Moost is currently a work-in-progress library, we're excited about its potential and invite you to explore, experiment, and contribute to its development.
Note: As Moostjs is under active development, breaking changes can be expected.
Moostjs emerged from the belief that TypeScript decorators could significantly simplify application design. By employing the robust event processing capabilities of Wooks, the efficiency of dependency injections, and minimizing external dependencies, Moostjs aims to provide a streamlined, intuitive framework for web app development.
Here's what sets Moost apart from NestJS:
- Abstraction of
modules
is not used, promoting a simpler architecture. - Utilizes the reusable dependency injection framework @prostojs/infact.
- Uses a metadata layer powered by @prostojs/mate.
- Supports DTOs and validations powered by @prostojs/valido.
- Does not use Express or Fastify, but these can be employed with an adapter.
- Currently, Moost does not support additional techniques like ORMs, Queues, etc.
We are excited to welcome contributors who are passionate about improving Moostjs. No matter your level of experience, your unique perspective and skills can make valuable contributions to our growing community.
Here are some basic steps to get you started:
-
Fork the Repo: Navigate to moostjs and fork the repository to your own GitHub account.
-
Clone the Repo: Clone the forked repository to your local machine.
-
Create a Branch: Make a new branch for your feature or bug fix.
-
Make your Changes: Implement your feature or fix the bug and commit the changes to your branch.
-
Make a Pull Request: Navigate back to your forked repo and press the "New pull request" button.
Don't hesitate to ask for help if you need it. We believe in fostering a friendly and respectful environment for all contributors.
Thank you for your interest in Moostjs. We look forward to building something amazing together!