Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
37fd2cf
register custom widget for variable type resources
interim17 Feb 19, 2026
5e1c540
use resourceDetails in nested fields on resource markdown
interim17 Feb 19, 2026
75fbc17
query new resources collection
interim17 Feb 19, 2026
9f43b2b
Update src/cms/widgets/VariableResourceWidget/copyResourceNameHandler.ts
interim17 Feb 20, 2026
a345633
Update static/admin/config.yml
interim17 Feb 20, 2026
478c946
reference resourceDetails in relational widget
interim17 Feb 20, 2026
e0fd5b2
Merge branch 'main' of https://github.com/AllenCell/idea-board into f…
interim17 Feb 23, 2026
cc336ee
remove redundant fields from config
interim17 Feb 23, 2026
6653ea5
fix typo
interim17 Feb 23, 2026
eb6b692
run format
interim17 Feb 23, 2026
3e89540
Merge branch 'run-format' of https://github.com/AllenCell/idea-board …
interim17 Feb 23, 2026
211c55a
update comment
interim17 Feb 23, 2026
ee27bd4
Merge branch 'feature/resource' of https://github.com/AllenCell/idea-…
interim17 Feb 24, 2026
00d073e
add resources to schema
interim17 Feb 24, 2026
2bdcb98
add pages for resources
interim17 Feb 24, 2026
879d577
format resource template
interim17 Feb 24, 2026
1a50470
add ResourceDetailsField fragment
interim17 Feb 24, 2026
1e1ee25
build resource pages separately from MarkdownRemark
interim17 Feb 24, 2026
079639a
Merge branch 'main' of https://github.com/AllenCell/idea-board into f…
interim17 Feb 25, 2026
f9283a8
format and lint
interim17 Feb 25, 2026
be3ef5c
Merge branch 'feature/resource' of https://github.com/AllenCell/idea-…
interim17 Feb 25, 2026
971039c
import resources path
interim17 Feb 25, 2026
c12a1aa
add a resources index page and a second dev example tool
interim17 Feb 25, 2026
72038d2
make programs an array and next steps a markdown string
interim17 Mar 9, 2026
fc2b31f
Merge branch 'main' of https://github.com/AllenCell/idea-board into f…
interim17 Mar 9, 2026
f793be6
Merge branch 'fix/next-steps' of https://github.com/AllenCell/idea-bo…
interim17 Mar 9, 2026
89d19e2
fix duplicated fields in dev-example
interim17 Mar 9, 2026
a517a79
flatten resource details when building gatsby nodes
interim17 Mar 10, 2026
666a21a
fix typos
interim17 Mar 10, 2026
7369d06
migrate software and dataset markdown content to resources collection
interim17 Mar 11, 2026
d98830e
migrate cell lines to resource markdown
interim17 Mar 11, 2026
6104fb3
bucket resource types in resource index with compsed fragments
interim17 Mar 11, 2026
137179e
add reporter to resource resolver
interim17 Mar 11, 2026
0c37800
update tests to cover resourceQuery
interim17 Mar 11, 2026
8d88a8d
Update gatsby-node.js
interim17 Mar 11, 2026
8264972
remove tags fields from createPages calls
interim17 Mar 11, 2026
0d4765e
Merge branch 'feature/resource-query' of https://github.com/AllenCell…
interim17 Mar 11, 2026
2b14e68
Update gatsby/utils/gatsby-resolver-utils.js
interim17 Mar 11, 2026
2c25a81
Update gatsby/schema/base.gql
interim17 Mar 11, 2026
2127cba
update comments
interim17 Mar 11, 2026
8411c40
remove extra layout
interim17 Mar 11, 2026
8d3b7b9
Merge branch 'feature/resource-query' of https://github.com/AllenCell…
interim17 Mar 11, 2026
fbe2502
fix authors schema typing
interim17 Mar 11, 2026
23a5c69
Merge branch 'main' of https://github.com/AllenCell/idea-board into f…
interim17 Mar 11, 2026
a097dae
Merge branch 'feature/resource-query' of https://github.com/AllenCell…
interim17 Mar 11, 2026
1c4aec8
Merge branch 'main' of https://github.com/AllenCell/idea-board into m…
interim17 Mar 19, 2026
0fdcd79
Update src/pages/resource/60x-timelapse-images-of-tagged-lines-after-…
interim17 Mar 19, 2026
09f471d
generalize render for resources
interim17 Mar 19, 2026
4973738
Merge branch 'main' of https://github.com/AllenCell/idea-board into m…
interim17 Mar 23, 2026
362361f
Merge branch 'main' of https://github.com/AllenCell/idea-board into m…
interim17 Mar 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions gatsby/schema/base.gql
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ type Resource implements Node {
description: String
link: String
readmeLink: String
file: String
status: String
date: Date @dateformat
tags: [String!]
Expand Down
11 changes: 6 additions & 5 deletions src/cms/widgets/VariableResourceWidget/constants.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { TypeConfig } from "../VariableTypeWidget/types";
import { RESOURCE_TYPES } from "../../../constants/resourceTypes";

const SOFTWARE_STATUS_OPTIONS = [
"Public",
Expand All @@ -17,7 +18,7 @@ const DATASET_STATUS_OPTIONS = [
// defaults to name, description, link.
export const VARIABLE_TYPE_RESOURCE_CONFIG: TypeConfig[] = [
{
value: "softwareTool",
value: RESOURCE_TYPES.SOFTWARE_TOOL,
label: "Software Tool",
fields: [
{
Expand All @@ -34,7 +35,7 @@ export const VARIABLE_TYPE_RESOURCE_CONFIG: TypeConfig[] = [
],
},
{
value: "dataset",
value: RESOURCE_TYPES.DATASET,
label: "Dataset",
fields: [
{
Expand All @@ -46,12 +47,12 @@ export const VARIABLE_TYPE_RESOURCE_CONFIG: TypeConfig[] = [
],
},
{
value: "protocolLink",
value: RESOURCE_TYPES.PROTOCOL_LINK,
label: "Protocol (Link)",
fields: [],
},
{
value: "protocolFile",
value: RESOURCE_TYPES.PROTOCOL_FILE,
label: "Protocol (File)",
fields: [
{
Expand All @@ -63,7 +64,7 @@ export const VARIABLE_TYPE_RESOURCE_CONFIG: TypeConfig[] = [
],
},
{
value: "cellLine",
value: RESOURCE_TYPES.CELL_LINE,
label: "Cell Line",
fields: [],
},
Expand Down
9 changes: 9 additions & 0 deletions src/constants/resourceTypes.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
export const RESOURCE_TYPES = {
SOFTWARE_TOOL: "softwareTool",
DATASET: "dataset",
PROTOCOL_LINK: "protocolLink",
PROTOCOL_FILE: "protocolFile",
CELL_LINE: "cellLine",
} as const;

export type ResourceType = (typeof RESOURCE_TYPES)[keyof typeof RESOURCE_TYPES];
62 changes: 60 additions & 2 deletions src/graphql/fragments.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import { graphql } from "gatsby";

export const ResourceFieldsBase = graphql`
fragment ResourceFields on Resource {
export const SoftwareToolResourceFields = graphql`
fragment SoftwareToolResourceFields on Resource {
slug
type
name
description
Expand All @@ -11,3 +12,60 @@ export const ResourceFieldsBase = graphql`
date
}
`;

export const DatasetResourceFields = graphql`
fragment DatasetResourceFields on Resource {
slug
type
name
description
link
status
date
}
`;

export const CellLineResourceFields = graphql`
fragment CellLineResourceFields on Resource {
slug
type
name
link
}
`;

export const ProtocolLinkResourceFields = graphql`
fragment ProtocolLinkResourceFields on Resource {
slug
type
name
description
link
}
`;

export const ProtocolFileResourceFields = graphql`
fragment ProtocolFileResourceFields on Resource {
slug
type
name
description
link
file
}
`;

/**
* Composite fragment for querying mixed resource lists.
* Results include all fields across all resource types;
* use the `type` field to discriminate at runtime.
*/
export const ResourceFields = graphql`
fragment ResourceFields on Resource {
...SoftwareToolResourceFields
...DatasetResourceFields
...CellLineResourceFields
...ProtocolLinkResourceFields
...ProtocolFileResourceFields
}
`;
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ templateKey: idea-post
title: How do the number and size of holes in the basement membrane change with
time during EMT induction
introduction: Needs background
resources:
- released-emt-dataset
materialsAndMethods:
dataset: Released EMT dataset
nextSteps: Need to be filled out
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
---
templateKey: idea-post
title: Relate cell-cell junction remodeling to migration onset
resources:
- released-emt-dataset
materialsAndMethods:
dataset: Released EMT dataset
program:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ preliminaryFindings:
caption: An unrelated image from our website showing lots and lots of cells.
resources:
- test-software-tool
- simularium
- actin-compression-simulation-dataset
materialsAndMethods:
dataset: Actin compression simulation dataset
software:
Expand Down
7 changes: 7 additions & 0 deletions src/pages/ideas/dev-example.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ preliminaryFindings:
(rapid local changes in junction length and intensity) increases ~30–60
minutes before migration onset in a subset of fields of view. Here is a link
for no reason: [link](https://allencell.org/).
minutes before migration onset in a subset of fields of view. Here is a link
for no reason: [link](https://allencell.org/).
figures:
- type: imageFile
file: /img/228469011.jpg
Expand All @@ -29,6 +31,11 @@ introduction: >
resources:
- cell-line-resources
- test-software-tool
- simularium
- timelapse-feature-explorer
- released-emt-dataset
- aics-42
- aics-67
materialsAndMethods:
dataset: Released EMT dataset
protocols: null
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
templateKey: resource
name: '60x timelapse images of tagged lines "after" EMT, "sandwich" dataset'
resourceDetails:
type: dataset
name: '60x timelapse images of tagged lines "after" EMT, "sandwich" dataset'
status: Preliminary
---
36 changes: 36 additions & 0 deletions src/pages/resource/actin-compression-simulation-dataset.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
templateKey: resource
name: Actin compression simulation dataset
resourceDetails:
type: dataset
name: Actin compression simulation dataset
description: |
### Overview

This dataset contains simulated data of actin filaments using the monomer-scale model [ReaDDy](https://github.com/simularium/readdy-models) and fiber-scale model [Cytosim](https://github.com/simularium/Cytosim).

Simulation conditions test compression of a single 500 nm actin filament at different velocities, as well as control simulations with no compression.

Compression simulations use the prefix `ACTIN_COMPRESSION_VELOCITY`; control simulations use the prefix `ACTIN_NO_COMPRESSION`.

Compression simulation keys include the following:

- `0047` = 4.7 μm/s
- `0150` = 15 μm/s
- `0470` = 47 μm/s
- `1500` = 150 μm/s

For _ReaDDy_, the actin filament is composed of particles, each representing an actin monomer, initialized based on measurements from an actin crystal structure. Compression was implemented by linearly displacing the three monomers at the pointed end for one time step and then allowing the structure to relax for nine time steps, until the fiber was compressed to 350 nm. Each simulation condition contains 5 replicates.

For _Cytosim_, the actin filament is modeled as a 500 nm fiber anchored by two fiber-binding linkers spaced 10 nm apart at each end. The linkers on one of the ends were translated linearly for one time step and allowed to relax for nine time steps, until the fiber was compressed to 350 nm. Each simulation condition contains 5 replicates, with replicates corresponding to random seeds 1, 2, 3, 4, and 5.

### Usage

For documentation on how to use and interact with this dataset please refer to [https://docs.quiltdata.com/walkthrough/getting-data-from-a-package](https://docs.quiltdata.com/walkthrough/getting-data-from-a-package).

### License

For questions on licensing please refer to [https://www.allencell.org/terms-of-use.html](https://www.allencell.org/terms-of-use.html).
link: https://open.quiltdata.com/b/allencell/tree/aics/subcellular_model_simulations/subcellular_model_simulations_actin_comparison/
status: Public
---
Comment thread
interim17 marked this conversation as resolved.
8 changes: 8 additions & 0 deletions src/pages/resource/aics-42.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
templateKey: resource
name: AICS-42
resourceDetails:
type: cellLine
name: AICS-42
link: https://allencell.org/cell-catalog
---
8 changes: 8 additions & 0 deletions src/pages/resource/aics-67.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
templateKey: resource
name: AICS-67
resourceDetails:
type: cellLine
name: AICS-67
link: https://allencell.org/cell-catalog
---
9 changes: 9 additions & 0 deletions src/pages/resource/emc.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
templateKey: resource
name: "EMC"
resourceDetails:
type: dataset
name: "EMC"
description: We have some preliminary data on different ECM to drive lumenoid formation
status: Preliminary
---
93 changes: 74 additions & 19 deletions src/pages/resource/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,31 +3,61 @@ import { Helmet } from "react-helmet-async";

import { Link, PageProps, graphql } from "gatsby";

const ResourcesPage: React.FC<PageProps<Queries.ResourcesIndexQueryQuery>> = ({

type ResourceNode = { slug: string; name: string | null; description?: string | null };

function renderResourceList(nodes: ResourceNode[]) {
if (!nodes.length) return null;
return (
<ul>
{nodes.map((node) => (
<li key={node.slug}>
<Link to={node.slug}>{node.name}</Link>
{node.description && <p>{node.description}</p>}
</li>
))}
</ul>
);
}

const resourceSections: {
title: string;
keys: (keyof Omit<Queries.ResourcesIndexQuery, "site">)[];
}[] = [
{ title: "Software", keys: ["softwareResources"] },
{ title: "Datasets", keys: ["datasetResources"] },
{ title: "Cell Lines", keys: ["cellLineResources"] },
{
title: "Protocols",
keys: ["protocolLinkResources", "protocolFileResources"],
},
];

const ResourcesPage: React.FC<PageProps<Queries.ResourcesIndexQuery>> = ({
data,
}) => {
const { allResource, site } = data;

if (!allResource || !site) {
if (!data.site) {
return <p>Data not found.</p>;
}

const { nodes } = allResource;
const title = site.siteMetadata?.title || "Title";
const title = data.site.siteMetadata?.title || "Title";
return (
<section>
<Helmet title={`Resources | ${title}`} />
<div>
<h1>Resources</h1>
<ul>
{nodes.map((node) => (
<li key={node.slug}>
<Link to={node.slug}>{node.name}</Link>
{node.description && <p>{node.description}</p>}
{node.type && <p>{node.type}</p>}
</li>
))}
</ul>
{resourceSections.map(({ keys, title: sectionTitle }) => {
const nodes = keys.flatMap(
(key) => data[key]?.nodes ?? []
);
if (!nodes.length) return null;
return (
<React.Fragment key={sectionTitle}>
<h2>{sectionTitle}</h2>
{renderResourceList(nodes)}
</React.Fragment>
);
})}
</div>
</section>
);
Expand All @@ -36,16 +66,41 @@ const ResourcesPage: React.FC<PageProps<Queries.ResourcesIndexQueryQuery>> = ({
export default ResourcesPage;

export const resourcePageQuery = graphql`
query ResourcesIndexQuery {
query ResourcesIndex {
site {
siteMetadata {
title
}
}
allResource {
datasetResources: allResource(filter: { type: { eq: "dataset" } }) {
nodes {
...DatasetResourceFields
}
}
softwareResources: allResource(
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

similar to my comment above can you make these keys instead of strings

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These need to be static like this due to graphql limitations, the other option here would be to query all fields en masse and the filter in the javascript, but I thought this was more fun and I was learning about fragments.

filter: { type: { eq: "softwareTool" } }
) {
nodes {
...SoftwareToolResourceFields
}
}
cellLineResources: allResource(filter: { type: { eq: "cellLine" } }) {
nodes {
...CellLineResourceFields
}
}
protocolLinkResources: allResource(
filter: { type: { eq: "protocolLink" } }
) {
nodes {
...ProtocolLinkResourceFields
}
}
protocolFileResources: allResource(
filter: { type: { eq: "protocolFile" } }
) {
nodes {
slug
...ResourceFields
...ProtocolFileResourceFields
}
}
}
Expand Down
10 changes: 10 additions & 0 deletions src/pages/resource/released-emt-dataset.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
templateKey: resource
name: Released EMT dataset
resourceDetails:
type: dataset
name: Released EMT dataset
description: Description for released EMT dataset in the markdown file for the dataset.
Comment thread
interim17 marked this conversation as resolved.
link: https://www.biorxiv.org/content/10.1101/2024.08.16.608353v1.full
status: Public
---
Loading
Loading