Version 3 of 17 · · Current version

tags
#help #projects

Help: projects

A project is your own space in d2: its own address, wiki, domain, objects and files, and its own members. Everything in it stays in it; nothing is shared with other projects except what d2 itself shares (this help, the diesel2 skill).

Create one

  1. Sign up or log in on aiheroapps.com. You land on your account home, which lists your projects.
  2. Name it under New project. A name is lower-case letters, digits and dashes, starting and ending with a letter or digit; it becomes the address, <name>.aiheroapps.com. d2 checks that it's free. Names starting with d2 are reserved.
  3. Pick its level, one per kind of user. It sets the menu and the home page you start with; change it later in the project's settings (Settings:PROJECT).
    • Hero: your own app, no code. Home, wiki, data and files.
    • Creator: you model and build. Adds the domain and the model graph.
    • Pro: the full kit. Adds the fiddle, flows and the API.
  4. You own it, as its first admin. It opens on its home page; its landing page is what visitors see.

New projects need a new web address each, and d2 can make only so many a week (about 40). If that's used up, the create page says when the next one frees up.

Who can do what

Everyone in a project has a role. Roles nest: each can do everything the one below it can.

  • public: anyone, logged in or not. Sees the landing page, and what's marked public.
  • member: reads the project, writes topics and objects, uploads files, makes AI tokens for themselves.
  • mod: also edits the landing page and special pages, and replaces or deletes anyone's files.
  • admin: also runs the project's Admin page (in the user menu), with three cards: Members (who's in, their roles, requests, invites), Project (versions, who can join) and Quotas (what the plan allows and what's used). The owner is an admin.
  • god is d2's own administrator: admin in every project.

What each topic and object may be seen or changed by is set by its class (@view, @edit); settings, for example, are for mods. The landing page is always public, since it's where people log in.

Let people in

On Admin → Project (admins), choose who can join:

  • request (the default): people press Request to join on the landing page; you approve or deny on Admin → Members, and they're told.
  • open: anyone who's logged in can press Join and becomes a member.
  • private: members only. Visitors see at most the landing page, and only people you add get in.

Invite someone by email on Admin → Members, with the role they'll have. The invite is a link, good for 7 days, and works whatever the join setting; opening it (logged in as that email) makes them a member. A new invite to the same person replaces the old one.

Change a role or remove someone on Admin → Members. You can't remove the last admin.

Once you're in

  • Single sign-on: logged in on one project and a member of another, Log in there needs no password.
  • Your AI gets its own token: Tokens in your user menu, at most your own level (or read only), expiring in 30 days, 90 days, a year, or never. Tick drafts to have its topic changes wait for you on your Drafts page. Revoke it on the same page. See Connect your AI.
  • Plans and quotas: a project follows its owner's plan: free, basic ($20 a year) or gold ($20 a month). The plan sets its limits: files and their size, objects and their size, members, how long a flow may run. Admin → Quotas shows each limit and what's used; the table for every plan is Settings:Quotas in d2. On free: 20 files and 5 MB, 1000 objects, 3 members, 5 s a flow. Paying isn't built yet: to upgrade, ask d2's admin.
  • Versions: an admin releases a project version from Admin → Project (1.2.0); it rolls the project log and the AI log over.
  • Leaving: delete your account from your preferences (/prefs). Projects you own keep their other members.

For AIs and scripts

The same things through the API (Diesel2Routes in d2spec for the full list):

  • GET /api/v2/me: who you are here, and your role.
  • GET /api/v2/projects/available?name=…: is a name free.
  • Writes need a member's session or a token: Authorization: Bearer d2t_….