Everything DashCode does, and what comes next.

DashCode is a Mac app that keeps every project you're building in one window: dev servers, Claude Code sessions, terminals, git, files, docs and a roadmap. This page is the full inventory: what works in the app today, what is built for the next release, and what is still only an idea. After that comes the reference: install, the project registry, shortcuts, plans and privacy.

Written for DashCode 2.2.3 · macOS 13 Ventura or later · Apple silicon and Intel

Live in the app now
Partly live some of it works
Coming soon built, not released yet
Exploring an idea, no date

Live now

In DashCode 2.2, today.

Live

Every project on one board

The Overview lists each project with its state, its ports, its branch and uncommitted work, its next roadmap item and its links. The line above the board adds it all up, so "what needs me" is answered before you open anything.

  • Four views, as tabs beside the title: Projects, Changes, Setup and Skills. Changes shows each project's ten newest commits and its uncommitted work, most recently touched first.
  • Start all and Stop all sit at the end of the line. Rows drag to reorder, and the sidebar follows the same order.
  • The git cell opens the project's Git tab, and the roadmap cell its Roadmap. The first link is one click away; the rest wait behind +N.

Overview

3/5 running · 1 starting · 1 crashed 10 changed in 2 projects · 5 to push 6 todo · 1 overdue
🛰️ Orbit NotesNext.js · Neon running :3000 Live site
🤖 Rover APIFastAPI + Vite running api:8000web:5173 Railway
📚 Field GuideAstro docs starting :4321
🌋 Lunar LanderGo game server crashed :8080

The Projects view. A folder folds into a single row.

Live

Start, stop and restart, and nothing left behind

Each project runs in its own process group, so Stop ends the whole tree and frees its ports, including whatever the dev server spawned. A project can run several processes at once, such as an API and a frontend, each with its own command and port.

  • The states: stopped, starting, running and crashed, plus idle for a project with nothing to run yet. "Running" means the port actually answers. DashCode checks it every 1.5 seconds rather than trusting that the command launched.
  • A project with nothing to run still gets consoles, docs, files and a roadmap.
  • A static site needs no Node. A process can be dashcode-serve, DashCode's own file server, given a folder and a port.
  • Quitting stops what DashCode started, so no orphaned dev servers hold ports. This includes a restart to update.
🤖

Rover API

running

Processes

api · PID 48211 · uvicorn main:app --reload:8000
web · PID 48236 · npm run dev:5173

Folder

~/Projects/rover-api

The project header: state, settings, Terminal, Editor and Finder, then Stop, Restart and Open.

Live

New, existing, or cloned from GitHub

The + at the foot of the sidebar opens four choices. Point it at a folder that already runs, and DashCode detects the framework, the start command and a free port. Or start a new project, or clone one.

  • New Project takes a name and a folder, anywhere, even an empty one that already exists. It writes CLAUDE.md and PROJECT.md from your templates, a README, docs/reference.md, docs/log.md and docs/plans/, then runs git init with a first commit.
  • From GitHub takes a page URL, an ssh URL or plain owner/repo, adds the GitHub link to the project, and can install dependencies with npm, pnpm, yarn or bun, whichever the lockfile names.
  • Folder adds a sidebar folder, which is only a label. Nothing moves on disk.
Clone from GitHub

The Add menu and the clone form.

Live

Real terminals and Claude Code, per project

Open as many shell and Claude Code consoles as you need in any project. Each one is a real terminal opened in the project folder, and each comes back with its scrollback after a reload. DashCode runs the claude you already have installed.

  • See what Claude is doing without reading the transcript. A spinner shows it is working, a triangle shows it is waiting for you, and an eye shows it has finished. The triangle stays until Claude actually moves on.
  • Claude picks up where it left off. When DashCode restarts, after an update for example, each Claude tab resumes its conversation.
  • The console bar shows the model and the effort, and switches either from a dropdown. It also shows tokens spent and context used, like 2.0M tok · 12% ctx.
  • File paths, routes and URLs in the output can be clicked. ⇧↵ or ⌥↵ types a newline instead of submitting.
/Users/you/Projects/rover-api waiting for you 2m 10s 2.0M tok · 12% ctx
> why is /rovers slow with a battery filter? ● Read(app/routes/rovers.py)● Update(db/indexes.sql) +1 −0  Added an index on rover_readings (battery). Run the tests?❯ 1. Yes  2. No, and tell Claude what to do differently

