Coder Social home page Coder Social logo

vigilant's Introduction

Vigilant

The Vigilant Project is a bootstrap for monorepos with an api as backend and frontend based on Vue. The monorepo is supported by turborepo.

Content

This Turborepo includes the following packages and apps:

Apps

Packages

Utilities

This turborepo has some additional tools already setup for you:

Scripts

  • clean clean up all projects from build, cache and node modules files.
  • lint run linter on all projects
  • test run testing on all projects
  • build run build on all projects
  • dev start development mode on all projects

The development mode start the backend api and the front ends at once.

Technologies

Technologies used in the project.

  • turborepo to manage the monorepo
  • Typescript for static type checking on frontend applications
  • ESLint for code linting
  • XO for linting NodeJS applications
  • Jest test runner for frontend applications
  • AVA test runner for NodeJS applications
  • Prettier for code formatting
  • VitePress for documentation

OUI Package a Git Submodule

To unleash the full power of a monorepo we implement the OUI package as a git submodule. Here are the commands you need for installtion and some help to handle git submodules.

In order to add a Git submodule, use the “git submodule add” command and specify the URL of the Git remote repository to be included as a submodule.

Add submodule

$ git submodule add <remote_url> <destination_folder>

Inital pull of submodule

To pull a Git submodule, use the “git submodule update” command with the “–init” and the “–recursive” options.

$ git submodule update --init --recursive

Update exiting submodule

In order to update an existing Git submodule, you need to execute the “git submodule update” with the “–remote” and the “–merge” option.

$ git submodule update --remote --merge

Fetch from submodule

To fetch new commits done in the submodule repository, head into your submodule folder and run the “git fetch” command first (you will get the new submodule commits)

$ cd repository/submodule 

$ git fetch

Now, if you run the “git log” command again, you will be able to see the new commits you are looking to integrate.

$ git log --oneline origin/master -3

93360a2 (origin/master, origin/HEAD) Second commit
88db523 First commit
43d0813 (HEAD -> master) Initial commit

Now, in order for your submodule to be in-line with the newest commits, you can run the “git checkout” command and specify the SHA that you want to update your submodule to (in this case 93360a2)

$ git checkout -q 93360a2

Remove Git submodules

In order to remove a Git submodule from your repository, use the “git submodule deinit” command followed by the “git rm” command and specify the name of the submodule folder.

$ git submodule deinit <submodule>

$ git rm <submodule>

vigilant's People

Contributors

alexsedeke avatar

Stargazers

Bruno Gomes avatar

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.