Giter Club home page Giter Club logo

nestjs-boilerplate's Introduction


Quickly start your Nestjs projects in seconds
A production ready scalable NestJS boilerplate with batteries included. No Kidding!

Features

  • Quick Setup - Quickly setup and configure your application. See more

  • Fully integrated ObjectionJS - Any applications requires database, so we have integrated ObjectionJS (why?) along with custom repositories and methods. See more

  • Request & Response Helpers - Easy and elegant request and response helpers, so that you don't ever do tedious tasks. See more

  • Beautiful Response Transformers - Transform your response beautifully and cleanly. Dynamically transform response from API. See more

  • Custom Validators and Functions - With the help of custom validator functions, you can validate your incoming data with ease. See more

  • Native support for console commands - Create your custom commands the way you like. Includes many helper functions to help you interact with cli easily. See more

  • Elegant Event Listeners - Custom implementation of event listeners. Now, run your decoupled code beautifully without ever bothering of shaking the main code. See more

  • Localization - Localization provides a convenient way to retrieve strings in various languages, allowing you to easily support multiple languages within your application.

Documentation

To read the complete documentation, click here.

Contributing

To know about contributing to this boilerplate, read the guidelines here

About Us

We are a bunch of dreamers, designers, and futurists. We are high on collaboration, low on ego, and take our happy hours seriously. We'd love to hear more about your product. Let's talk and turn your great ideas into something even greater! We have something in store for everyone. โ˜Ž๏ธ ๐Ÿ“ง Connect with us!

License

The MIT License. Please see License File for more information. Copyright ยฉ 2020 SquareBoat.

Made with โค๏ธ by Squareboat

nestjs-boilerplate's People

Contributors

babygame0ver avatar mario-rggj avatar mohanbarman avatar prasoon0909 avatar rasikraj01 avatar rohan9896 avatar samuelsweet avatar sb-vinayak avatar vinayak25 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nestjs-boilerplate's Issues

Adding Prisma ORM

Hey Vinayak,
Can Prisma be added instead of Objection, It is planned to support MongoDB along with all rest of SQL's

If I plan to replace it I suppose DB folder inside core would be the correct file to do right?

Any thoughts

Suggestions

introduction for

docker envirionment for database, and redis for caching on controllers

dynamic group permissions for users + its middleware

Nested Include not working in Transformers

Currently, includes in Transformer work on first level only, ie: includes=orders,invoices will include two attributes, orders and invoices.

But it would be nice to have, load nested relations like "orders.products,invoice", which will include the attribute "products" mentioned inside order's transformer.

`node cli init` command not working

Describe the bug
After cloning the project, installing dependencies, and building it successfully, when trying to run the command node cli init as detailed in the doc, I'm getting the following error:

[@squareboat/nestjs-objection] 'pg' validating connection...
[@squareboat/nestjs-objection] 'pg' connection failed, REASON: connect ECONNREFUSED ::1:5432
 init : command not found 

To Reproduce

Based on the documentation:

  1. Clone the project
  2. install dependencies with npm: npm install
  3. build the project: npm run build
  4. Finally run the project cli with node cli init

Expected behavior
The node cli init command runs properly

Screenshots
image

Desktop (please complete the following information):

  • OS: Windows10
  • Version: Node v18.16.0

Any suggestion for db sharding?

Hi, this boilerplate is awesome. Any idea to support database sharding, kind of choosing connection based on user Id at runtime. Thank you!

Test coverage

Do you have a plan for the unit test and e2e test?

Could you guys implement sso with key cloak

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Adding Authentication & Authorization Middleware

this is an awesome boilerplate
but I think it should also include API Authentication & Authorization Backend
can be integrated using the passport
supported Authentications can be:

  • JWT

for Authorization, there could be a base Gaurd to create roles and permission for Authorization

what is the use case of WithAlias decorator?

file path <project_dir>/libs/core/src/http/decorators.ts

file content:
`import { ROUTE_NAME } from './constants';
import 'reflect-metadata';

export function WithAlias(name: string) {
return function (
target: Record<string, any>,
propertyKey: string,
descriptor: PropertyDescriptor,
) {
Reflect.defineMetadata(ROUTE_NAME, name, target, propertyKey);
};
}
`

Update make:migration command documentation

Hello ๐Ÿ‘‹

Thank you for this really nice pieces of software, perfectly suited for my side project. Hope this does not die unmaintained :-)

Wasn't able to find the documentation repo, so I put it here.

On https://squareboat.com/open-source/nestjs-boilerplate/database/migrations the "Create new migration" the command should be updated, since the command interface does not have named attributes.

node cli make:migration create_users_table

Best, Markus

ADD : Support for console commands(CLI)

Is your feature request related to a problem? Please describe.
Add support for CLI applications

Describe the solution you'd like
The ability to run console commands in npm to run single-run only tasks.

Describe alternatives you've considered
None

Additional context
N/A

Is it possible to enhance database features with mongodb

I like this boilerplate very much. Honestly, there is not much active nestjs projects like this one.
However, I use mongodb in my project, and looking forward for this project to support mongodb. But as I am not clear with the backend ORM package, and not clear whether it is possible.

Error when running seeders

Describe the bug
Cant run seeder

To Reproduce
Steps to reproduce the behavior:

  1. enter npm run seed:run in commanline after following installation and configuration instructions in docs

  2. See error - No configuration file found and no commandline connection parameters passed
    Error: No configuration file found and no commandline connection parameters passed

Desktop (please complete the following information):

  • OS: MacOS
  • Version: Node 18.7.0

Thanks

Got error when try command migrate:status

Describe the bug
The bug occurs when try migrate status command

To Reproduce
Steps to reproduce the behavior:

  1. Run command: "node cli migrate:status"
  2. See error
    dist/libs/core/src/console/dbOperations.js:54
    statusList.push({ migration: migration.file, status: chalk.green('Y') });

Desktop (please complete the following information):

  • OS: MacOS
  • Node version: 16.x

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.