A Claude Code console waiting for an answer. Its tab carries the triangle too.

Live

A roadmap per project, that Claude can work from

The Roadmap tab keeps a project's todos and ideas in .dashcode/roadmap.json, in the project folder, where Claude Code can read it too. Each item has notes, a priority, a due date and steps.

  • Start in Claude opens a Claude console on the item. Claude ticks off the steps as it finishes them, and leaves checking off the item to you.
  • Refine with Claude docks a Claude console beside the list. It asks you about the item, then writes its notes and steps.
  • c adds a todo and i an idea. Ideas move to Todo when they're ready, and rows drag to reorder.
  • Overdue items show a red calendar in the sidebar and on the Overview.
Roadmap · Orbit Notes3 todo · 2 ideas · 5 done

Todo

3
Fix sync conflicts on reconnectOct 20
Offline drafts2/4Oct 30
Export a notebook as Markdown

Ideas

2
Shared notebooks
Handwriting on iPad

Todo, Ideas and a folded Done. Start in Claude and Refine with Claude wait on the row you point at.

Live

Logs that were already recording

Every process's output streams live into the Log tab. The last 1,500 lines per process are kept, so opening the tab after a crash shows what led up to it, not an empty screen.

  • Read every process interleaved or one at a time. The process picker appears when there is more than one.
  • Pop a log out into its own window to keep it in view while you work.
all processes ▾
[api] INFO  Uvicorn running on http://127.0.0.1:8000[web]   VITE v6.0.3  ready in 412 ms[web]   ➜  Local:   http://localhost:5173/[api] INFO  127.0.0.1 "GET /health HTTP/1.1" 200[api] WARNING  slow query: 812 ms (rovers.list)[web] 8:41:07 PM [vite] hmr update /src/App.tsx[api] ERROR  Exception in ASGI application[api]   File "app/routes/rovers.py", line 42

Both processes in one stream, tagged by name.

Live

Docs and files without leaving the window

Docs collects each project's README, change log, IDEAS.md and anything else in the root or docs/, rendered and editable. Files is a tree with a real editor. ⌘S saves in both, and ⌘F finds in the open file.

  • Saves never clobber. They are atomic, and if the file changed on disk since you opened it, you choose Reload or Overwrite.
  • Find highlights every match as you type and counts them. ↵ and ⇧↵ step through.
  • Markdown opens rendered, with an Edit ⇄ Preview toggle. Images open as images, and SVGs get both views.
  • Dependency folders and binaries stay out of the tree. .env files are hidden unless you ask for them, and text files are capped at 1 MB.
  • A project without a CLAUDE.md or PROJECT.md gets one in a click, from your templates.
README.md tiles2 of 3
  • docs/
  • src/

Orbit Notes

Offline notebooks for field teams. Next.js on the front, Neon behind it.

Run it

npm run dev serves on :3000.

Notes

  • Map tiles cache in public/tiles/.
  • Old tiles are pruned after 30 days.
  • See docs/log.md for what changed.

A Markdown file, rendered, with Find counting the matches.

Live

Commit, push, pull and branch, without the terminal

The Git tab commits, pushes and pulls. Before anything is swept up, it lists exactly which files the commit will include. If a project keeps a change log in docs/log.md, Use as message turns the new entries into the commit message.

  • Safe by design. Pull only fast-forwards, and push publishes a new branch the first time. Conflicts and credential prompts go to a Console tab rather than hanging the window.
  • Publish to GitHub… appears while a repo has no remote. Pick your account or an organisation, a name, and private or public (private unless you change it), and DashCode creates the repo with your gh sign-in and pushes.
  • The branch chip switches branches, local or remote (git 2.23 or later).
  • History shows the last 30 commits. Pushed ones link to GitHub, GitLab or Bitbucket.

Status

3 changed↑2→ origin/main
Mrovers.pyMlog.mdAindexes.sql
Commit message…

Log

  1. not committed

History

  1. e41c0a9
    Health check reports the databaseyou · 2h ago
    not pushed
  2. pushed to origin/main
  3. 4269562
    Rovers list pages by 50you · 1d ago
    pushed

The new log entry is ready to become the message. Unpushed commits sit above the line.

Live

Info: the stack, the links and a picture of it running

