All Projects → emjimadhu → monorepify

emjimadhu / monorepify

Licence: MIT license
A boilerplate for monorepo architecture using frameworks.

Programming Languages

Vue
7211 projects
typescript
32286 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to monorepify

renestql
React, NestJS & GraphQL monorepo boilerplate managed with nx
Stars: ✭ 25 (-32.43%)
Mutual labels:  monorepo, nestjs
ogma
A monorepo for the ogma logger and related packages
Stars: ✭ 201 (+443.24%)
Mutual labels:  monorepo, nestjs
Ngx Starter Kit
🅰️ Angular 🚀 NestJS 🐒 Starter Kit
Stars: ✭ 479 (+1194.59%)
Mutual labels:  monorepo, nestjs
react-ecommerce
E-commerce monorepo application using NextJs, React, React-native, Design-System and Graphql with Typescript
Stars: ✭ 136 (+267.57%)
Mutual labels:  monorepo, nestjs
Stator
Stator, your go-to template for the perfect stack. 😍🙏
Stars: ✭ 217 (+486.49%)
Mutual labels:  monorepo, nestjs
fast-nest
帮助您快速初始化基于Nest.js的node后端服务
Stars: ✭ 22 (-40.54%)
Mutual labels:  nestjs
nest-queue
The queue package for your NestJS Applications
Stars: ✭ 35 (-5.41%)
Mutual labels:  nestjs
nodejs-integration-tests-best-practices
✅ Beyond the basics of Node.js testing. Including a super-comprehensive best practices list and an example app (April 2022)
Stars: ✭ 2,842 (+7581.08%)
Mutual labels:  nestjs
monorepo-utils
A collection of utilities for monorepo/lerna. Tools for TypeScript project references etc..
Stars: ✭ 143 (+286.49%)
Mutual labels:  monorepo
nestjs-objection
Objection module for NestJS
Stars: ✭ 24 (-35.14%)
Mutual labels:  nestjs
nextjs-dapp-starter-ts
A fullstack monorepo template to develop ethereum dapps
Stars: ✭ 228 (+516.22%)
Mutual labels:  monorepo
server
A server for tf2pickup.org
Stars: ✭ 16 (-56.76%)
Mutual labels:  nestjs
react-native-web-monorepo-navigation
⚛️ An opinionated universal navigation strategy for codebases containing both React & React Native
Stars: ✭ 24 (-35.14%)
Mutual labels:  monorepo
finance-project-ddd
Projeto financeiro usando domain driven design, tdd, arquitetura hexagonal e solid
Stars: ✭ 67 (+81.08%)
Mutual labels:  nestjs
nest-next-sample
NestJS + Next.js sample application / Backend and Frontend use only TypeScript!!!
Stars: ✭ 110 (+197.3%)
Mutual labels:  nestjs
nest-convoy
[WIP] An opinionated framework for building distributed domain driven systems using microservices architecture
Stars: ✭ 20 (-45.95%)
Mutual labels:  nestjs
flex-plugin-builder
Packages related to building a Twilio Flex Plugin
Stars: ✭ 69 (+86.49%)
Mutual labels:  monorepo
yall
Yarn/npm for monorepos
Stars: ✭ 27 (-27.03%)
Mutual labels:  monorepo
uni-pushy-server
upushy 热更新后端。https://upushy.yoouu.cn/
Stars: ✭ 30 (-18.92%)
Mutual labels:  nestjs
fast-vite-nestjs-electron
Vite + Electron + Nestjs with esbuild, crazy fast! ⚡
Stars: ✭ 128 (+245.95%)
Mutual labels:  nestjs

Contributors Forks Stargazers Issues GitHub last commit MIT License

monorepify-logo

Monorepify

A boilerplate for Full stack VueJS and nestJS and other typescript frameworks too. But i believe you can add JS frameworks too (with little modification)

Report Bug · Request Feature

Table of Contents

About The Project

Monorepify Screen Shot

I like monorepos for code sharing between multiple projects in a single codebase. For other frameworks like angular, react, nest, express, There is wonderful tool called NX. They don't support Vue (for now). That's why i created this boilerplate. But you can you any JS Frameworks with little tweaks!

A list of commonly used resources that I find helpful are listed in the acknowledgements.

Built With

Getting Started

Required Versions

  • node - v12.13.1
  • npm - v6.12.1
  • yarn - v1.21.1
  • vue - v4.1.1
  • nest - v6.5.9

Prerequisites

Tools and Services need to run this app.

  • node
# Mac and Linux using nvm (node-version-manager)
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash

nvm install v12.13.1
  • yarn
# Mac
brew install yarn

# Debian / Ubuntu
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update && sudo apt install yarn
  • nestjs
# Mac and Linux using nvm (node-version-manager)
npm i -g @nestjs/cli

Installation

  1. Clone the repo
# SSH
git clone [email protected]:emjimadhu/monorepify.git

# HTTPS
git clone https://github.com/emjimadhu/monorepify.git
  1. Install NPM packages
yarn install

Scripts

  • yarn dev:all:start - Starts Development server for shared, vue and nest,
  • yarn dev:all:build - Builds shared, vue and nest,
  • yarn dev:vue:start - Starts vue development nest,
  • yarn dev:vue:build - Builds vue,
  • yarn dev:vue:lint - Lints vue,
  • yarn test:vue:unit - Unit testing for vue,
  • yarn test:vue:e2e - End to End testing for vue,
  • yarn dev:nest:start - Starts nest development server,
  • yarn dev:nest:build - Builds nest,
  • yarn dev:nest:lint - Lints nest,
  • yarn prod:nest:start - Starts nest in production mode,
  • yarn dev:shared:start - Starts shared development nest,
  • yarn dev:shared:build - Builds shared,
  • yarn dev-shared:vue:start - Starts shared and vue in development mode,
  • yarn dev-shared:nest:start - Starts shared and nest in development mode,
  • yarn dev-shared:vue:build - Builds shared and vue,
  • yarn dev-shared:nest:build - Builds shared and nest,
  • yarn utils:remove-node-modules - Removes all node_modules folders

Directory Structure

  • root: Project root holds all the fies of the project
    • apps: Holds client(VueJS) and server(NestJS) projects (You can add any client or server frameworks in here in addition or replace with existing ones. See section Add other frameworks in How To)
      • vue: A Vue project created using vue-cli
      • nest: A Nest project created using nest-cli
    • libs: Holds all the common codes you can share between projects
      • shared: A shared module for common code sharing across projects in this work space.
    • readme-images: Holds all the images for README.

How to

  • Code Scaffolding

    • VueJS

      • cd apps/vue
      • # Run any vue-cli commands in here
    • NestJS

      • cd apps/nest
      • # Run any nest-cli commands in here ex: nest g m <module-name>
    • Shared (Typescript)

      • cd libs/shared
      • # Creae any number of codes that you want to share and make sure you export the files in index.ts
  • Add other frameworks

    • Angular (Example)

      • cd apps
      • ng new <app_name>
      • Remove node_modules and package-lock.json in <app_name>
      • tsconfig.json: Put ../../tsconfig in extends field of tsconfig and remove common tsconfig options which can be shared across projects.
      • tslint.json: Put ../../tslint in extends field of tslint and remove common tslint options which can be shared across projects.
      • Run cd <root_directory> && yarn utils:remove-node-modules && yarn install
      • Look at branch enhancement/new-angular-app for example setup
    • I believe you can add other typescript frameworks with this same steps! (You can even add native JS frameworks with little of tweaking)

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Em Ji Madhu - LinkedIn

Project Link: Monorepify

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].