@newput-newlink/monorepo v1.0.5
Newlink - Simplifying Development with Essential Features
Newlink is a robust npm package designed to streamline the development process by providing essential functionalities out-of-the-box. Developers can use Newlink to build both monolithic and microservices architectures without worrying about foundational aspects like authentication and authorization. With its CLI, getting started with Newlink is quick and effortless.
Features
Newlink provides the following core features to accelerate development:
Authentication
Pre-built authentication functionalities to manage user access securely and efficiently.Authorization
Flexible role-based access control to define and enforce user permissions.Cache
High-performance caching capabilities to optimize application speed and reduce load times.Rate Limiter
Built-in rate limiting to protect your application from abuse and ensure fair usage.Blockchain
Blockchain integration support for building decentralized features with ease.Notification
Powerful notification service to enhance user engagement across multiple channels.
Modules
| Module | Description | Package Name |
|---|---|---|
| CLI | Command-line interface for setup | @newput-newlink/cli |
| Authentication | User authentication system | @newput-newlink/authentication |
| Authorization | Role-based access control | @newput-newlink/authorization |
| Cache | Application caching | @newput-newlink/cache |
| Rate Limiter | Request rate limiting | @newput-newlink/ratelimiter |
| Blockchain | Blockchain integration | @newput-newlink/blockchain |
| Notification | User notifications | @newput-newlink/notification |
Future Implementation
Newlink is continually evolving, with exciting features planned for future releases to further enhance developer productivity and enable advanced capabilities:
AI Integration
Incorporate artificial intelligence features such as machine learning models, natural language processing, and AI-driven recommendations.BPMN (Business Process Model and Notation)
Support for designing and automating business workflows with BPMN-compliant tools and APIs.DMN (Decision Model and Notation)
Add decision modeling features for creating and executing decision tables and rules.Messaging
Enable asynchronous messaging and communication features for inter-service communication and event-driven architectures.Blog Module
Provide a blog management module for creating, editing, and publishing blog content seamlessly.Questionnaire Module
Introduce a dynamic questionnaire builder for surveys, quizzes, and user feedback collection.Analytics
Advanced analytics tools for monitoring application performance, user behavior, and generating actionable insights.File Storage
Built-in file storage management for handling uploads, downloads, and secure file sharing.Search Engine
Full-text search capabilities to enhance data accessibility and user experience.
These future implementations aim to make Newlink a comprehensive and indispensable tool for developers across a wide range of applications and industries.
Getting Started
Newlink is a monorepo managed with Lerna, making it modular and scalable for diverse project requirements.
Prerequisites
Ensure you have the following installed:
- Node.js (v20 or later)
- npm (v8 or later)
Installation
Use the Newlink CLI to quickly initialize your project:
npx @newput-newlink/cli
cd my-projectInstallation Process
During installation, the CLI will guide you through two key configuration steps:
-> Architecture Selection: Choose between Monolithic or Microservice architecture based on your project requirements. -> Service Setup: You'll be prompted to enable the various services. Enter 'Y' to include this feature in your installation.
The CLI tool handles all dependency installation and initial setup automatically, creating a production-ready service configured to your specifications. What Happens Next? After completing these steps, the NewLink CLI will:
Install all required dependencies Generate necessary configuration files Set up your chosen architecture Configure the services Initialize your project with the selected settings
Now your NewLink service is ready for development and deployment.