Environment Setup¶
What Is My Environment?¶
Your Environment is cloud-based and runs entirely in your browser. You open a URL and everything is ready. No installation needed.
What is a development environment?
A development environment is a set of tools that let developers write code, run programs, manage files, and test their work. Setting one up normally takes hours: installing the right versions of programming languages, downloading libraries, configuring settings, troubleshooting compatibility issues. It's tedious even for experienced engineers. Your Impact Lab Environment eliminates all of that. Think of it as a pre-configured laptop in the cloud, already set up by someone who knew exactly what you'd need.
Signing Up¶
Every person on your team needs their own account.
- Open https://kr.impactlab.rise8.us in your browser.
- Sign up for an account. You will need the event code provided by your facilitator. Use any email you have access to right now. Personal email is fine.
- Log in with your username and password.
Forming Your Team¶
Once everyone has an account, it's time to set up your team's project.
Choose a project name. Talk with your team and agree on a name if you haven't already. This name becomes part of the URL for your team's application, so pick something that's a unique reflection of your team. Don't spend too much time on this.
One person on your team is the captain. The captain is the only person who creates the project. Everyone else, sit tight: you'll need to wait until the project is created before you can join it.
Only the captain creates the project
If multiple team members try to create projects at the same time, it will cause problems. You'll end up in a project you didn't intend to join and will need to leave it before you can join your actual team's project. Wait for your captain to finish before the rest of the team proceeds.
If you're the captain¶
- From your dashboard, find the Your Domains section and click Create a Project.
- Fill in the project name your team chose above, then click Create Project.
- Once the project is created, let your team know they can join.
- Wait for your entire team to have clicked Join Team, then approve their requests to join the project.
If you're not the captain¶
- Wait for your captain to finish creating the project.
- Look for your captain's name or your project name. Click the Join Team button next to your project name.
- The captain will review and approve your request. Once approved, you're in.
Once everyone on the team has joined the project, wait a few minutes for your workspace to spin up. Your team is set up and ready to go.
Environment Orientation¶
Your Dashboard¶
Within your dashboard, you will see a section for your project. Within your project, you will see four buttons:
- Workspace: opens the page where you talk to your AI coding assistant in plain English and it builds your application.
- Live Preview: opens a live preview of the application you and your assistant are building. Changes show up in real time.
- Production: opens your production site. After your code is deployed, this is the URL that anyone can visit.
- Files: opens your team's project on GitLab, where your source code is synchronized across your team, deployments happen, and you can track issues.
The first two are the ones you'll use most. Click Workspace to build, Live Preview to see what you're building.
First time in the AI Assistant¶
Click the Workspace button. This will open the page where you can talk to your AI coding assistant. You'll see a terminal panel taking up most of the screen. The first time you launch, the assistant will walk you through a few setup questions. Here's what to expect:
- Trust the folder: You'll see a pop-up asking "Do you trust the authors of the files in this folder?" Click "Yes, I trust the authors".
- Theme: It may ask if you want light or dark mode. Pick whichever you prefer.
- Security Notice: Acknowledge that your AI Assistant can make mistakes. In this lab, we have put guardrails around what your AI Assistant can do to limit costly mistakes.
- Terminal setup: You'll be asked "Use Claude Code's terminal setup?" Select "1. Yes, use recommended settings" and press Enter.
- Accessing Workspace: Say "Yes I trust this folder"
Your assistant can work independently. Is that safe?
For the purposes of Impact Lab, we have automatically configured your AI assistant to work independently. This is called Bypass Permission mode, which lets your assistant make changes to files, run commands, and install packages without asking you to approve each action individually.
Your Environment has guardrails that limit what the assistant can do, and working in this mode lets you focus on what you're building rather than managing the tool. Without it, the assistant would pause and ask permission before every action, which slows things down and, for those less familiar with the technical details, surfaces decisions that are hard to evaluate.
Outside of this lab environment, you may want to be more deliberate about how much autonomy you give an AI assistant. The right level depends on the environment, the sensitivity of the work, and how much you trust the guardrails around it.
To make sure everything is working, try asking your assistant in the terminal panel:
What do I have here?
If the Workspace is set up correctly, it will describe the environment and confirm you're ready to build. Your assistant may also ask for your name, role, and what you're working on during this first interaction. Answer naturally. It saves this to a file so it can address you by name and understand your context going forward.
New to the Workspace interface?
Your development workspace runs on a widely used application called VS Code. Standard VS Code allows you to view files, write code yourself, run commands, and do many other things. For our purposes, we've hidden most of these panels, and you shouldn't need to touch them at all during this lab.
The one panel that matters most is the terminal. You should see it taking up most of the screen. This is where you talk to your AI assistant: you type in plain English, and it responds. No buttons, no menus, just conversation.
Here are a few things that will help in the terminal panel:
- It's keyboard-driven. You type your message and press Enter to send it.
- Copy and paste. Select text with your mouse to copy, then paste where you're typing. On Mac, use Cmd+C and Cmd+V. On Windows, use Ctrl+C and Ctrl+V (or right-click to paste).
- Start over. If you're mid-sentence and want to clear what you've typed, press Ctrl+C (Mac and Windows) to cancel and get a fresh line.
- Scroll. Use your mouse wheel or trackpad to scroll up through earlier output.
- Arrow keys. Left and right arrows move within what you're currently typing. Up arrow recalls your last message.
- Clicked outside the terminal? If you accidentally click somewhere else in VS Code and the terminal loses focus, click back inside the terminal panel to resume typing.
That's all you need. If something feels unfamiliar, just keep typing and pressing Enter.
Your Live Preview¶
Click Live Preview to see your application running inside your development environment. This is a preview, running in your development environment. You and your team can see it. As you make changes, you can see them reflected here live.
Clicking this for the very first time, you should see the text "Hello World"
How does the preview compare to a production deployment?
The preview is different from a production deployment, which you'll do later in the field guide. A production deployment takes your application through the deployment pipeline and puts it on a public URL that anyone can access from any browser. Production deployments are vetted for security and quality. To see your production deployment, click the Production button on your dashboard. The preview is your window into what your assistant is building in real time.
Why the Terminal Takes Center Stage¶
Your Workspace is VS Code, and the terminal panel is front and center. The file explorer and other panels are hidden by default. That's intentional. You'll work primarily through conversation with your AI assistant: ask it to explain what's in the project, tell it what to change, ask it where things are.
Why hide the file system?
If you're someone who's used to browsing files, reading code line by line, and editing things directly, this training is asking you to try something different. Instead of thinking about code at the file level, think in terms of user stories and prompts. Move up the abstraction chain. Describe what you want in natural language and let your AI assistant handle the files.
This is a core skill the Impact Lab is designed to build. Natural language conversation with AI is the part most people need the most practice with. If you have a habit of reaching for the file system, this is the time to break it. Give it a genuine try. You might be surprised how far you can get without ever opening a file.
The one exception: if you need to upload an external file to your Workspace (an image, a PDF, or another resource you want to provide to your AI assistant), opening the file panel and dragging it in is the way to go.
Your Workspace and Your Team¶
Each team member gets their own Workspace, but every Workspace on your team connects to the same project on GitLab. Think of it like everyone having their own computer, but working on the same shared document. When you Save & Sync your work, your changes go to that shared project. Your teammates can then pull those changes into their own Workspace.
This means multiple people can work from their own Workspace at the same time, but coordinating those changes gets complicated fast. For Beginner and Intermediate tracks especially, we recommend your team work together on one screen (called "mobbing"). One person drives, everyone else navigates. This keeps the whole team on the same version and avoids the headaches of merging conflicting changes.
What's Pre-Configured¶
Your workspace comes ready to go with everything your team needs to build, test, and deploy your application.
Your workspace runs on a Chainguard container image, a hardened, minimal base that's rebuilt nightly with zero known vulnerabilities. This means your development environment is secure by default, without your team needing to worry about patching or maintaining it.
Here's what's included:
- Your AI assistant: already running when you click the Workspace button, ready to build through conversation
- A web application framework: for building your application's pages, logic, and interface
- A database: for storing and retrieving data that persists across sessions
- Source control: tracks every change so you can undo mistakes and collaborate without overwriting each other's work
- A deployment pipeline: takes your code and makes it available as a live application at a public URL
Your Tech Stack
You don't need to know any of this to succeed in the Impact Lab. This is here for people with a technical background who are curious.
For those who want to know what's under the hood:
- Hono - your web framework. A lightweight, modern alternative to Express that handles HTTP requests, serves your frontend, and exposes API routes. It's what's running when you hit your web app preview.
- Bun - your runtime and package manager in one. It runs your TypeScript code with no compile step, installs dependencies (
bun install), and runs your tests. Like Node.js + npm, but significantly faster. - TypeScript - the language everything is written in. JavaScript with a type system, so errors get caught before your code runs rather than at runtime.
- Biome + ESLint - code formatting and linting that enforces consistent style and catches common mistakes automatically.
- PostgreSQL - your relational database. Starts automatically in your workspace for local development. A dedicated cloud database is provisioned for you in production on first deploy.
CI/CD Pipeline Stages
This is included for transparency. You don't need to understand any of this to succeed.
Your deployment pipeline runs on GitLab and triggers on every git push. It has two phases:
Build and deploy your app:
| Stage | What It Does |
|---|---|
| Lint | Checks code formatting and TypeScript types; zero warnings allowed |
| Test | Runs unit tests, static security analysis, secret detection, and dependency vulnerability scanning |
| Build | Packages your application into a deployable container image |
| Deploy | Deploys the container to AWS; your app goes live at its public URL |
Security and compliance (runs automatically, no action needed):
| Stage | What It Does |
|---|---|
| Scan | Scans the container image for vulnerabilities; generates a software bill of materials (SBOM) |
| STIG Check | CIS Docker Benchmark compliance check |
| Gatecheck | Policy evaluation; all prior security gates must pass before deployment proceeds |
| Sign | Cryptographically signs the container image for supply chain integrity |
| DAST | Runs a dynamic security scan against the live deployment |
| Evidence | Uploads security artifacts (SBOM, scan results, signatures) as a body of evidence |
You're Ready¶
If your assistant responded to "What do I have here?" and you can see the Live Preview, you're all set.
The next step depends on the track you're in. Check your schedule and follow any instructions from your facilitator on what comes next.