Each project opens on its Info tab: a preview, git, links, processes, your note, the docs, the stack and the folder. Stack scans the folder and groups what it finds as Framework, Data, Services, Hosting and Tooling, so a project that quietly runs on Neon, Stripe and Clerk says so.

  • .env values stay put. Stack reads variable names and hostnames only, and none of it leaves the scanner.
  • Preview screenshots are taken with your Chrome-family browser when a project reaches running, at most once a day, or whenever you ask. Old ones are kept as a time-lapse.
  • The Preview tab shows the running app inside the window, with Back, Forward and a live address.

Preview

Orbit Notes

today 09:12 · automatic

Stack

FrameworkNext.jsReact
DataNeon
ServicesStripeClerkResend
HostingVercel
ToolingTypeScriptTailwind

Two of the Info tab's sections, for a Next.js project.

Live

The tools it builds on, installed for you

Setup, in the Overview, checks the tools DashCode and Claude Code work with and installs the missing ones. Tick what you want and press Install selected: each one installs in a console docked above the list, one after another. It opens on first launch, and any time from ⌘K or Set Up Tools… in the app menu.

  • Command-line tools: the Xcode Command Line Tools, Homebrew, Node.js, Claude Code, the GitHub CLI (and its sign-in), the Vercel and Supabase CLIs, and Wrangler.
  • MCP servers and skills for Claude Code: Chrome DevTools, shadcn, Impeccable, Anthropic's example skills, and DashCode's own (see Skills).
  • Links to Mac apps worth having, marked once installed, and an example project to try DashCode on.

Overview

5 of 8 ready

Command-line tools

Xcode Command Line Toolsgit, python3 and the compilers. Everything else needs these first.
Installed
Claude CodeThe claude command, for Claude Code consoles.
Installed
GitHub CLIClone, Detect and Publish to GitHub.
Vercel CLIDeploy and manage Vercel projects.npm install -g vercel
Not installed
WranglerCloudflare's CLI, for Workers and Pages.npm install -g wrangler
Not installed

Two tools ticked and ready to install. The GitHub CLI is in, but not signed in yet.

Live

Every skill Claude Code can use, with a switch for each

Skills, in the Overview, lists every skill and plugin Claude Code can load: yours, your plugins' and each project's own. A green dot means Claude can use it.

  • Each skill has a mode: On, Name only, Slash only or Off, and each plugin a switch. DashCode writes your choice into Claude Code's own settings.
  • DashCode's skills, installed from Setup: dashcode-project changes a project's settings or creates one from a prompt, dashcode-roadmap refines roadmap items, dashcode-prd turns an idea into a phased PRD, and dashcode-design-system extracts, updates and explores design systems. How to use each: DashCode's skills.

Overview

14 of 17 available to Claude · 3 in projects
Filter

Your skills

dashcode-projectChange a project's DashCode settings, or create a new project, from a prompt.~/.claude/skills/dashcode-project
On
dashcode-roadmapRefine or add items in a project's roadmap.~/.claude/skills/dashcode-roadmap
On
dashcode-prdExplore a vague product idea and write a phased PRD.md.~/.claude/skills/dashcode-prd
Slash only
release-notesDraft release notes from the commits since the last tag.~/.claude/skills/release-notes
Off

Three skills Claude can use, one switched off.

Partly live

Deploy links, found for you

In a project's Settings, Detect asks GitHub where the project deploys and fills in the links: the live site and the provider's dashboard. It uses the gh you're already signed in to. No provider tokens are asked for or stored.

  • Confirmed: Vercel and Railway.
  • Recognised, not yet confirmed: Netlify, Cloudflare, Render, Fly.io, Mintlify and GitHub Pages. They should work, but they haven't been checked against real projects yet.
  • Detect only adds rows and never removes yours. Nothing is saved until you press Save.
Links
Found 2 from GitHub deployments

Detect adds what it finds below the links already there.

Live

A Mac app that keeps itself current, and to itself

