Skip to content

A feature-rich Node.js web framework designed for building powerful, scalable, and maintainable web applications.

License

Notifications You must be signed in to change notification settings

ujjwalguptaofficial/fortjs

Repository files navigation

GitHub version TEST npm version Docs

Fortjs

Fortjs is efficient web framework for Node.js that empowers developers to build scalable and performant applications with ease. With a focus on simplicity and speed, fortjs provides a robust foundation for creating web APIs and applications. Featuring intuitive routing, dependency injection, and a powerful middleware system, fortjs allows you to craft clean, organized architectures.

Benchmark

BENCHMARK

Fortjs is 3x faster than express and nestjs both.

Check live test on GITHUB CI

Author's Note

While Node.js is undeniably powerful, its available frameworks and ecosystem often lead developers to focus solely on building the application, neglecting considerations for long-term maintainability and code cleanliness. The resulting codebase can be challenging for new team members to grasp.

In contrast, ecosystems like Java and C# offer robust frameworks that facilitate the creation of more maintainable applications. These ecosystems enable new employees to work on the product with relative ease, even without an in-depth understanding of the entire codebase.

Fort.js aims to address this issue by leveraging modern JavaScript and TypeScript. It provides simple APIs and adopts the Fort architecture, which promotes modularity through components without compromising performance (reportedly 3 times faster than Express.js).

Why fortjs

  1. Simplicity: fortjs embraces simplicity, making it easy for developers to understand and use.

  2. Efficiency: The framework is designed for efficiency, enabling the development of performant applications.

  3. Scalability: fortjs provides a scalable architecture for building both small and large web applications.

  4. Faster: Fortjs delivers unparalleled speed, surpassing popular alternatives like Express and Nest by more than two times, providing a high-performance solution for web applications. Take a look at Benchmark

  5. Reusable Components: Components like walls, shields, and guards offer a modular and reusable approach to building applications.

  6. Intuitive Routing: fortjs simplifies routing, making it intuitive for developers to define and manage routes.

  7. Dependency Injection: The framework includes a robust dependency injection system, promoting clean and organized code.

  8. Unit Testable: Fort.js is designed to be unit-testable, enabling developers to write tests for their code, ensuring stability and maintainability.

  9. Authentication and Authorization: Guards facilitate the management of authentication and authorization, enhancing security.

  10. Modern Development: fortjs is built with modern development practices in mind, providing a contemporary and efficient development experience.

  11. Boilerplate Reduction: Developers can say goodbye to boilerplate code, resulting in cleaner and more maintainable codebases.

  12. Flexibility: fortjs offers flexibility in how components are used, allowing developers to tailor the framework to their specific needs. You can configure almost everything.

  13. Fort Architecture: fortjs follows a well-architected design Fort , promoting a structured and organized development approach.

  14. TypeScript Supported: With native TypeScript support, fortjs empowers developers to leverage the benefits of static typing for a more robust and error-resistant codebase.

Docs

https://fortjs.net/

Examples

Fortjs provides example for different scenario and tools. Check out repo - https://github.com/ujjwalguptaofficial/fortjs-examples

Help

We are here to help you. Ask any question at github discussion

Stay in touch

Contributors

You are very welcome to contribute, please see contributing guidelines - [Contribute].

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. For sponsoring, contact author of this project.