Home

Awesome

node-base

Usage

Base commands

# Runs the command inside an ephemeral container using the app service described in the docker-compose file as a base (use the --root flag if the command should be run as root)
$ dbin/run [--root] <command>

# Rebuild the image after any changes to the dockerfile
$ dbin/build

# Remove all containers and their volumes (WARNING any cache or files not stored in the filesystem will be deleted)
$ dbin/dispose

# Moves the target folder contents to the root folder and deletes the target folder
# it also renames this file to INSTRUCTIONS.md
$ dbin/mvroot <target>

# Appends a RUN command to the base image, useful to install new packages
$ dbin/chimg <command>

Aliases

# Creates a new <name> file in dbin to alias the <command> inside the docker container (use the --root flag if the command should be run as root)
$ dbin/mkalias [--root] <name> <command>

# Opens a new terminal in the project folder (use the --root flag if the shell should assume the root user)
$ dbin/shell [--root]

# Runs npm in the project folder
$ dbin/npm

# Runs npx in the project folder
$ dbin/npx

# Runs yarn in the project folder
$ dbin/yarn

Helpers

# Adds dbin folder to the PATH only for the current terminal session.
$ source dbin/local-env

# After using this command you can use the any script inside the dbin folder without the dbin/ prefix

Examples

React Native with Expo

# Clone this repository
$ git clone --depth=1 https://github.com/brunohcastro/node-base.git my-awesome-expo-app

# Install expo-cli
$ dbin/npm install -g expo-cli

# Create an alias for using the local expo
$ dbin/mkalias expo expo

# Create a new expo app
$ dbin/expo init my-app

# Move the contents of the my-app folder over to the root repo folder
$ dbin/mvroot my-app

# Start the application
$ dbin/expo start

NextJS

# Clone this repository
$ git clone --depth=1 https://github.com/brunohcastro/node-base.git my-awesome-nextjs-app

# Create the application
$ dbin/npx create-next-app my-app

# Move it to the root folder
$ dbin/mvroot my-app

# Start the application in development mode
$ dbin/npm run dev

Create T3 App

# Clone this repository
$ git clone --depth=1 https://github.com/brunohcastro/node-base.git my-awesome-t3-app

# (optional) Remove the .git folder to let the cli create a brand new git repo
$ rm -rf ./.git

# Create the application
$ dbin/npx create-t3-app my-app

# Move it to the root folder
$ dbin/mvroot my-app

# Start the application in development mode
$ dbin/npm run dev