DashCode is a native window with a Dock icon. Its server listens only on this Mac (127.0.0.1), and every request needs a key made for your install, so other people signed in to the same Mac can't read your dashboard. It checks for updates at launch and every six hours, downloads them in the background, and asks before restarting.

  • Restart Now stops your running projects cleanly first. Later leaves them alone.
  • If its port is taken by another program, DashCode moves to the next free one and remembers it.
  • Open in Browser opens the dashboard in your browser, key included. The window itself grants web pages nothing but the clipboard.
  • Dashboard settings (the gear at the foot of the sidebar) hold your terminal and editor apps, your Vercel team, a Cloudflare token kept in the macOS Keychain, your CLAUDE.md and PROJECT.md templates, the shortcuts and your account.
DashCodeFileEditViewWindow
About DashCode

Account…
Set Up Tools…
Open in Browser
Privacy…
Check for Updates…

Hide DashCode⌘H
Quit DashCode⌘Q
Update ready

DashCode 2.2.3 is ready to install.

Running projects are stopped, then the app relaunches.

LaterRestart Now

The app menu, and the prompt when an update is ready.

Coming soon

Built, and in the next release.

Coming soon

What you host on Cloudflare, next to your projects

A Cloudflare view joins the Overview. It lists your domains, Workers and Pages projects: each domain's status and Registrar renewal date, each Worker's routes and custom domains, each Pages project's last deploy and branch, with buttons to the site and to Cloudflare's dashboard.

  • A row that belongs to one of your projects carries its chip, which opens it.
  • It only reads. Nothing on Cloudflare changes. It signs in with the token in Dashboard settings, or else your wrangler login, straight from your Mac.

Overview

3 domains · 2 Workers · 1 Pages · via API token
Filter

Domains

orbitnotes.app 🛰️Orbit Notesactive · Free plan
renews Mar 2, 2027
rover.dev 🤖Rover APIactive · Free plan
renews Jan 14, 2027
fieldguide.iowaiting on nameservers

Domains first, then Workers and Pages below them.

Exploring

Ideas being thought through. No dates, and no promise they ship.

Exploring

Every Claude session at a glance

The sidebar already shows which project has a Claude session working or waiting. This would go one step further: one list of every Claude console across every project, with what you asked, what it's doing now and how long it has been going.

  • The sessions waiting on you would come first, so the next thing to answer is always at the top.

Claude sessions

3 open · 1 waiting
why is /rovers slow with a battery filter?Rover API · waiting: Run the tests?
2m
⠼
add offline draftsOrbit Notes · editing src/drafts/store.ts
6m
write the release notesField Guide · finished
14m

An idea, drawn to think with.

Exploring

Domain availability from a list you keep

The Cloudflare view will list the domains you already have. This would check the ones you might want: a project that keeps a domain.md of name ideas could check them against Cloudflare's registrar and mark each one available or taken, right next to the project.

  • It would use the Cloudflare token that Dashboard settings can already hold.
domain.md
rover.dev
available
getrover.app
available
rover.com
taken

An idea, drawn to think with.

Reference

Install, configure, and the fine print.

Install and requirements

  • macOS 13 Ventura or later. There are separate builds for Apple silicon (download) and Intel (download).
  • Open the disk image and drag DashCode to Applications. The app is signed and notarized by Apple.
  • Sign in from inside the app. New accounts get 4 weeks free, no card needed. After that, updates arrive on their own.
  • On first launch DashCode opens Setup, which shows what's installed and installs the rest.

Tools it uses, but doesn't bundle

DashCode runs the tools already on your Mac. If one is missing, only the feature that needs it is affected, and Setup can install most of them for you.

ToolUsed forWithout it
python3Console and Claude Code tabsNo terminals. It comes with the Xcode Command Line Tools.
gitThe Git tab, the Overview's git cells, ChangesNo git features. Switching branches needs 2.23 or later.
claudeClaude Code consoles, the Roadmap's Claude buttonsShell consoles only.
ghDetect, Publish to GitHubYou type links in by hand and publish from a terminal.
Chrome, Chromium, Edge or BravePreview screenshotsNo screenshots. The Preview tab still works.

Coming from Mission Control

DashCode used to be called Mission Control. Version 2.0 can't update itself to the new name, so install DashCode fresh. Your projects and settings are copied over the first time it opens, and you sign in once.

The registry: apps.json

Every project lives in one file, apps.json, in ~/Library/Application Support/DashCode/. The app writes it when you add or edit a project in Settings, and you can edit it by hand. Changes on disk are picked up live. Sidebar and board order is kept separately in apps.order.json, and each project's roadmap in its own folder, at .dashcode/roadmap.json.

