PageSourceSearch

https://scigantic.com/assets/HelpCenterPage-CCpuZb-K.js

js scigantic.com collected 2026-10-03 19:24:41 UTC 91,600 bytes, 1 lines download raw bytes

1import{r as u,j as e,L as n}from"./index-xV5OOcLG.js";const N=()=>e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[e.jsx("circle",{cx:"11",cy:"11",r:"8"}),e.jsx("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})]}),I=()=>e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:[e.jsx("path",{d:"M21 8v13H3V8"}),e.jsx("path",{d:"M1 3h22v5H1z"}),e.jsx("path",{d:"M10 12h4"})]}),G=()=>e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:[e.jsx("path",{d:"M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"}),e.jsx("path",{d:"M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"})]}),M=()=>e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:[e.jsx("path",{d:"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"}),e.jsx("circle",{cx:"9",cy:"7",r:"4"}),e.jsx("path",{d:"M23 21v-2a4 4 0 0 0-3-3.87"}),e.jsx("path",{d:"M16 3.13a4 4 0 0 1 0 7.75"})]}),U=()=>e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:[e.jsx("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),e.jsx("circle",{cx:"12",cy:"7",r:"4"})]}),z=()=>e.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:e.jsx("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2"})}),E=()=>e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:[e.jsx("circle",{cx:"11",cy:"11",r:"8"}),e.jsx("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})]}),F=()=>e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:[e.jsx("rect",{x:"1",y:"4",width:"22",height:"16",rx:"2"}),e.jsx("line",{x1:"1",y1:"10",x2:"23",y2:"10"})]}),Y=()=>e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:[e.jsx("line",{x1:"4",y1:"21",x2:"4",y2:"14"}),e.jsx("line",{x1:"4",y1:"10",x2:"4",y2:"3"}),e.jsx("line",{x1:"12",y1:"21",x2:"12",y2:"12"}),e.jsx("line",{x1:"12",y1:"8",x2:"12",y2:"3"}),e.jsx("line",{x1:"20",y1:"21",x2:"20",y2:"16"}),e.jsx("line",{x1:"20",y1:"12",x2:"20",y2:"3"}),e.jsx("line",{x1:"1",y1:"14",x2:"7",y2:"14"}),e.jsx("line",{x1:"9",y1:"8",x2:"15",y2:"8"}),e.jsx("line",{x1:"17",y1:"16",x2:"23",y2:"16"})]}),B=()=>e.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:e.jsx("path",{d:"M12 2l1.9 5.8L20 9.7l-4.9 3.6L17 19l-5-3.2L7 19l1.9-5.7L4 9.7l6.1-1.9z"})}),D=()=>e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:[e.jsx("polyline",{points:"16 18 22 12 16 6"}),e.jsx("polyline",{points:"8 6 2 12 8 18"})]}),t=({num:r,title:h,children:d})=>e.jsxs("div",{className:"help-step",children:[e.jsx("div",{className:"help-step-num",children:r}),e.jsxs("div",{className:"help-step-body",children:[e.jsx("div",{className:"help-step-title",children:h}),e.jsx("div",{className:"help-step-text",children:d})]})]}),s=({children:r})=>e.jsxs("div",{className:"help-tip",children:[e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",style:{flexShrink:0,marginTop:2},children:[e.jsx("circle",{cx:"12",cy:"12",r:"10"}),e.jsx("line",{x1:"12",y1:"16",x2:"12",y2:"12"}),e.jsx("line",{x1:"12",y1:"8",x2:"12.01",y2:"8"})]}),e.jsx("span",{children:r})]}),l=({children:r})=>e.jsxs("div",{className:"help-warning",children:[e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",style:{flexShrink:0,marginTop:2},children:[e.jsx("path",{d:"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"}),e.jsx("line",{x1:"12",y1:"9",x2:"12",y2:"13"}),e.jsx("line",{x1:"12",y1:"17",x2:"12.01",y2:"17"})]}),e.jsx("span",{children:r})]}),b=[{id:"getting-started",title:"Getting Started",icon:e.jsx(z,{}),articles:[{id:"what-is-scigantic",title:"What is Scigantic?",keywords:["introduction","overview","about","platform","what","purpose"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Scigantic is a platform for scientific data discovery and analysis. It lets researchers find public datasets, open them in a notebook that already has the data attached, ask an AI assistant questions about them, and fine-tune models on their own labeled data."}),e.jsx("h3",{children:"Core capabilities"}),e.jsxs("p",{children:[e.jsx("strong",{children:"Data Archives."})," Archives are the primary unit of content on Scigantic. An archive points at a dataset stored in cloud object storage (AWS S3, Google Cloud Storage, Azure Blob Storage), a public Git repository, or an on-premise server. Archives are searchable, citable, and shareable with collaborators using role-based permissions."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Interactive Notebooks."})," Scigantic runs JupyterHub on managed Kubernetes and launches notebooks with the archive's storage already mounted. The bucket appears as a normal directory inside the notebook, so you read files with ",e.jsx("code",{children:"open()"})," or ",e.jsx("code",{children:"pd.read_csv()"})," instead of downloading them first."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"AI assistant."})," Every notebook ships with a built-in Claude assistant that can read the mounted data, write and run cells, and answer questions about the archive's structure. It is available on every plan, including Free. See ",e.jsx("em",{children:"The notebook AI assistant"}),"."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Fine-tuning."}
1)," Upload a CSV of sequences and labels and train a LoRA adapter on a protein, DNA, or molecular foundation model without writing a training pipeline or managing a GPU."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Organizations."})," Teams collaborate under shared access controls. Admins invite members, manage roles, control content visibility, and generate invite codes."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Search and discovery."})," Search is semantic: queries are matched on meaning rather than exact keywords, so plain-English descriptions of what you need work better than isolated terms."]}),e.jsx("h3",{children:"Bring Your Own Bucket"}),e.jsx("p",{children:'Scigantic follows a "Bring Your Own Bucket" model. You link cloud storage you already own -- Scigantic does not copy or store your data. You pay your cloud provider directly for storage and transfer, so you keep full control and ownership at all times, with Scigantic serving as a discovery and analysis layer on top.'}),e.jsx("h3",{children:"Who is Scigantic for?"}),e.jsxs("ul",{children:[e.jsx("li",{children:"Research labs and institutions that need to share datasets with collaborators"}),e.jsx("li",{children:"Scientists who want to analyze a public dataset without first downloading it"}),e.jsx("li",{children:"Teams that need reproducible computational environments tied to specific datasets"}),e.jsx("li",{children:"Individual researchers looking to make their data findable and citable"})]})]})},{id:"create-account",title:"Creating your account",keywords:["signup","register","account","login","password","email","google","oauth","verify","confirmation"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"You need an account to create archives, launch notebooks, or join organizations. Browsing public archives and using search does not require an account."}),e.jsxs(t,{num:1,title:"Navigate to Sign Up",children:["Click ",e.jsx("strong",{children:"Sign Up"})," in the top-right corner of the navigation bar, or go directly to ",e.jsx(n,{to:"/signup",children:"/signup"}),"."]}),e.jsx(t,{num:2,title:"Enter your information",children:e.jsxs("p",{children:["Provide your full name, email address, and a password. Passwords must be at least 8 characters. Alternatively, click ",e.jsx("strong",{children:"Sign in with Google"})," to use your Google account -- this skips email verification."]})}),e.jsx(t,{num:3,title:"Verify your email",children:e.jsx("p",{children:"If you signed up with email and password, you'll be redirected to a verification screen. Check your inbox for a 6-digit code from Scigantic and enter it. The code expires after 24 hours. If you don't see the email, check your spam/junk folder."})}),e.jsx(t,{num:4,title:"Join an organization (optional)",children:e.jsx("p",{children:"If you received an invite code from a team or organization, you can enter it during the signup process. This automatically adds you to the organization with the role specified by the invite code (typically Member or Viewer). You can also join an organization later from your Profile."})}),e.jsx(s,{children:"After verification, you'll receive a welcome email confirming your account is active. You can immediately begin creating archives, exploring datasets, and launching notebooks."}),e.jsx("h3",{children:"Logging in"}),e.jsxs("p",{children:["Return to Scigantic and click ",e.jsx("strong",{children:"Log In"}),` in the navigation bar. Enter your email and password, or use Google sign-in. If you've forgotten your password, click "Forgot password?" to receive a reset code via email.`]})]})},{id:"quick-tour",title:"Navigating the interface",keywords:["tour","navigation","ui","interface","layout","header","menu","tabs","profile"],content:e.jsxs(e.Fragment,{children:[e.jsx("h3",{children:"Navigation bar"}),e.jsx("p",{children:"The top navigation bar is context-sensitive. When you're logged out, it shows links to Explore, Create Archive, How It Works, About, Pricing, and Contact. When logged in, it shows Explore, Create Archive, and quick links to your Notebooks, Archives, and Organization."}),e.jsx("h3",{children:"Profile menu"}),e.jsx("p",{children:"Click your avatar (the circle with your initial) in the top-right corner to open the profile dropdown. From here you can access:"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"My Archives"})," -- all archives you own or have access to"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"My Notebooks"})," -- notebooks you've created or been added to, with runtime status"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"My Organization"})," -- your organization membership, or options to join/create one"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Notifications"})," -- in-app notifications for access changes, role updates, and activity"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Settings"})," -- display name, notification preferences, privacy, language, and account deleti
1on"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Current Plan"})," -- your subscription tier and remaining monthly credits"]})]}),e.jsx("p",{children:"The avatar displays a red badge with a count when you have unread notifications."}),e.jsx("h3",{children:"Explore page"}),e.jsxs("p",{children:["The ",e.jsx(n,{to:"/explore",children:"Explore"})," page is the main discovery interface. It lists all public archives with search and filtering by category, content type, cloud provider, and region."]}),e.jsx("h3",{children:"Footer"}),e.jsx("p",{children:"The footer contains links to company pages (About, How It Works, Pricing, Contact, Help Center), product pages (Explore, Create, Sign Up, Log In), legal policies (Terms, Privacy, Cookies, Advertising), and a newsletter signup form. You can also switch the interface language between English and Español from the footer."})]})}]},{id:"archives",title:"Archives",icon:e.jsx(I,{}),articles:[{id:"create-archive",title:"Creating an archive",keywords:["create","new","archive","bucket","storage","aws","s3","gcs","azure","dataset","local"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"An archive on Scigantic represents a dataset stored in cloud storage or on a local server. Creating an archive makes your data discoverable, searchable, citable, and shareable with collaborators."}),e.jsxs(t,{num:1,title:"Open the Create Archive page",children:["Navigate to ",e.jsx(n,{to:"/create",children:"Create Archive"})," from the navigation bar. You must be logged in."]}),e.jsx(t,{num:2,title:"Provide basic information",children:e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Title"})," (required) -- A descriptive name for your dataset. Must be at least 3 characters."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Description"})," (required) -- A detailed explanation of what the archive contains, how it was collected, and how it should be used. Must be at least 10 characters. Rich descriptions improve search discoverability."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Category"})," (required) -- Choose from: Science & Research, Technology, Business, Education, Media & Entertainment, Healthcare, Art & Design, Data & Analytics, Software Development, or Other (with a custom category name)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Author/Creator"})," (required) -- The person or group responsible for the data. Must be at least 2 characters."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Visibility"})," (required) -- ",e.jsx("strong",{children:"Public"})," archives are visible to all users. ",e.jsx("strong",{children:"Private"})," archives are only visible to the owner and explicitly added collaborators."]})]})}),e.jsxs(t,{num:3,title:"Connect your storage",children:[e.jsx("p",{children:"Select your cloud provider and enter the bucket or container details:"}),e.jsxs("p",{children:[e.jsx("strong",{children:"AWS S3:"})," Enter the bucket name (e.g., ",e.jsx("code",{children:"my-research-bucket"}),") and select the region where the bucket is located. Scigantic validates that the bucket exists and is accessible. For public buckets, anonymous list/read access is required. For private buckets, you'll provide read-only AWS access keys (Access Key ID and Secret Access Key)."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Google Cloud Storage:"})," Enter the GCS bucket name and region. Similar access requirements as S3 -- public buckets need public read access, private buckets need a service account key."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Azure Blob Storage:"})," Enter the container name. Private access requires a SAS token."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Git:"})," For datasets published as a public Git repository (GitHub, GitLab, or any HTTPS Git host). The repository is cloned into the notebook at launch rather than mounted, so it suits code, schemas, and small-to-moderate corpora rather than multi-terabyte data. Git-source archives always run on the standard Scigantic notebook image, which carries the ",e.jsx("code",{children:"git"})," and ",e.jsx("code",{children:"datalad"})," tooling they need."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Local/On-Premise:"})," For servers not hosted in the cloud. Enter an optional server identifier. File browsing and notebooks are not available for these archives, but you can still create a searchable, citable entry."]}),e.jsx(s,{children:'You can optionally scope the archive to a subdirectory within the bucket using the "Prefix/Path" field. Leave it empty to represent the entire bucket.'})]}),e.jsx(t,{num:4,title:"Add optional references",children:e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Repository URL"})," -- Link to a related code repository (GitHub, GitLab, Bitbucket, etc.)"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Hugging Face URL"})," -- Link to a related model or dataset on Hugging Face"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Website URL"})," -- Link to a project or paper website"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Docker Image"})," -- A container image for reproducible environments (validated automatically)"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"License"})," -- The license under which the data is distributed (e.g., MIT, Apache 2.0, CC BY 4.0)"]})]})}),e.jsx(t,{num:5,title:"Create",children:'Click "Create Archive." Scigantic performs preflight checks on your bucket (format validation, reachability, listing, readability, region detection) and creates the archive if everything passes.'}),e.jsx("h3",{children:"Storage costs"}),e.jsx("p",{children:'You pay your cloud provider directly and Scigantic bills you nothing for storage or transfer. For AWS and GCS, buckets can be configured as "Requester Pays" -- meaning users who access the data pay the transfer costs, not the bucket owner. Azure egress is always paid by the storage account owner. Scigantic shows cost information during archive creation to help you understand the implications.'})]})},{id:"manage-archive",title:"Editing and managing archives",keywords:["edit","update","manage","archive","settings","modify","star","bookmark"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Archive owners can update any field at any time. Changes are reflected immediately to all users with access."}),e.jsx("h3",{children:"Editing archive details"}),e.jsxs("p",{children:["Open your archive and navigate to the ",e.jsx("strong",{children:"Overview"}),' tab. Click the edit icon or "Edit" button next to any section. You can modify the title, description, category, and all resource links (GitHub, Hugging Face, website, Docker image, license). Click "Save" when done.']}),e.jsx("h3",{children:"Starring archives"}),e.jsx("p",{children:"Click the star icon on any archive to bookmark it. Starred archives appear with a filled star for quick visual identification when browsing. This is a personal bookmark -- other users don't see your stars."}),e.jsx("h3",{children:"Deleting an archive"}),e.jsx("p",{children:"Archive owners can delete an archive from the archive detail page. This removes the archive entry from Scigantic but does not affect the underlying data in your cloud storage bucket. All collaborators who had access will receive a notification that the archive has been deleted."}
1),e.jsx(l,{children:"Archive deletion is permanent and cannot be undone. The archive's search index entry, access roles, associated notebooks, and activity history will all be removed."})]})},{id:"archive-access",title:"Access control and roles",keywords:["access","share","roles","editor","viewer","collaborator","permissions","invite","expiry"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Scigantic uses role-based access control (RBAC) for archives. Each user's relationship to an archive is defined by one of three roles:"}),e.jsxs("table",{className:"help-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Role"}),e.jsx("th",{children:"View"}),e.jsx("th",{children:"Browse Files"}),e.jsx("th",{children:"Edit Metadata"}),e.jsx("th",{children:"Manage Access"}),e.jsx("th",{children:"Delete"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Owner"})}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Editor"})}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Viewer"})}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"})]})]})]}),e.jsx("h3",{children:"Visibility levels"}),e.jsxs("p",{children:["In addition to per-user roles, archives have a ",e.jsx("strong",{children:"visibility"})," setting that controls who can discover them:"]}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Public"})," -- Visible to everyone, including users who are not logged in"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Organization"})," -- Visible only to members of the archive owner's organization"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Private"})," -- Visible only to the owner and explicitly added collaborators"]})]}),e.jsx("p",{children:"Organization admins can override the visibility of any archive created by their members. Private archives require a paid plan (Researcher, Pro, or Enterprise)."}),e.jsx("h3",{children:"Adding collaborators"}),e.jsxs("p",{children:[`From the archive's Overview tab, locate the "Manage Access" section (visible only to the owner). Enter the collaborator's email address, select a role (Editor or Viewer), and optionally set an `,e.jsx("strong",{children:"expiry date"}),`. When set, the user's access is automatically revoked after that date. Click "Add" to grant access. The collaborator will receive an in-app notification.`]}),e.jsx("h3",{children:"Changing or revoking access"}),e.jsx("p",{children:"In the same Manage Access section, you can change a collaborator's role (e.g., promote Viewer to Editor) or remove them entirely. Both actions trigger a notification to the affected user."}),e.jsx("h3",{children:"Access expiry"}),e.jsx("p",{children:'When adding a collaborator, you can choose "Forever" (no expiry) or set a specific date. This is useful for granting temporary access to reviewers, visiting researchers, or students working on time-limited projects.'})]})},{id:"archive-citation",title:"Citations and DOIs",keywords:["citation","cite","apa","bibtex","chicago","doi","reference","academic","paper"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Every archive on Scigantic provides ready-to-use citations to help researchers properly credit data sources in their publications."}),e.jsx("h3",{children:"Available citation formats"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"APA 7th Edition"})," -- Standard format for social and behavioral sciences"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"BibTeX"})," -- For LaTeX documents and academic papers"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Chicago"})," -- Common in humanities and some sciences"]}
1),e.jsxs("li",{children:[e.jsx("strong",{children:"Plain Text"})," -- A simple, universally readable format"]})]}),e.jsx("p",{children:`Find the citation block in the archive's Overview tab under "Cite this Archive." Click any format tab, then use the copy button to copy the full citation to your clipboard.`}),e.jsx("p",{children:"If the archive has a DOI (Digital Object Identifier), it will be displayed as a clickable link within the citation. DOIs provide a persistent, unique identifier for the dataset."}),e.jsx(s,{children:"Properly citing datasets in your publications helps give credit to data creators, improves reproducibility, and increases the discoverability of the data you used."})]})},{id:"activity-log",title:"Activity log and audit trail",keywords:["activity","audit","log","trail","history","viewed","edited","created","deleted","launched","who"],content:e.jsxs(e.Fragment,{children:[e.jsxs("p",{children:["Every archive and notebook on Scigantic maintains an ",e.jsx("strong",{children:"Activity Log"})," that records who did what and when. This provides a full audit trail for compliance, reproducibility, and collaboration awareness."]}),e.jsx("h3",{children:"What gets logged"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Viewed"})," -- A user viewed the archive or notebook"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Created"})," -- The resource was created"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Edited"})," -- Metadata was updated (title, description, etc.)"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Deleted"})," -- The resource was deleted"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Files listed"})," -- A user browsed the file tree"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Launched / Stopped"})," -- A notebook runtime was started or stopped"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Opened"})," -- A notebook was opened in the JupyterHub viewer"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Role changed"})," -- A collaborator's access role was modified"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Visibility changed"})," -- The resource's visibility was updated by an admin"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Member added / removed"})," -- A collaborator was added to or removed from the resource"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Invite redeemed"})," -- An organization invite code was used"]})]}),e.jsx("h3",{children:"Viewing the activity log"}),e.jsxs("p",{children:["Open an archive or notebook and navigate to the ",e.jsx("strong",{children:"Activity"})," tab. Each entry shows the user who performed the action, what they did, and a timestamp. The log is visible to the resource owner and anyone with Editor access or above."]}),e.jsx(s,{children:"Activity logs are useful for tracking who accessed a shared dataset, verifying that collaborators have reviewed your data, and maintaining an audit trail for institutional compliance requirements."})]})},{id:"browse-files",title:"Browsing files and downloading data",keywords:["files","browse","download","tree","directory","command","aws","cli","sync","gsutil","az"],content:e.jsxs(e.Fragment,{children:[e.jsx("h3",{children:"Interactive file browser"}),e.jsxs("p",{children:["For cloud-hosted archives (AWS S3, GCS, Azure), the ",e.jsx("strong",{children:"Files"})," tab displays an interactive file tree. Click folders to expand them and browse the directory structure. Click individual files to see their full cloud path and get provider-specific download commands."]}),e.jsx("p",{children:"The file browser loads directory contents on demand, so even very large buckets with millions of objects remain navigable. The initial listing shows the top-level contents, and deeper directories are loaded as you click into them."}),e.jsx("h3",{children:"Download commands"}),e.jsx("p",{children:"The Overview tab provides CLI download commands tailored to the archive's cloud provider:"}),e.jsx("p",{children:e.jsx("strong",{children:"AWS S3:"})}),e.jsxs("ul",{children:[e.jsxs("li",{children:["List files: ",e.jsx("code",{children:"aws s3 ls s3://bucket-name/"})]}),e.jsxs("li",{children:["Download all: ",e.jsx("code",{children:"aws s3 sync s3://bucket-name/ ./local-directory/"})]}),e.jsxs("li",{children:["Download a single file: ",e.jsx("code",{children:"aws s3 cp s3://bucket-name/path/to/file ./local-file"})]})]}),e.jsx("p",{children:e.jsx("strong",{children:"Google Cloud Storage:"})}),e.jsxs("ul",{children:[e.jsxs("li",{children:["List files: ",e.jsx("code",{children:"gsutil ls gs://bucket-name/"})]}),e.jsxs("li",{children:["Download all: ",e.jsx("code",{children:"gsutil -m rsync -r gs://bucket-name/ ./local-directory/"})]})]}),e.jsx("p",{children:e.jsx("strong",{children:"Azure Blob Storage:"})}),e.jsx("ul",{children:e.jsxs("li",{children:["Download all: ",e.jsx("code",{children:"az storage blob download-batch --source container-name --destination ./local-directory/"})]})}),e.jsxs(s,{children:["For AWS, ensure you have the AWS CLI installed and configured with ",e.jsx("code",{children:"aws configure"}),". For GCS, install the Google Cloud SDK. For Azure, install the Azure CLI."]})]})}]},{id:"notebooks",title:"Notebooks",icon:e.jsx(G,{}),articles:[{id:"launch-notebook",title:"Launching a notebook",keywords:["launch","notebook","jupyter","jupyterhub","start","run","compute","fuse","mount"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Scigantic notebooks are JupyterHub-powered computational environments that run on managed Kubernetes infrastru
1cture. They are designed to work directly with archive data through FUSE mounts, eliminating the need to download data before analysis."}),e.jsx("h3",{children:"Requirements"}),e.jsxs("ul",{children:[e.jsx("li",{children:"You must be logged in"}),e.jsx("li",{children:"The archive must be backed by AWS S3, public Google Cloud Storage, an HTTP source, or a public Git repository. Azure-backed and local/on-premise archives cannot be launched."}),e.jsx("li",{children:"The archive's bucket can be in any AWS region. Notebook compute runs in us-east-1, so cross-region archives (e.g. Tokyo, Frankfurt) will mount fine but incur cross-region latency and AWS data-transfer charges."})]}),e.jsx(t,{num:1,title:"Open an archive and go to the Notebooks tab",children:'The Notebooks tab shows any existing notebooks and a "Launch new notebook" panel if the archive meets the requirements above.'}),e.jsxs(t,{num:2,title:"Configure the notebook",children:[e.jsxs("p",{children:[e.jsx("strong",{children:"Notebook Name:"}),' A descriptive name for your session (e.g., "Exploratory Analysis" or "Model Training Run 3"). Defaults to "[Archive Title] Notebook" if left blank.']}),e.jsxs("p",{children:[e.jsx("strong",{children:"Environment:"})," Scigantic pre-selects a domain image based on the archive's category (cryo-EM, genomics, neuroscience, geospatial, and so on) so the libraries you need are already installed. You can pick a different image from the list, or supply your own Docker image reference. See ",e.jsx("em",{children:"Notebook environments and Docker images"}),"."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"FUSE Mount:"})," When enabled (recommended), the archive's S3 bucket is mounted as a directory inside your notebook. This means you can read files using normal file system operations (",e.jsx("code",{children:"open()"}),", ",e.jsx("code",{children:"pd.read_csv()"}),", etc.) without downloading them first. Reads stay in-region, which is faster and avoids duplicate storage costs."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Mount Path:"})," The directory where the FUSE mount appears inside the notebook. Defaults to ",e.jsx("code",{children:"/mnt/archive"}),". You can change this to any valid path."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Custom Bucket (advanced):"})," Instead of mounting the archive's own bucket, you can specify a different S3 bucket. This is useful when working with multiple data sources. Scigantic validates the bucket and detects its region. If the bucket is in a different region than the notebook runtime, you'll be warned about potential cross-region data transfer costs."]})]}),e.jsx(t,{num:3,title:"Launch",children:`Click "Launch." The notebook runtime is provisioned on JupyterHub, and you'll be redirected to the JupyterLab interface once it's ready. Startup typically takes 30-120 seconds depending on the Docker image size.`}),e.jsx("h3",{children:"Choosing a compute tier"}),e.jsxs("p",{children:["Before launching, you'll see a ",e.jsx("strong",{children:"Compute Instance"})," selector with the available tiers. The tier determines how much CPU, memory, and (optionally) GPU your notebook gets:"]}),e.jsxs("table",{className:"help-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Tier"}),e.jsx("th",{children:"CPU"}),e.jsx("th",{children:"Memory"}),e.jsx("th",{children:"GPU"}),e.jsx("th",{children:"Credits"}),e.jsx("th",{children:"Requires"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Standard"})}),e.jsx("td",{children:"2 vCPU"}),e.jsx("td",{children:"5 GB"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"1 credit/hr"}),e.jsx("td",{children:"Any plan"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"GPU T4 (Spot)"})}),e.jsx("td",{children:"4 vCPU"}),e.jsx("td",{children:"16 GB"}),e.jsx("td",{children:"NVIDIA T4 (16 GB VRAM, spot)"}),e.jsx("td",{children:"0 credits (free)"}),e.jsx("td",{children:"Free: 60 min/session, 2/24h. Paid: unlimited."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"High Memory"})}),e.jsx("td",{children:"4 vCPU"}),e.jsx("td",{children:"32 GB"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"3 credits/hr"}),e.jsx("td",{children:"Paid plan"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"GPU T4 
1(On-demand)"})}),e.jsx("td",{children:"4 vCPU"}),e.jsx("td",{children:"16 GB"}),e.jsx("td",{children:"NVIDIA T4 (16 GB VRAM)"}),e.jsx("td",{children:"6 credits/hr"}),e.jsx("td",{children:"Paid plan"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"GPU A10G"})}),e.jsx("td",{children:"8 vCPU"}),e.jsx("td",{children:"32 GB"}),e.jsx("td",{children:"NVIDIA A10G (24 GB VRAM)"}),e.jsx("td",{children:"12 credits/hr"}),e.jsx("td",{children:"Paid plan"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Ultra High Memory"})}),e.jsx("td",{children:"8 vCPU"}),e.jsx("td",{children:"512 GB"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"20 credits/hr"}),e.jsx("td",{children:"Paid plan"})]})]})]}),e.jsxs("p",{children:["Free-plan users can launch notebooks on the ",e.jsx("strong",{children:"Standard"})," tier or the ",e.jsx("strong",{children:"GPU T4 (Spot)"})," tier (with guardrails: 1 concurrent session, 60 minutes per session, 2 sessions per 24 hours). Spot capacity is preemptible: AWS may reclaim the instance with ~2 minutes of notice, so s
1ave your work often. Paid plans get unlimited spot-GPU access plus the option to run ",e.jsx("strong",{children:"High Memory"}),", ",e.jsx("strong",{children:"On-demand GPU"}),", ",e.jsx("strong",{children:"A10G"}),", or ",e.jsx("strong",{children:"Ultra High Memory"})," tiers, which draw credits per minute while the notebook is running. Stop the notebook at any time to stop the draw."]}),e.jsxs(s,{children:["If a tier is locked, you'll see a lock icon next to it. Upgrade on the ",e.jsx(n,{to:"/pricing",children:"Pricing"})," page to unlock high-memory and on-demand GPU compute."]}),e.jsx("h3",{children:"Idle culling"}),e.jsx("p",{children:"Notebooks that are idle for more than 30 minutes are automatically stopped to free up resources and stop credits accruing. You can restart them at any time from the Notebooks tab; files in your home directory persist across restarts."}),e.jsx("h3",{children:"Credit visibility"}),e.jsx("p",{children:"The notebook viewer shows estimated credit usage based on the selected compute tier. If usage telemetry is configured for the cluster, measured usage from the last 24 hours may be shown instead of estimates. For metered tiers, a credit notice is displayed in the launch panel before you confirm."}),e.jsx("h3",{children:"Starter notebooks"}),e.jsx("p",{children:"Many archives ship with a getting-started notebook that opens automatically when the runtime is ready. It contains working code for that specific dataset: the right paths, the right reader library, and a first plot or query, so you have something running before you write a line yourself. If an archive has one, launching from the archive page takes you straight to it."})]})},{id:"docker-images",title:"Notebook environments and Docker images",keywords:["docker","container","image","custom","environment","pytorch","tensorflow","scipy","scan","validate","nvidia","nvcr","quay","registry","cryoem","genomics","geospatial","profile"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"A notebook environment is a Docker image: an operating system plus the libraries your analysis needs. Scigantic maintains a set of domain images so that, in most cases, you never have to choose one."}),e.jsx("h3",{children:"Curated domain images"}),e.jsx("p",{children:"When you launch a notebook, Scigantic pre-selects an image based on the archive's category. Each image is built and tested against the kinds of data in that domain, so the readers and plotting libraries are already installed and pinned to versions that work together."}),e.jsxs("table",{className:"help-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Environment"}),e.jsx("th",{children:"Built for"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Genomics"})}),e.jsx("td",{children:"Sequence and variant analysis, bioinformatics pipelines"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Cryo-EM & Cryo-ET"})}),e.jsx("td",{children:"mrcfile, starfile, stackview, scikit-image, and the EMPIAR streaming library"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Neuroscience"})}),e.jsx("td",{children:"MNE, NiMARE, and neuroimaging formats"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Geospatial & climate"})}),e.jsx("td",{children:"Raster, vector, and netCDF work: xarray, dask, cftime"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Pathology"})}),e.jsx("td",{children:"Whole-slide imaging and OME-Zarr"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Physiology"})}),e.jsx("td",{children:"Signal and waveform analysis"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Bioconductor"})}),e.jsx("td",{children:"R and the Bioconductor stack"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Machine learning"})}),e.jsx("td",{children:"PyTorch with CUDA, for GPU tiers"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Database"})}),e.jsx("td",{children:"Archives backed by a SQL endpoint rather than files"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Standard"})}),e.jsx("td",{children:"The general-purpose default: Python, pandas, and the scientific stack"})]})]})]}),e.jsx("p",{children:"The picker shows the recommended environment first, with the libraries it carries listed underneath. You can select a different one, and the archive owner can pin a 
1specific image so that everyone who launches gets the same environment."}),e.jsxs(l,{children:["Git-source archives always run on the standard image regardless of what you pick, because it is the only one carrying the ",e.jsx("code",{children:"git"})," and ",e.jsx("code",{children:"datalad"})," tooling those archives need to fetch their contents."]}),e.jsx("h3",{children:"Bringing your own image"}),e.jsx("p",{children:"You can supply any image from an OCI-compliant registry instead. It needs Python and a Jupyter server to function as a notebook."}),e.jsx("h3",{children:"Automatic image validation"}),e.jsx("p",{children:"When you enter a Docker image reference in any input field on Scigantic (archive creation, archive editing, or notebook launch), the platform automatically scans the image in real time. The scan checks:"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Registry accessibility:"})," Can the image be pulled without authentication? Scigantic follows the OCI token authentication challenge flow, which means it works correctly with registries like Docker Hub, NVIDIA NGC (",e.jsx("code",{children:"nvcr.io"}),"), Quay.io, GitHub Container Registry (",e.jsx("code",{children:"ghcr.io"}),"), and Amazon ECR Public."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Tag existence:"})," Does the specified tag exist in the repository? If not, Scigantic lists available tags that you can click to auto-fill. This is particularly useful for registries like NVIDIA NGC where images don't have a ",e.jsx("code",{children:"latest"})," tag and instead use version-specific tags like ",e.jsx("code",{children:"26.02-py3"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"JupyterHub compatibility:"})," Is the image known to work as a notebook environment? Images from the ",e.jsx("code",{children:"jupyter/"})," namespace are recognized as compatible. Known infrastructure images (nginx, redis, postgres, etc.) are flagged as incompatible. Unrecognized images are allowed but shown with a note that they need Python and a Jupyter server to function."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Compressed size:"}),` The image's compressed layer sizes are summed to determine the total download size. Images must be under 4 GB (compressed) to run on JupyterHub pods. Images between 2.5 GB and 4 GB show a "Large" warning because they may cause slow startup times.`]})]}),e.jsx("h3",{children:"What happens when an image isn't supported?"}),e.jsx("p",{children:"A yellow warning is shown instead of a red error. You can still save the image reference with the archive -- it serves as documentation of the environment used to produce or analyze the data. However, when launching a notebook, Scigantic falls back to the standard Scigantic environment, and the launch response indicates that the custom image was overridden."}),e.jsxs(s,{children:["If you need a library that isn't in your environment, install it at runtime with ",e.jsx("code",{children:"!pip install package-name"})," in a notebook cell. That install lasts only for the life of the session. For something you need every time, pin a custom image on the archive instead."]})]})},{id:"notebook-access",title:"Sharing and managing notebooks",keywords:["share","notebook","collaborator","access","editor","viewer","start","stop","delete","manage"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Notebooks use the same role-based access model as archives:"}),e.jsxs("table",{className:"help-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Role"}),e.jsx("th",{children:"View Details"}),e.jsx("th",{children:"Launch / Open"}),e.jsx("th",{children:"Stop"}),e.jsx("th",{children:"Manage Access"}),e.jsx("th",{children:"Delete"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Owner"})}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Editor"})}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Viewer"})}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"})]})]})]}),e.jsx("p",{children:'To share a notebook, open the notebook detail page and use the "Manage Access" section to add collaborators by email. You can set an expiry date for time-limited access.'}),e.jsx("h3",{children:"Notebook lifecycle"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Running:"})," The notebook is active and accessible via its launch URL. It consumes cluster resources."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Stopped:"})," The notebook is not running. It can be restarted at any time. No resources are consumed."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Auto-cull:"})," Idle notebooks (no activity for 30 minutes) are automatically stopped to free cluster resources."]})]}
1),e.jsx("p",{children:"When a notebook is deleted, all collaborators and the owner receive notifications."})]})}]},{id:"ai-assistant",title:"AI Assistant",icon:e.jsx(B,{}),articles:[{id:"ai-in-notebooks",title:"The notebook AI assistant",keywords:["ai","claude","assistant","chat","llm","agent","copilot","ask","anthropic"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Every Scigantic notebook includes an AI assistant powered by Claude, docked in the JupyterLab sidebar. It is not a generic chat window bolted onto the page: it runs inside your notebook session, with the archive already mounted, so it can look at the actual data rather than guess at it."}),e.jsx("h3",{children:"What it can do"}),e.jsx("p",{children:"The assistant works as an agent. It takes actions in your session and reports what it found, rather than only producing text:"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Read the data."})," It can list directories, open files, and grep through the mounted archive to find out how the dataset is actually laid out."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Write and edit notebooks."})," It can add cells, edit existing ones, and write supporting files."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Run code."})," It can execute cells and shell commands, then read the output, so it sees the traceback when something fails and can correct it."]})]}),e.jsx("p",{children:`In practice this means you can ask "what's in this archive and how is it organized?" and get an answer derived from the files themselves, or ask "plot the distribution of X" and get a cell that runs.`}),e.jsx("h3",{children:"Archive context"}),e.jsx("p",{children:"The assistant is briefed on the archive your notebook was launched from: its structure, file formats, naming conventions, and the quirks that are easy to trip over. Where an archive has companion datasets, those are included too, so questions that span more than one archive still land."}),e.jsx(s,{children:'Be specific about what you want to end up with. "Load the metadata table and show me how many samples per tissue" gives the assistant a target it can verify; "explore this data" does not.'}),e.jsx("h3",{children:"Availability and limits"}),e.jsx("p",{children:"The assistant is included on every plan, including Free. Monthly message allowances are 50 on Free, 300 on Researcher, and unlimited on Pro and Enterprise. Messages are counted per plan month."}),e.jsx(l,{children:"Reloading the browser tab ends the assistant's current turn. If you reload while it is working, the work in flight is lost. Wait for it to finish, or start the request again after the reload."})]})}]},{id:"organizations",title:"Organizations",icon:e.jsx(M,{}),articles:[{id:"join-org",title:"Joining an organization",keywords:["join","organization","invite","code","team","redeem"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Organizations provide a shared workspace for teams. To join one, you need an invite code from the organization's admin."}),e.jsx("h3",{children:"During signup"}),e.jsx("p",{children:"If you have an invite code when you first register for Scigantic, you can enter it on the signup form. After verifying your email, you'll automatically be added to the organization with the role specified by the code."}),e.jsx("h3",{children:"After signup"}),e.jsx(t,{num:1,title:"Go to Profile > My Organization",children:"If you're not yet part of an organization, you'll see options to join or create one."}),e.jsx(t,{num:2,title:"Enter the invite code",children:'Paste the code provided by your admin into the "Join an Organization" field.'}),e.jsx(t,{num:3,title:"Validate and join",children:`Click "Validate Code" to verify the code is valid, not expired, and has remaining uses. Then click "Join Organization" to confirm. You'll receive a notification confirming your membership and assigned role.`}),e.jsx("h3",{children:"Invite code details"}),e.jsx("p",{children:"Invite codes are generated by organization admins and have the following properties:"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Role:"})," Each code grants a specific role (Member or Viewer)"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Expiration:"})," Codes expire after a set number of days (1-365)"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Max uses:"})," Each code has a maximum number of redemptions (1-100)"]})]}),e.jsx(s,{children:"When you join via an invite code, the organization admin receives an email and notification that a new member has joined."})]})},{id:"create-org",title:"Creating an organization",keywords:["create","organization","new","request","approval","review","admin"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Any registered user can request to create a new organization. Requests are reviewed by the Scigantic team to maintain platform quality."}),e.jsx(t,{num:1,title:"Navigate to Profile > My Organization",children:'Select the "Create an Organization" option.'}),e.jsxs(t,{num:2,title:"Provide organization details",children:[e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Organization Name"})," (required) -- Must be at least 2 characters. This is how your organization appears across the platform."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Description"})," (required) -- Describe the organization's purpose and focus. Must be at least 10 characters."]})]}),e.jsx("p",{children:"Both fields are checked for inappropriate language."})]}),e.jsx(t,{num:3,title:"Submit for review",children:"Your request is sent to the Scigantic team for review. An email is sent to the Scigantic admin with your request details, including approve/deny action buttons."}),e.jsx(t,{num:4,title:"Wait for approval",children:e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"If approved:"})," You receive an email and in-app notification confirming your organization is active. You are automatically assigned as the organization Admin."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"If denied:"})," You receive an email and notification explaining the decision."]})]})}),e.jsx(s,{children:"Most organization requests are reviewed within 24 hours during business days."})]})},{id:"manage-org",title:"Organization administration",keywords:["manage","admin","members","invite","role","remove","organization","visibility","codes"],content:e.jsxs(e.Fragment,{children:[e.jsxs("p",{children:["Organization admins have access to the ",e.jsx("strong",{children:"Manage Organization"})," tab in their profile, which provides tools for managing members, generating invite codes, and controlling content visibility."]}),e.jsx("h3",{children:"Organization roles"}),e.jsxs("table",{className:"help-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Role"}),e.jsx("th",{children:"View Content"}),e.jsx("th",{children:"Create/Edit"}),e.jsx("th",{children:"Manage Members"}),e.jsx("th",{children:"Generate Codes"}),e.jsx("th",{children:"Change Visibility"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Admin"})}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Member"})}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Viewer"})}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"}),e.jsx("td",{children:"No"})]})]})]}),e.jsx("h3",{children:"Generating invite codes"}),e.jsx("p",{children:"From the Manage Organization tab, admins can create invite codes by specifying a role (Member or Viewer), an expiration period (1-365 days), and a maximum number of uses (1-100). Each generated code is a unique string that can be shared via email, Slack, or any other channel. Active codes, their usage counts, and expiration dates are displayed in a table."}),e.jsx("h3",{children:"Managing members"}),e.jsx("p",{children:"The member list shows all current organization members with their email, role, and join date. Admins can:"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Change a member's role"})," -- Promote or demote between Admin, Member, and Viewer. The affected user receives a notification."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Set access expiry"})," -- Configure a date after which the member's access is revoked."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Remove a member"})," -- Immediately removes the user from the organization. They receive both an email and an in-app notification informing them of the removal."]})]}),e.jsx("h3",{children:"Content visibility controls"}),e.jsx("p",{children:"Admins can override the visibility of archives and notebooks created by organization members:"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Public"})," -- Visible to everyone"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Organization"})," -- Visible only to organization members"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Private"})," -- Visible only to the owner and explicit collaborators"]})]}),e.jsx("p",{children:"When an admin changes a member's content visibility, the content owner receives a notification."})]})}]},{id:"search-discover",title:"Search & Discovery",icon:e.jsx(E,{}),articles:[{id:"search-archives",title:"How search works",keywords:["search","find","explore","discover","query","semantic","lexical","filter","sort","keyword"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Scigantic search is semantic. Your query is matched on meaning rather than on the exact characters you typed, so an archive can rank highly without containing your words at all. What matters is whether it is about the thing you asked for."}),e.jsx("h3",{children:"Writing a good query"}),e.jsx("p",{children:"Describe what you are looking for the way you would describe it to a colleague. Full p
1hrases work better than isolated keywords:"}),e.jsxs("ul",{children:[e.jsx("li",{children:'"brain imaging data from longitudinal studies"'}),e.jsx("li",{children:'"climate temperature measurements from satellite sensors"'}),e.jsx("li",{children:'"machine learning models for protein structure prediction"'}),e.jsx("li",{children:'"single-cell RNA sequencing datasets"'})]}),e.jsxs("p",{children:["Domain abbreviations and instrument names are expanded automatically, so searching for ",e.jsx("code",{children:"scRNA-seq"}),", ",e.jsx("code",{children:"cryo-ET"}),", or ",e.jsx("code",{children:"ONT"})," finds archives that spell those out in full, and the reverse."]}),e.jsx(s,{children:"Because ranking is by meaning, the most relevant result is at the top rather than the newest. If you re-sort the list, you replace relevance ordering with whatever you sorted by."}),e.jsx("h3",{children:"Homepage search"}),e.jsxs("p",{children:["The search bar on the ",e.jsx(n,{to:"/",children:"homepage"}),` ("What do you want to discover?") jumps straight into results. Enter a query and press Enter -- you'll be taken to the Explore page with your search pre-filled.`]}),e.jsx("h3",{children:"Filtering and sorting"}),e.jsxs("p",{children:["On the ",e.jsx(n,{to:"/explore",children:"Explore"})," page, you can narrow results using:"]}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Category"})," -- pills across the top for the major research domains"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Content type"})," -- dataset, model, code, and so on"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Cloud provider"})," -- AWS, GCS, Azure, or Git-hosted"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Region"})," -- narrow to a cloud region, which matters for notebook latency and transfer cost"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Sort order"})," -- newest, oldest, or alphabetical"]})]}),e.jsx("p",{children:"Results load incrementally as you scroll, with server-side pagination, so large collections stay responsive."}),e.jsx("h3",{children:"Finding archives by paper"}),e.jsxs("p",{children:["If you have a paper in hand, the ",e.jsx(n,{to:"/papers",children:"paper lookup"})," page tries to match it to archives on Scigantic that hold the underlying or related data."]})]})},{id:"sample-notebooks",title:"Sample notebooks",keywords:["sample","example","demo","try","showcase","tutorial","starter","homepage"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Sample notebooks are worked analyses built on real public archives. Each one answers a specific question (comparing tumors against cell lines, checking an fMRI result across cohorts, putting Sentinel-2 and Landsat over the same patch of ground), and each runs end to end without setup."}),e.jsx("p",{children:"They are the fastest way to see what a Scigantic notebook is actually like. You can browse them from the homepage and open one directly; the archives it needs are mounted for you when the runtime starts."}),e.jsx("p",{children:"Several are cross-archive: they mount more than one dataset at once, which is the case that is genuinely awkward to reproduce on a laptop and where the platform earns its keep."}),e.jsx(s,{children:"Opening a sample notebook launches a real runtime on your account, so it draws credits like any other notebook and is subject to the same free-tier session limits."})]})}]},{id:"account-settings",title:"Account & Settings",icon:e.jsx(U,{}),articles:[{id:"profile-settings",title:"Profile and preferences",keywords:["profile","settings","name","email","language","privacy","display","timezone","compact"],content:e.jsxs(e.Fragment,{children:[e.jsxs("p",{children:["Access your settings from the profile dropdown (click your avatar) > ",e.jsx("strong",{children:"Settings"}),", or navigate to ",e.jsx(n,{to:"/profile",children:"your profile"})," and select the Settings tab."]}),e.jsx("h3",{children:"Profile"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Display Name"})," -- How your name appears across Scigantic (on archives you create, in collaborator lists, and in notifications). Changes are reflected immediately."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Email"}
1)," -- Your login email, used for notifications, archive ownership attribution, and password reset. Displayed to collaborators so they can contact you."]})]}),e.jsx("h3",{children:"Notification preferences"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Archive activity"})," -- Notifications when someone accesses or interacts with your archives"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Notebook status"})," -- Notifications when notebooks start, stop, or encounter errors"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Organization updates"})," -- Notifications about new members, role changes, and organization activity"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Weekly digest"})," -- A summary email of activity across your archives and notebooks, sent once per week"]})]}),e.jsx("h3",{children:"Privacy"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Public profile"})," -- Whether other users can see your profile page"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Show email"})," -- Whether your email is visible on your profile"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Default archive visibility"})," -- New archives will default to Public or Private (changeable per archive)"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Default notebook visibility"})," -- New notebooks will default to Public or Private"]})]}),e.jsx("h3",{children:"Display"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Language"})," -- Switch between English and Español. Affects all UI text."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Timezone"})," -- Controls how dates and times are displayed throughout the application"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Compact view"})," -- Uses a more condensed layout for archive and notebook lists, showing more items per page"]})]})]})},{id:"notifications",title:"Understanding notifications",keywords:["notifications","alerts","bell","unread","activity","badge","read","mark"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Scigantic sends in-app notifications to keep you informed about activity related to your archives, notebooks, and organization. Notifications are designed to be comprehensive -- you should never be surprised by an access change or deletion."}),e.jsx("h3",{children:"What triggers a notification"}),e.jsx("p",{children:e.jsx("strong",{children:"Archive events:"})}),e.jsxs("ul",{children:[e.jsx("li",{children:"You are added as a collaborator on an archive"}),e.jsx("li",{children:"Your role on an archive is changed (e.g., Viewer to Editor)"}),e.jsx("li",{children:"You are removed as a collaborator from an archive"}),e.jsx("li",{children:"An archive you have access to is deleted by its owner"}),e.jsx("li",{children:"An organization admin changes the visibility of your archive"})]}),e.jsx("p",{children:e.jsx("strong",{children:"Notebook events:"})}),e.jsxs("ul",{children:[e.jsx("li",{children:"You are added as a collaborator on a notebook"}),e.jsx("li",{children:"Your role on a notebook is changed"}),e.jsx("li",{children:"You are removed from a notebook"}),e.jsx("li",{children:"A notebook you have access to is deleted"}),e.jsx("li",{children:"An organization admin changes the visibility of your notebook"})]}),e.jsx("p",{children:e.jsx("strong",{children:"Organization events:"})}),e.jsxs("ul",{children:[e.jsx("li",{children:"A new member joins your organization (via invite code)"}),e.jsx("li",{children:"You are added directly to an organization"}),e.jsx("li",{children:"Your role in the organization changes"}),e.jsx("li",{children:"You are removed from the organization"}),e.jsx("li",{children:"The organization is deleted by an admin"}),e.jsx("li",{children:"Your organization creation request is approved or denied"})]}),e.jsx("h3",{children:"Viewing and managing notifications"}),e.jsxs("p",{children:["Unread notifications appear as a ",e.jsx("strong",{children:"red badge with a count"}),' on your avatar in the navigation bar and next to "Notifications" in the profile dropdown menu. The browser tab title also updates to show the unread count (e.g., "(3) Scigantic").']}),e.jsx("p",{children:'Click "Notifications" in the dropdown or navigate to the Notifications tab in your profile to see the full list. You can filter between "All" and "Unread," mark individual notifications as read by clicking them, or use "Mark all as read" to clear the badge.'})]})}
1,{id:"delete-account",title:"Account deletion",keywords:["delete","account","remove","data","privacy","gdpr","request"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Scigantic provides a managed account deletion process to ensure data is handled securely and completely."}),e.jsx(t,{num:1,title:"Go to Profile > Settings",children:'Scroll to the "Account Deletion" section at the bottom of the Settings tab.'}),e.jsx(t,{num:2,title:"Submit a deletion request",children:'Click "Request Account Deletion." You can optionally provide a reason for leaving. The request is submitted to the Scigantic team for processing.'}),e.jsxs(t,{num:3,title:"Confirmation",children:[e.jsx("p",{children:"You'll see an on-screen confirmation that your request was received. Two emails are sent:"}),e.jsxs("ul",{children:[e.jsx("li",{children:"One to you, confirming your deletion request and that it is under review"}),e.jsx("li",{children:"One to the Scigantic team to process the deletion"})]})]}),e.jsx("p",{children:"The Scigantic team will remove your account and all associated data, including archives, notebooks, organization memberships, notifications, and activity logs. This process is irreversible."}),e.jsx(l,{children:"Before requesting deletion, export any data or configuration you want to keep. Your cloud storage buckets are not affected -- only the Scigantic metadata and references are removed."})]})}]},{id:"fine-tuning",title:"Fine-Tuning",icon:e.jsx(Y,{}),articles:[{id:"what-is-fine-tuning",title:"What is fine-tuning on Scigantic?",keywords:["fine-tune","finetune","fine tuning","train","model","lora","esm","protein","dna","adapter"],content:e.jsxs(e.Fragment,{children:[e.jsxs("p",{children:["Fine-tuning adapts an open foundation model to ",e.jsx("em",{children:"your"})," labeled data, without training a model from scratch or writing a training pipeline."]}),e.jsxs("p",{children:["You provide a CSV/TSV with a ",e.jsx("strong",{children:"sequence"})," column and a ",e.jsx("strong",{children:"label"})," column. Scigantic attaches a lightweight LoRA adapter plus a mean-pool + BatchNorm head, freezes the large backbone, and trains only ~0.1% of the parameters on a GPU. The result is a small downloadable model archive (the adapter + head, a few MB rather than the multi-GB base model)."]}),e.jsx("h3",{children:"Available base models"}),e.jsxs("p",{children:["The ",e.jsx("a",{href:"/finetune",children:"model gallery"})," covers several modalities:"]}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Protein"}),": ESM2 (35M and 650M), ESM Cambrian, ProtBERT, ProtT5-XL"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"DNA"}),": Nucleotide Transformer (500M and v3), DNABERT-2, GENA-LM"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Genomic language"}),": gLM2"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Molecules"}),": ChemBERTa, CheMeleon"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"ADMET"}),": OpenADMET models for permeability/LogD/PPB, microsomal clearance, CYP inhibition, and PXR induction"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Structure"}),": OpenFold3"]})]}),e.jsx("p",{children:"Pick a model whose pretraining matches your data type: a protein model for amino-acid sequences, a DNA model for nucleotide sequences, a molecular model for SMILES."}),e.jsx("h3",{children:"Tasks"}),e.jsxs("p",{children:["Both ",e.jsx("strong",{children:"regression"})," (continuous labels such as binding affinity, fitness, stability) and ",e.jsx("strong",{children:"classification"})," (categorical labels) are supported. The task is auto-detected from your labels, or you can set it explicitly to ",e.jsx("code",{children:"regression"})," or ",e.jsx("code",{children:"classification"}),"."]}),e.jsxs(s,{children:["You don't need a GPU notebook open. Training runs as a headless job and reports its score when it finishes. Browse available base models in the ",e.jsx("a",{href:"/finetune",children:"model gallery"}),"."]})]})},{id:"run-a-fine-tune",title:"Running a fine-tune job",keywords:["fine-tune","upload","csv","tsv","submit","job","train","how to","gpu"],content:e.jsxs(e.Fragment,{children:[e.jsxs(t,{num:1,title:"Pick a model",children:["From the ",e.jsx("a",{href:"/finetune",children:"Models & Pipelines"})," gallery, open a base model that matches your data type (protein, DNA, or molecules)."]}),e.jsx(t,{num:2,title:"Upload your data",children:"Upload a CSV or TSV (only CSV/TSV are accepted, not images, videos, or other formats). Set the sequence column and label column; a preview confirms the file parsed and the columns were found."}
1),e.jsxs(t,{num:3,title:"Choose options (optional)",children:["Leave the task as ",e.jsx("code",{children:"auto"}),", or set epochs, batch size, and an optional holdout column to score on truly unseen groups. Defaults are sensible."]}),e.jsxs(t,{num:4,title:"Submit & track",children:["Submit, then follow the link to the job page. It polls while the job runs and shows the validation score, run details, and a download for the trained model plus the training data you used. All your runs live under ",e.jsx("strong",{children:"My Jobs"}),"."]}),e.jsx(l,{children:`Fine-tuning requires an account. Submitting while signed out routes you to log in. Capacity is shared; if every GPU slot is briefly in use you'll see a "capacity full, try again" message rather than an error.`})]})},{id:"fine-tune-costs",title:"Fine-tune hours & credits",keywords:["fine-tune","cost","price","hours","credits","billing","free","pro","researcher","gpu","a10g"],content:e.jsxs(e.Fragment,{children:[e.jsxs("p",{children:["Fine-tuning trains on A10G GPUs, which bill at ",e.jsx("strong",{children:"12 credits/hour"}),". Every plan includes a monthly pool of fine-tune hours:"]}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Free"}),": 1 hour per month"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Researcher ($19/mo)"}),": 10 hours per month"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Pro ($79/mo)"}),": 50 hours per month"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Enterprise"}),": custom volume"]})]}),e.jsxs("p",{children:["Usage ",e.jsx("em",{children:"beyond"})," your included hours draws from your monthly compute credits at the A10G rate. Jobs are billed on actual GPU time, and small jobs on small models finish in minutes, so the included hours go a long way."]}),e.jsxs(s,{children:["See the full breakdown, including credit rates for every compute tier, on the ",e.jsx("a",{href:"/pricing",children:"Pricing"})," page."]})]})}]},{id:"billing",title:"Plans & Billing",icon:e.jsx(F,{}),articles:[{id:"plans",title:"Free, Researcher, Pro, and Enterprise plans",keywords:["plan","free","pro","researcher","student","academic","pricing","cost","billing","enterprise","institutional","private","compute","gpu","tier","credits"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Scigantic has four plans. The paid tiers differ mainly in how many compute credits, AI messages, and fine-tune hours you get each month."}),e.jsxs("table",{className:"help-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Feature"}),e.jsx("th",{children:"Free"}),e.jsx("th",{children:"Researcher ($19/mo)"}),e.jsx("th",{children:"Pro ($79/mo)"}),e.jsx("th",{children:"Enterprise"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:"Monthly compute credits"}),e.jsx("td",{children:"10"}),e.jsx("td",{children:"60"}),e.jsx("td",{children:"200"}),e.jsx("td",{children:"Custom"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"AI chat messages / month"}),e.jsx("td",{children:"50"}),e.jsx("td",{children:"300"}),e.jsx("td",{children:"Unlimited"}),e.jsx("td",{children:"Unlimited"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Fine-tune hours / month"}),e.jsx("td",{children:"1 hr"}),e.jsx("td",{children:"10 hrs"}),e.jsx("td",{children:"50 hrs"}),e.jsx("td",{children:"Custom"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"GPU notebooks (T4 Spot)"}),e.jsx("td",{children:"60 min/session, 2/24h"}),e.jsx("td",{children:"Unlimited"}),e.jsx("td",{children:"Unlimited"}),e.jsx("td",{children:"Unlimited"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"High-memory & on-demand GPU"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Private archives"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"Unlimited"}),e.jsx("td",{children:"Unlimited"}),e.jsx("td",{children:"Unlimited"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Public archives, search, citations"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Organizations & RBAC"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"}),e.jsx("td",{children:"Yes"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Dedicated JupyterHub cluster"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"Yes"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Enterprise SSO"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"Yes"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Support"}),e.jsx("td",{children:"Email"}),e.jsx("td",{children:"Priority email"}),e.jsx("td",{children:"Priority email"}),e.jsx("td",{children:"Dedicated"})]})]})]}),e.jsx("h3",{children:"Which plan fits"}),e.jsxs("p",{children:[e.jsx("strong",{children:"Researcher"})," is priced for grad students, postdocs, and independent researchers who need GPU access and private datasets without a lab budget. ",e.jsx("strong",{children:"Pro"}
1)," is for professional researchers and teams who want a larger credit pool and unlimited AI. Both unlock the same feature set; the difference is volume."]}),e.jsx("h3",{children:"Going over your allowance"}),e.jsx("p",{children:"Credits beyond your monthly pool are billed per credit ($0.50 on Researcher, $0.60 on Pro). Free-plan usage is capped rather than billed; you are never charged without a subscription."}),e.jsx("h3",{children:"Enterprise plans"}),e.jsxs("p",{children:["For universities, biopharma teams, and research institutions that need dedicated JupyterHub clusters, volume credits, or enterprise SSO, ",e.jsx(n,{to:"/contact",children:"contact us"}),". Enterprise also covers running Scigantic inside your own AWS account; see ",e.jsx("em",{children:"Running Scigantic in your own AWS account"}),"."]}),e.jsx(s,{children:"Scigantic does not bill for data storage or transfer at all; those costs are between you and your cloud provider. Your subscription covers compute credits, AI messages, and fine-tune hours."})]})},{id:"compute-tiers",title:"Compute tiers and how credits work",keywords:["compute","tier","gpu","t4","a10g","high memory","ultra","credits","billing","per minute","nvidia","vram","instance","dedicated","standard","invoice","cost","hourly","overage"],content:e.jsxs(e.Fragment,{children:[e.jsxs("p",{children:["When launching a notebook, you choose a ",e.jsx("strong",{children:"compute tier"})," that determines the CPU, memory, and GPU allocated to your session. Tiers consume ",e.jsx("strong",{children:"credits"}),", which every plan grants monthly (10 on Free, 60 on Researcher, 200 on Pro)."]}),e.jsx("h3",{children:"Available tiers"}),e.jsxs("table",{className:"help-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Tier"}),e.jsx("th",{children:"CPU"}),e.jsx("th",{children:"Memory"}),e.jsx("th",{children:"GPU"}),e.jsx("th",{children:"Credits"}),e.jsx("th",{children:"Best for"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Standard"})}),e.jsx("td",{children:"2 vCPU"}),e.jsx("td",{children:"5 GB"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"1 credit/hr"}),e.jsx("td",{children:"Data exploration, visualization, light scripting"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"GPU T4 (Spot)"})}),e.jsx("td",{children:"4 vCPU"}),e.jsx("td",{children:"16 GB"}),e.jsx("td",{children:"NVIDIA T4 (16 GB VRAM, spot)"}),e.jsx("td",{children:"0 credits (free)"}),e.jsx("td",{children:"ML inference, light training, computer vision (preemptible)"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"High Memory"})}),e.jsx("td",{children:"4 vCPU"}),e.jsx("td",{children:"32 GB"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"3 credits/hr"}),e.jsx("td",{children:"Large datasets, memory-intensive analysis, genomics"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"GPU T4 (On-demand)"})}),e.jsx("td",{children:"4 vCPU"}),e.jsx("td",{children:"16 GB"}),e.jsx("td",{children:"NVIDIA T4 (16 GB VRAM)"}),e.jsx("td",{children:"6 credits/hr"}),e.jsx("td",{children:"Same as spot, but guaranteed availability with no preemption"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"GPU A10G"})}),e.jsx("td",{children:"8 vCPU"}),e.jsx("td",{children:"32 GB"}),e.jsx("td",{children:"NVIDIA A10G (24 GB VRAM)"}),e.jsx("td",{children:"12 credits/hr"}),e.jsx("td",{children:"Model training, fine-tuning, large model inference"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Ultra High Memory"})}),e.jsx("td",{children:"8 vCPU"}),e.jsx("td",{children:"512 GB"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"20 credits/hr"}),e.jsx("td",{children:"Kraken 2 large databases, scRNA-seq, workloads needing 250 to 512 GB RAM"})]})]})]}),e.jsx("h3",{children:"Who can use which tiers?"}),e.jsxs("p",{children:[e.jsx("strong",{children:"Free-plan users"})," can launch notebooks on the Standard tier and the ",e.jsx("strong",{children:"GPU T4 (Spot)"})," tier (1 concurrent session, 60 minutes per session, 2 sessions per 24h). High Memory, Ultra High Memory, On-demand GPU T4, and A10G require a paid plan. Spot GPU is unmetered on paid plans."]}),e.jsxs("p",{children:["In the notebook launch panel, locked tiers display a lock icon. Visit ",e.jsx(n,{to:"/pricing",children:"Pricing"})," to unlock them."]}),e.jsx("h3",{children:"How credits are consumed"}),e.jsx(t,{num:1,title:"Pick a tier",children:"The launch panel shows each tier's rate in credits per hour before you confirm. Spot GPU is 0 credits on every plan."}),e.jsx(t,{num:2,title:"Credits draw down per minute",children:"Credits are consumed by the minute while the notebook pod is active. The per-hour figures are for reference: a 20-minute A10G session costs 4 credits, not 12."}),e.jsx(t,{num:3,title:"Stop the notebook to stop the draw",children:"Stop the notebook at any time from the Notebooks tab or the notebook detail page. Idle notebooks are auto-culled after 30 minutes of inactivity, which stops the draw automatically."}),e.jsx(t,{num:4,title:"Overage is billed on your invoice",children:"If you exceed your monthly credit pool, additional credits are billed at $0.50 each on Researcher and $0.60 each on Pro, and appear on your next Stripe invoice alongside your subscription. You can review usage in y
1our billing portal."}),e.jsx("h3",{children:"GPU notebooks"}),e.jsx("p",{children:"GPU tiers provision a dedicated NVIDIA GPU to your notebook pod. This enables CUDA-accelerated workloads such as deep learning training, model fine-tuning, and large-scale inference. GPU nodes are provisioned on demand by Karpenter, so startup may take 2-5 minutes while the node scales up."}),e.jsxs("p",{children:["To use the GPU inside your notebook, pick a CUDA-enabled environment. Scigantic's machine-learning image ships PyTorch with CUDA already configured; if you supply your own image, an NVIDIA NGC image such as ",e.jsx("code",{children:"nvcr.io/nvidia/pytorch"})," with a version tag works too (NGC images have no ",e.jsx("code",{children:"latest"})," tag)."]}),e.jsx(l,{children:"GPU tiers consume credits several times faster than Standard. Always stop your notebook when you're done. Idle culling (30 minutes) is a safety net, not a billing strategy."}),e.jsx("h3",{children:"High-memory notebooks"}),e.jsx("p",{children:"The High Memory tier raises available RAM to 32 GB while keeping 4 vCPU, which suits loading large datasets fully into memory or running memory-hungry statistical models. Ultra High Memory goes to 512 GB for the cases that genuinely need it, such as large Kraken 2 databases or big single-cell objects. It is the most expensive tier per hour, so use it deliberately."}),e.jsxs(s,{children:["If you're unsure where to start, try ",e.jsx("strong",{children:"GPU T4 (Spot)"}),". It costs 0 credits on every plan and still gives you a real GPU. Relaunch on a heavier tier only once you know you need it."]})]})},{id:"storage-costs",title:"Understanding storage and transfer costs",keywords:["cost","storage","transfer","egress","requester","pays","aws","gcs","azure","byob"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Scigantic does not charge for data storage or transfer. All storage costs are between you and your cloud provider."}),e.jsx("h3",{children:"How costs work"}),e.jsx("p",{children:"When you create an archive, you're linking cloud storage you already have. The data stays where it is -- Scigantic never copies or stores it. This means:"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Storage costs"})," are determined by your cloud provider's pricing for the bucket's storage class and region"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Transfer costs"})," (egress) are incurred when users download data from the bucket or when notebooks access data via FUSE mounts"]})]}),e.jsx("h3",{children:"Requester Pays (AWS S3 and GCS)"}),e.jsx("p",{children:`AWS S3 and Google Cloud Storage support a "Requester Pays" configuration. When enabled, users who access the data pay for the transfer costs rather than the bucket owner. This is useful for large public datasets where the data provider doesn't want to bear the cost of others downloading their data.`}),e.jsx("p",{children:"Scigantic displays a notice during archive creation when a bucket is configured as Requester Pays."}),e.jsx("h3",{children:"Azure"}),e.jsx("p",{children:"Azure Blob Storage does not support Requester Pays. Egress costs are always paid by the storage account owner."}),e.jsx("h3",{children:"Notebook FUSE mount costs"}),e.jsx("p",{children:"When using FUSE mounts in notebooks, reads from the storage bucket stay in-region if the notebook runtime and bucket are in the same cloud region (which Scigantic enforces by default). In-region S3 reads have no data transfer costs; you only pay for the API requests (GET, LIST operations), which are typically negligible."}),e.jsx("h3",{children:"Compute costs vs. storage costs"}),e.jsxs("p",{children:["Storage and transfer costs (described above) are separate from Scigantic's notebook compute credits. Storage costs go to your cloud provider; notebook tiers consume credits from your monthly pool (High Memory 3/hr, GPU T4 On-demand 6/hr, GPU A10G 12/hr, Ultra High Memory 20/hr). Standard costs 1 credit/hr and Spot GPU is free on every plan. See ",e.jsx("em",{children:"Compute tiers and how credits work"}),"."]})]})}]},{id:"integrations",title:"API & Integrations",icon:e.jsx(D,{}),articles:[{id:"mcp-server",title:"Using Scigantic from ChatGPT or Claude (MCP server)",keywords:["mcp","chatgpt","claude","api","integration","agent","model context protocol","claude code","desktop","tools","connector","deep research"],content:e.jsxs(e.Fragment,{children:[e.jsxs("p",{children:["Scigantic runs a hosted ",e.jsx("strong",{children:"Model Context Protocol"}
1)," server, so an AI assistant such as ChatGPT, Claude Code or Claude Desktop can search the archive catalog and pull dataset context directly into your session, without you leaving your editor or copying anything by hand. No Scigantic account or API key is needed."]}),e.jsx("h3",{children:"Connecting"}),e.jsxs("p",{children:["The server is hosted at ",e.jsx("code",{children:"https://api.scigantic.com/mcp"}),". There is nothing to install."]}),e.jsxs("p",{children:[e.jsx("strong",{children:"ChatGPT:"})," open Settings, then Connectors, and create a connector with that URL. Choose No authentication. Deep research can then search Scigantic and cite the datasets it finds."]}),e.jsx("p",{children:e.jsx("strong",{children:"Claude Code:"})}),e.jsx("pre",{children:e.jsx("code",{children:"claude mcp add --transport http scigantic https://api.scigantic.com/mcp"})}),e.jsxs("p",{children:[e.jsx("strong",{children:"Claude Desktop and other MCP clients:"})," add a remote MCP server with the same URL."]}),e.jsx("h3",{children:"What it exposes"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("code",{children:"search"})," and ",e.jsx("code",{children:"fetch"})," -- the two tools ChatGPT uses: search returns matching datasets, fetch returns one dataset's description and schema card"]}),e.jsxs("li",{children:[e.jsx("code",{children:"search_archives"})," -- semantic search across the catalog"]}),e.jsxs("li",{children:[e.jsx("code",{children:"get_archive"})," -- full metadata for one archive"]}),e.jsxs("li",{children:[e.jsx("code",{children:"list_archive_files"})," -- browse an archive's file tree"]}),e.jsxs("li",{children:[e.jsx("code",{children:"get_data_access"}
1)," -- how to actually reach the data (paths, commands, credentials posture)"]}),e.jsxs("li",{children:[e.jsx("code",{children:"get_schema_card"})," -- the structural brief for a dataset: layout, formats, conventions, and known pitfalls"]}),e.jsxs("li",{children:[e.jsx("code",{children:"get_sample_notebook"})," -- a worked example for an archive"]}),e.jsxs("li",{children:[e.jsx("code",{children:"list_compute_tiers"})," -- available notebook tiers and their credit rates"]}),e.jsxs("li",{children:[e.jsx("code",{children:"lookup_paper"})," -- match a paper to archives holding related data"]})]}),e.jsxs("p",{children:["Two prompts ship with it as shortcuts: ",e.jsx("code",{children:"explore_dataset"})," and ",e.jsx("code",{children:"start_analysis"}),"."]}),e.jsx(s,{children:"The schema card is the piece that changes results most. It tells the agent how a dataset is really laid out, so generated code uses the right paths and readers on the first attempt instead of discovering them by trial and error."})]})},{id:"byoc",title:"Running Scigantic in your own AWS account",keywords:["byoc","aws","marketplace","private","own account","vpc","enterprise","deploy","compliance","bedrock"],content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Organizations that cannot send data or compute outside their own cloud boundary can run the Scigantic data plane inside their own AWS account. Notebooks, storage, and model inference stay in your account and your region; Scigantic provides the catalog and control plane."}),e.jsx("h3",{children:"How it works"}),e.jsxs(t,{num:1,title:"Subscribe",children:["Subscribe through AWS Marketplace, or ",e.jsx(n,{to:"/contact",children:"contact us"})," to arrange it directly. Marketplace subscribers are routed to a page that links the subscription to their Scigantic organization."]}),e.jsx(t,{num:2,title:"Connect your AWS account",children:"Deploy the provided CloudFormation template into the account and region you want to run in. It stands up a JupyterHub cluster and the supporting infrastructure, then registers the hub back with Scigantic."}),e.jsx(t,{num:3,title:"Launch as usual",children:"Members of your organization launch notebooks the same way as on hosted Scigantic. The requests are routed to your cluster instead of ours."}),e.jsx("h3",{children:"What stays in your account"}),e.jsxs("ul",{children:[e.jsx("li",{children:"Notebook compute and any data mounted into it"}),e.jsx("li",{children:"Your S3 buckets, which can optionally be surfaced in Explore for your members only"}),e.jsx("li",{children:"AI assistant inference, which runs on your own Amazon Bedrock rather than through Scigantic"})]}),e.jsx(l,{children:"Not every region supports the full stack. GPU instance availability varies, and fine-tuning needs GPU families that some regions lack. The setup flow shows the regions that are known to work end to end."})]})}]}],W=()=>{const[r,h]=u.useState(""),[d,j]=u.useState(null),[v,f]=u.useState(null),g=u.useMemo(()=>b.flatMap(i=>i.articles.map(o=>({...o,sectionId:i.id,sectionTitle:i.title}))),[]),w=u.useMemo(()=>{if(!r.trim())return[];const i=r.toLowerCase(),o=i.split(/\s+/).filter(a=>a.length>1);return g.map(a=>{const m=a.title.toLowerCase().includes(i)?10:0,A=a.keywords.filter(y=>o.some(T=>y.includes(T))).length*3,C=o.filter(y=>a.title.toLowerCase().includes(y)).length*2,P=m+A+C;return{...a,score:P}}).filter(a=>a.score>0).sort((a,m)=>m.score-a.score)},[r,g]),k=r.trim().length>0,p=(i,o)=>{f(i),j(o),h(""),window.scrollTo({top:0,behavior:"smooth"})},S=()=>{j(null),f(null)},x=d?g.find(i=>i.id===d):null,c=v?b.find(i=>i.id===v):null;return e.jsxs("div",{className:"help-center",children:[e.jsxs("div",{className:"help-hero",children:[e.jsxs("div",{className:"help-hero-inner",children:[e.jsxs("div",{className:"help-hero-text",children:[e.jsx("h1",{children:"Documentation & Help"}),e.jsx("p",{children:"Guides, references, and support for using Scigantic"})]}),e.jsxs("div",{className:"help-search-wrapper",children:[e.jsx(N,{}),e.jsx("input",{type:"text",value:r,onChange:i=>h(i.target.value),placeholder:"Search docs...",className:"help-search-input"}),r&&e.jsx("button",{className:"help-search-clear",onClick:()=>h(""),"aria-label":"Clear",children:"×"})]})]}),k&&e.jsx("div",{className:"help-search-results",children:w.length===0?e.jsxs("div",{className:"help-search-empty",children:[e.jsxs("p",{children:['No results for "',r,'"']}),e.jsxs("p",{className:"help-search-empty-sub",children:["Try different keywords or ",e.jsx(n,{to:"/contact",children:"contact support"})]})]}):w.map(i=>e.jsxs("button",{className:"help-search-result",onClick:()=>p(i.sectionId,i.id),children:[e.jsx("span",{className:"help-search-result-section",children:i.sectionTitle}),e.jsx("span",{className:"help-search-result-title",children:i.title})]},i.id))})]}),e.jsx("div",{className:"help-body",children:x?e.jsxs("div",{className:"help-article-view",children:[e.jsxs("nav",{className:"help-breadcrumb",children:[e.jsx("button",{onClick:S,children:"Docs"}),e.jsx("span",{className:"help-breadcrumb-sep",children:"/"}),e.jsx("button",{onClick:()=>{j(null)},children:c==null?void 0:c.title}),e.jsx("span",{className:"help-breadcrumb-sep",children:"/"}),e.jsx("span",{children:x.title})]}),e.jsxs("article",{className:"help-article",children:[e.jsx("h1",{children:x.title}),e.jsx("div",{className:"help-article-content",children:x.content})]}),c&&c.articles.filter(i=>i.id!==d).length>0&&e.jsxs("div",{className:"help-related",children:[e.jsxs("h4",{children:["Related articles in ",c.title]}),e.jsx("ul",{children:c.articles.filter(i=>i.id!==d).map(i=>e.jsx("li",{children:e.jsx("button",{onClick:()=>p(c.id,i.id),children:i.title})},i.id))})]}),e.jsxs("div",{className:"help-article-support",children:[e.jsx("p",{children:"Didn't find what you need?"}),e.jsxs("div",{className:"help-article-support-links",children:[e.jsx(n,{to:"/contact",className:"help-article-support-btn",children:"Contact Support"}),e.jsx("a",{href:"mailto:[email protected]",className:"help-article-support-btn help-article-support-btn-secondary",children:"Email Us"})]})]})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"help-sections-grid",children:b.map(i=>e.jsxs("div",{className:"help-section-card",children:[e.jsxs("div",{className:"help-section-card-header",children:[e.jsx("span",{className:"help-section-icon",children:i.icon}),e.jsx("h2",{children:i.title})]}),e.jsx("ul",{className:"help-section-articles",children:i.articles.map(o=>e.jsx("li",{children:e.jsx("button",{onClick:()=>p(i.id,o.id),children:o.title})},o.id))})]},i.id))}),e.jsxs("div",{className:"help-support-section",children:[e.jsx("h3",{children:"Need help?"}),e.jsxs("div",{className:"help-support-options",children:[e.jsxs(n,{to:"/contact",className:"help-support-card",children:[e.jsx("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:e.jsx("path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"})}),e.jsxs("div",{children:[e.jsx("strong",{children:"Contact Form"}),e.jsx("span",{children:"Send a message -- we respond within 24 hours"})]})]}),e.jsxs("a",{href:"mailto:[email protected]",className:"help-support-card",children:[e.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",children:[e.jsx("path",{d:"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"}),e.jsx("polyline",{points:"22,6 12,13 2,6"})]}),e.jsxs("div",{children:[e.jsx("strong",{children:"Email Support"}),e.jsx("span",{children:"[email protected]"})]})]})]})]})]})})]})};export{W as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.