Boost NADOO Development: Install & Use Prepared Workspace

Alex Johnson
-
Boost NADOO Development: Install & Use Prepared Workspace

Welcome to the world of NADOO! This guide will walk you through setting up a streamlined development environment using Workspaces. It's designed to get you up and running quickly across our core projects like Launchpad, the Wiki, and more. We're all about making it easy for new contributors to jump in and start contributing, and this prepared workspace is a key part of that.

Understanding the Need for a Prepared Workspace

Why do we need a prepared workspace? Well, imagine trying to build a complex Lego castle, but you have to search for each brick individually, scattered across different rooms. That's what it can feel like trying to contribute to multiple projects without a unified setup. A prepared workspace brings all the necessary pieces together, neatly organized, and ready to go. Our goal is to make contributor onboarding as smooth as possible by providing an opinionated workspace setup. This means we've pre-configured everything to work together, saving you time and headaches.

The Challenges of a Disjointed Development Environment

Without a structured workspace, you might face several challenges:

  • Difficulty in finding the right tools and dependencies: Each project might have its own set of requirements, making it hard to manage everything.
  • Inconsistent environments: Differences in operating systems, tools, and configurations can lead to unexpected errors and debugging nightmares.
  • Time-consuming setup: Manually cloning repositories, configuring environments, and setting up dependencies can take hours or even days.
  • Steep learning curve: New contributors often struggle to understand the overall project structure and how different components interact.

Benefits of a Prepared Workspace

A prepared workspace offers several benefits:

  • Faster onboarding: New contributors can start contributing within minutes, not hours.
  • Consistent environments: Everyone works in the same environment, reducing compatibility issues.
  • Simplified workflows: Pre-configured tools and scripts automate common tasks.
  • Improved productivity: Developers can focus on writing code instead of wrestling with setup issues.
  • Enhanced collaboration: A shared workspace makes it easier for developers to understand each other's work and collaborate effectively.

Setting Up Your Prepared Workspace

Now, let's get you set up with the prepared workspace! This guide will walk you through the process, making it easy to clone, configure, and get started. We aim for a setup time of fewer than 10 minutes, so you can dive straight into contributing.

Step-by-Step Installation Guide

  1. Choose Your Operating System: We support Windows, macOS, and Linux. The instructions are tailored to each, so select the one that applies to you.

  2. Install Required Tools: Ensure you have these tools installed on your system. This may vary slightly depending on your OS, but generally, you'll need:

    • Git: For cloning repositories.
    • VS Code (Recommended): A powerful and versatile code editor. Other editors can be used, but this guide is tailored for VS Code.
    • Node.js and npm (if you're working on projects that use these).
    • Python (if you're working on projects that use Python).
    • A terminal or command prompt.
  3. Clone the Workspace Configuration: We'll provide a VS Code multi-root file and/or a CLI bootstrap script to simplify the setup. Follow the instructions to clone this configuration file or run the script.

  4. Clone the Repositories: Use the provided script or manually clone the following repositories:

    • NADOO-Launchpad: The core CLI, services, and tests.
    • NADOO-Wiki: The contributor handbook and policies.
    • NADOO-Prompt: Prompt collections and templates.
    • NADOO-IT: Web applications and server management practices.
    • NADOO-Academy: Presentations and teaching materials.
  5. Configure Environment Variables: Set up any necessary environment variables. The configuration will guide you through this process. This might involve setting up a GitHub token or other secrets. For security, be careful how you store these.

  6. Open the Workspace: Open the VS Code multi-root file, which will load all the repositories in a single window.

  7. Test the Setup: Run a simple test, such as running Launchpad tests, to ensure everything is working correctly. This confirms that all dependencies are correctly installed and that the projects can interact with each other.

Detailed Instructions for Each Step

Cloning the Workspace Configuration and Repositories

  • VS Code Multi-root File: If we provide a .code-workspace file, simply open it in VS Code. All repositories should load automatically. You may need to install recommended extensions prompted by VS Code.

  • Bootstrap Script: The bootstrap script automates cloning the repositories and setting up your environment. Run this script in your terminal and follow the prompts.

Configuring Environment Variables

Environment variables are crucial for configuring your workspace. For example, you may need a GitHub token to interact with the GitHub API. The exact variables you'll need will be documented. Set these variables in your environment (e.g., using .env files or through your operating system's settings). Avoid hardcoding secrets in your code. The documentation will provide detailed instructions on where to configure these.

Opening the Workspace and Running Tests

  • Opening: Once everything is cloned and configured, open the workspace in VS Code. You should see all the repositories listed in the Explorer panel.

  • Running Tests: To ensure everything is working correctly, run the provided tests. For example, in Launchpad, you might run the test suite using npm test or a similar command. This verifies that your environment is correctly set up.

Core Components of Your Prepared Workspace

Let's take a closer look at the key components of the prepared workspace.

NADOO-Launchpad

NADOO-Launchpad is at the heart of our operations. It contains the core CLI, essential services, and comprehensive tests. Understanding how to use Launchpad is critical, so be sure to check out the quickstart guide, which covers how to run tests and start/stop services directly from the workspace. This is often the first place to start if you're looking to contribute core functionality or test new features.

NADOO-Wiki

NADOO-Wiki serves as our central hub for documentation, contributor handbooks, and project policies. Within the workspace, you can easily access and contribute to the documentation, making it easy to understand the project's goals, and guidelines. You'll find it incredibly useful for finding answers to questions and understanding project standards. It's the go-to resource for understanding the

You may also like