{
  "apps": [
    {
      "id": "rover-api",
      "name": "Rover API",
      "emoji": "🤖",
      "tag": "FastAPI + Vite",
      "accent": "#a855f7",
      "cwd": "/Users/you/Projects/rover-api",
      "openUrl": "http://localhost:5173",
      "procs": [
        { "name": "api", "cmd": "uvicorn", "args": ["main:app", "--reload", "--port", "8000"], "upPort": 8000 },
        { "name": "web", "cmd": "npm", "args": ["run", "dev"], "cwd": "/Users/you/Projects/rover-api/web", "upPort": 5173 }
      ],
      "links": [ { "label": "Railway", "url": "https://railway.com/project/…" } ],
      "folderId": "side"
    }
  ],
  "folders": [ { "id": "side", "name": "Side projects", "emoji": "🧪" } ]
}

A project

FieldWhat it is
idStable identifier, made from the name when the app adds a project. Required.
nameWhat the sidebar and board show, up to 80 characters. Required.
cwdThe project folder, as an absolute path. Consoles, Docs, Files, Git and the Roadmap all work from it. Required.
procsIts processes, up to 8. An empty list is fine: the project is idle, with consoles, docs, files and a roadmap, and nothing to start.
openUrlWhat Open goes to. Defaults to http://localhost: plus the first process's port; required when no process has a port.
emoji, tag, accentThe project's icon, a short label (up to 100 characters), and an accent colour as hex (#2563eb).
noteFree text shown on the Info tab, up to 2,000 characters.
linksUp to 8 { "label", "url" } pairs, http(s) only. A label is up to 40 characters and defaults to the host name.
folderIdThe id of a folder from the top-level folders list. Folders are labels only.

A process

FieldWhat it is
nameUnique within the project, up to 40 characters. It labels the process's log lines.
cmd, argsThe command and its arguments, as a list of strings. No shell is involved. dashcode-serve serves a static folder with DashCode's own server, and needs a port.
upPortThe port that means "running" once it answers, 1024 to 65535. Optional: without one, the process counts as up once it's launched.
extraUpPortsMore ports the process uses. They are kept clear of other projects, like upPort.
cwdRun from a different folder than the project's.
envExtra environment variables, as { "NAME": "value" }. Names are upper case: letters, digits and underscores.

No port can belong to two projects. The app refuses the clash when you save, rather than letting two dev servers fight over it later.

DashCode's skills

Four Claude Code skills come with DashCode. Install them from Setup. Each one is linked into ~/.claude/skills, so app updates reach it without a reinstall. Use them in any Claude Code session: ask in plain words, or type the skill's name as a slash command. Skills turns each one on or off.

dashcode-project

Changes a project's DashCode settings, or creates a new project, from a prompt. Claude works through DashCode itself, so a change is checked before it's saved and shows up at once.

  • Settings: name, emoji, accent, stack tag and notes, the dev processes (command, port, environment), the Open link, Info-tab links and the sidebar folder.
  • New projects: a fresh folder, optionally with the starter app you describe, or an existing folder added as it is.
  • Running it: start, stop and restart, and read the logs to check it came up.
make Start run npm run dev on port 5173
add the Vercel deploy link to this project
new project called Potluck, a Vite + React app

dashcode-roadmap

Works on a project's Roadmap, which is saved in the project at .dashcode/roadmap.json.

  • Refine a todo or idea: Claude asks a few questions, one at a time, then writes a short spec and the steps. Refine with Claude on a roadmap row does the same.
  • Add items or steps, or break a feature down into steps.
  • Claude ticks off each step as it finishes it, but checking off the item is up to you.
refine "offline mode" on the roadmap
break the export feature down into steps

dashcode-prd

Turns a rough product idea into a PRD.md that you and Claude can build from, one phase at a time: a proof of concept, then an MVP, then later phases, each with its features and tech stack.

  • It questions the idea before writing anything: one question at a time, each with a recommended answer.
  • It starts wherever you are: a one-line idea, a clear plan, existing notes, or a PRD to revise after a phase ships.
/dashcode-prd an app that helps people split potluck dishes

dashcode-design-system

Builds a design system in your project, at design-system/<name>/. It contains DESIGN.md (the feel, the values and the reasons for them), tokens.json and tokens.css, and specimen.html, a page that shows every token. It has three commands: type /dashcode-design-system <command>, or just ask.

