Skip to content

Onboarding

Harsheel Singh edited this page Apr 25, 2024 · 5 revisions

Software and Tools Needed

Git

Download Git

  • Git is a distributed version control system that allows multiple developers to collaborate on a project efficiently.
  • It enables you to track changes, manage different versions of your codebase, and coordinate work among team members.
  • Git is crucial for maintaining a coherent and organized codebase, tracking changes, and facilitating collaboration.

Node.js

Download Node.js

  • Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine.
  • It allows you to run JavaScript code on the server side, enabling the development of scalable and high-performance web applications.
  • In a MERN stack application, Node.js serves as the runtime environment for the server-side code, facilitating backend development with JavaScript.

Yarn

Download Yarn

  • Yarn is a fast and reliable package manager for JavaScript, offering parallel installation and deterministic dependency resolution.
  • It simplifies the process of installing, upgrading, and managing dependencies for both backend (Node.js) and frontend (React.js) components.
  • Yarn streamlines the development workflow, ensuring consistent and reliable dependency management across different environments, thus contributing to a smoother development experience.

Software and Tools Recommended

GitHub Desktop

Download GitHub Desktop

  • GitHub Desktop is a graphical user interface (GUI) for Git that simplifies the process of working with Git repositories.
  • It provides an intuitive interface for managing branches, committing changes, and synchronizing with remote repositories hosted on GitHub.
  • GitHub Desktop is especially useful for developers who prefer a visual approach to Git management or are new to version control.

Visual Studio Code

Download VS Code

  • VS Code is a lightweight and highly customizable source code editor developed by Microsoft.
  • It offers a rich set of features, including syntax highlighting, code completion, debugging, and extension support.
  • VS Code is widely used by developers for its efficiency, extensibility, and seamless integration with various tools and technologies, making it an ideal choice for MERN stack development.

Node Version Manager

Download NVM

  • NVM is a version manager for Node.js, allowing you to install and switch between multiple versions of Node.js on your system.
  • It enables developers to work with different Node.js versions across projects, ensuring compatibility and flexibility.
  • NVM simplifies the process of managing Node.js installations and helps avoid conflicts between different projects requiring specific Node.js versions.

Postman

Download Postman

  • Postman is a popular API development tool used for testing and debugging APIs.
  • It provides a user-friendly interface for sending HTTP requests, inspecting responses, and organizing API endpoints.
  • Postman streamlines the process of API testing by offering features like automated testing, collection sharing, and environment management, making it an essential tool for backend development in a MERN stack application.

Getting Started with the Project

  1. Clone the Repository
git clone https://github.com/UoaWDCC/uads-member-app-v2.git
  1. Create a new terminal and install the necessary Backend packages (Terminal 1)

NOTE: The 2 commands below should be run on the uads-member-app-v2\backend directory

cd backend
yarn install
  1. Run the Backend in Terminal 1

NOTE: The command below should be run on the uads-member-app-v2\backend directory

yarn run dev

You should see a Listening on port 3000 to verify that your backend is running correctly

  1. Create a new terminal and install the necessary Frontend packages (Terminal 2)

NOTE: The 2 commands below should be run on the uads-member-app-v2\web directory

cd web
yarn install
  1. Run the Frontend in Terminal 2

NOTE: The command below should be run on the uads-member-app-v2\web directory

yarn run dev

You should see a http://localhost:5173/ URL link which you can click to launch the frontend