npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

servitect

v1.2.2

Published

servitect stands for Server-Architect. A one-click Node.js MVC Server generator

Downloads

80

Readme

Servitect - A one-click Node.js MVC Server generator

Server + Architect = Servitect

Automate the creation of a well-structured Model-View-Controller (MVC) pattern for your Node.js projects with ease. Servitect is designed to help developers quickly scaffold a project, follow best practices, and integrate various functionalities with minimal setup.

🤔 Why Servitect?

Servitect is designed to simplify and accelerate the server development process by automating the setup of essential components for a modern backend. Here’s why you should choose Servitect:

  • 🏎️ Speedy Development: Perfect for hackathons and rapid prototyping, Servitect allows you to set up a fully functional server in minutes, letting you focus on building unique features and meeting tight deadlines rather than getting stuck in setup.

  • 🗄️ MongoDB Integration: With built-in support for MongoDB, Servitect is ideal for modern applications that need a flexible and scalable NoSQL database.

  • ⚙️ Customizable: Servitect’s menu-driven approach allows you to pick and choose the features you need, giving you flexibility while still automating repetitive tasks.

Servitect streamlines the backend creation process, allowing developers to focus on building what matters most. Whether you're a beginner or an experienced developer, Servitect provides the tools you need to jumpstart your server development!

🚀 Features

Servitect comes with a variety of built-in features that streamline the development process:

1. 📁 MVC Folder Structure Generation

  • Automatically generates a standard Model-Controller folder structure.
  • Creates the directories and files for:
    • Models: MongoDB Schema definitions and database models.
    • Controllers: Handles logic and data flow between models and views.
    • Routes: Defines CRUD endpoints.

2. ✅ Best Practices for Scalability and Error Handling

  • Comes with pre-configured global error-handling mechanisms.
  • Implements best practices for middleware and request validation.
  • Follows scalable design patterns to ensure maintainability even as your application grows.

3. 🔒 Authentication APIs

  • Provides basic authentication APIs.
  • JWT-based authentication is available for secure user sessions.
  • Auto configures authentication for any actor entity in your project.

4. 📝 CRUD API Generation

  • Quickly generate Create, Read, Update, Delete (CRUD) APIs for any entity.
  • Ensures consistency in API design.

5. 📤 File Uploads to Cloudinary

  • Includes an option to add file upload functionality to Cloudinary.
  • Configured with Cloudinary integration, making it easy to manage media assets.

6. 🟢 WhatsApp Notifications Integration

  • Integrates with WhatsApp on the fly for sending notifications directly from your application.
  • Useful for sending alerts, reminders, or updates to users.

7. 🔔 Firebase Cloud Messaging API Integration for Mobile Apps

  • Provides a simple setup for Firebase Cloud Messaging (FCM).
  • Send push notifications to users.
  • Great for real-time updates and user engagement.

8. 📨 NodeMailer Integration

  • Integration with NodeMailer for email communication.
  • Quickly set up email functionality to send password resets, welcome emails, and more.

9. 💬 Chat Logic with Database Model and API Creation

  • Ready-to-use logic for implementing chat features.
  • Generates chat database models and API endpoints.
  • Easily set up messaging functionality within your applications.

10. 🐳 Docker Setup

  • Quickly containerize your application with a pre-configured Docker setup.
  • Generates Docker files for easy deployment, ensuring consistency across different environments.

📦 Installation

Install Servitect using npm:

npm install -g servitect

For Linux and Mac users:

sudo npm install -g servitect

🏁 Quick Start

After installation, you can create a new MVC project by running:

mvc-create

Follow the Menu to configure your project.

📚 Usage

Creating a New Project

  1. Open your terminal
  2. Navigate to the directory where you want to create your project
  3. Run the command
    npm i -g servitect
  4. Run the command
    mvc-create
  5. Follow the Menu to configure your project.
  6. Run the command:
    cd project-name
    npm run server
    to run the server. If you see connected on your console, your APIs are ready to test.

🗂️ Project Structure

Here's an overview of the generated project structure:

my-project/
│
├── models/
├── controllers/
├── middleware/
│── helper/
│── public/
│
├── .env
├── .gitignore
├── package.json

🔌 Integrations

1. Cloudinary Setup

To enable file uploads with Cloudinary:

  1. Sign up for a Cloudinary account

2. Firebase FCM Setup

To use Firebase Cloud Messaging:

  1. Create a private key file.
  2. To create the file, set up a Firebase project using the Firebase Console.
  3. Go to 🛠️ Settings -> ⛅ Cloud Messaging tab. Enable it.
  4. Go to Service accounts tab -> generate 🔐 private key.
  5. Copy the content of that file as it is to 📂 "firebase-key.json".

3. Whatsapp Setup

To use Whatsapp APIs, refer the official documentaion:

🐣 New to Development? We’re Here to Help!

If you are just starting your journey in server development or find certain concepts challenging, rest assured that we have the resources to assist you:

  • YouTube Tutorials: Visit our YouTube channel for comprehensive tutorials that guide you through the process of using Servitect and understanding the generated code.

  • In-Depth Documentation: Access our detailed documentation that covers features, commands, and industry best practices in a clear and approachable manner.

  • Community Support: Connect with us on LinkedIn for community support. Feel free to reach out with any questions or share your experiences. I’m here to provide assistance!

With these resources at your disposal, you’ll be well-equipped to leverage Servitect and develop outstanding applications efficiently and on the go.

🤝 Contributing

Contributions, issues, and feature requests are welcome! Feel free to check issues page.

📄 License

This project is MIT licensed.

🙏 Acknowledgements

  • Thanks to all contributors who have helped shape Servitect
  • Inspired by the need for rapid, scalable server development in the Node.js ecosystem

🚀Happy Coding!

Made with ❤️ by Elite Coders