CommandWhat it does
extractMeasures a live site, or reads screenshots, and writes down its system, with each value tagged by how it was found. Give it two or more sites and it shows them side by side, asks what to keep from each, and combines them into a new system.
updateChanges an existing system, then rebuilds the specimen and the token files. Each change goes in DESIGN.md's decisions log. With nothing to change, it re-renders the specimen.
exploreMakes three variants (or as many as you ask for) and shows them side by side on one page. Each one appears in the specimen's own layout, with contrast checks and a dark-mode toggle. Pick one or ask for a mix, and update applies it.
/dashcode-design-system extract https://example.com
/dashcode-design-system explore a color palette using sky blue, navy blue and Yves Klein blue
/dashcode-design-system update go with b
/dashcode-design-system update make the corners rounder
  • It only writes to design-system/. Applying the tokens to your app is a separate step, which it offers and does only when you say so.
  • If you edit tokens.css by hand, update moves your edits into the system instead of overwriting them.
  • Measuring a live site uses Playwright, which Claude installs in the project the first time. Screenshots need no extra tools.

Keyboard shortcuts

The same list is in Dashboard settings.

Navigation
⌘KQuick switcher
⌘0Overview
⌘1–⌘9Jump to the nth project in the sidebar
⌘[⌘]Previous / next tab
⌘⇧←⌘⇧→Previous / next tab (works from a console too)
⌘⇧↑⌘⇧↓Previous / next project in the sidebar
⌘BCollapse or expand the sidebar
/Focus the sidebar filter
escClose menus and dialogs, clear the filter
Tabs & consoles
⌘ENew console (shell)
⌘⇧ENew Claude Code
⌘⇧DClose the active tab
⇧↵⌥↵Newline in a console instead of submitting
Quick switcher
↵Open the highlighted project
⇧↵Open it in a new console
escClose the switcher
Editing & state
⌘SSave the open doc, file or settings form
⌘FFind in the open doc or file
⌘←⌘→Jump to the start / end of the line
⌘⇧PPause / resume live updates
Roadmap tab
cAdd a todo
iAdd an idea
escClose the open item

Closing a tab is ⌘⇧D, so ⌘W is never taken from a console. ⌘P never opens a print dialog.

Account and plans

New accounts get 4 weeks free, no card needed. The trial starts the first time you sign in to the app, and ends on time even if the Mac is offline. When it ends, the app asks you to subscribe, and nothing is charged automatically. One trial per account and per Mac.

After that, DashCode needs an active subscription. There is one plan, Pro, paid monthly or yearly. You subscribe from inside the app, during the trial or after it; billing starts the day you subscribe.

Monthly
$5 a month
Annual
$50 a year

Prices are in US dollars, and sales tax or VAT is added where it applies. Promotion codes are accepted at checkout.

  • Sign-in is with Google or GitHub. Account… in the app menu opens the macOS sign-in window, with "Use my browser instead" as a fallback. The app never sees your password.
  • Up to 3 Macs per account. Signing in again on the same Mac doesn't use another one. You can see and remove your Macs on your account page.
  • Offline, DashCode keeps working for up to 14 days between checks. It warns you after 7 days without one.
  • Manage billing opens Stripe's billing portal, where you can change the card, get invoices or cancel. Signing out leaves your running projects running.

Privacy and usage reporting

Your projects, code, files and terminals stay on your Mac. While you're signed in, the app reports how much it is used: counts and durations, sent at launch, about every 30 minutes, and at quit. Reporting can't be switched off.

What is reported, per day

  • Launches and visits, and active time (not counting idle, asleep or locked).
  • Tabs opened by kind, and projects added by method.
  • Crashes and failed starts.
  • The number of projects, the app and macOS versions, and Apple silicon or Intel.

What never leaves the Mac

  • Project and folder names, file paths, and file contents.
  • Commands, arguments, environment variables and .env files.
  • Terminal input and output, logs, and anything said to or by Claude.
  • Git branches, commits and remotes, and Preview addresses and screenshots.

The server accepts a fixed list of numbers and rejects any report that holds anything else. Day-by-day usage is kept for 400 days, and deleting your account deletes all of it. The full statement is on the privacy page.

Start with one project.

Download DashCode, add a folder, and press start.

Free for 4 weeks. No card needed.