diff --git a/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg b/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg deleted file mode 100644 index 11bda09..0000000 Binary files a/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg and /dev/null differ diff --git a/blog/2021-08-26-welcome/index.md b/blog/2021-08-26-welcome/index.md deleted file mode 100644 index 1bad7ee..0000000 --- a/blog/2021-08-26-welcome/index.md +++ /dev/null @@ -1,29 +0,0 @@ ---- -slug: welcome -title: Welcome -authors: [luiztauffer, bendichter] -tags: [facebook, hello, docusaurus] ---- - -[Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog). - -Here are a few tips you might find useful. - - - -Simply add Markdown files (or folders) to the `blog` directory. - -Regular blog authors can be added to `authors.yml`. - -The blog post date can be extracted from filenames, such as: - -- `2019-05-30-welcome.md` -- `2019-05-30-welcome/index.md` - -A blog post folder can be convenient to co-locate blog post images: - -![Docusaurus Plushie](./docusaurus-plushie-banner.jpeg) - -The blog supports tags as well! - -**And if you don't want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config. diff --git a/data/news.json b/data/news.json new file mode 100644 index 0000000..2d965f0 --- /dev/null +++ b/data/news.json @@ -0,0 +1,78 @@ +[ + { + "date": "2024 07 08-12", + "headline": " NeuroDataReHack at the HHMI Janelia Research Campus" + }, + { + "date": "2024 07 02", + "headline": " Open Neurodata Showcase hosted virtually in Gather" + }, + { + "date": "2024 04 15-16", + "headline": " NWB and DANDI Workshop at Baylor College of Medicine" + }, + { + "date": "2024 02 29", + "headline": " NWB and DANDI Tutorial at the COSYNE Conference" + }, + { + "date": "2024 02 05-07", + "headline": " Brain Data Modeling Hackashop: LinkML and Neurophysiology at the International Computer Science Institute (ICSI)" + }, + { + "date": "2023 11 11 - 15", + "headline": "DANDI, NWB, and CatalystNeuro teams are hosting exhibit booth at SfN 2023. See calendar of events at the booth." + }, + { + "date": "2023 10 10 - 12", + "headline": " Open Data In Neurophysiology (ODIN) Symposium @ MIT " + }, + { + "date": "2023 09 14", + "headline": "NWB and DANDI Workshop at Princeton" + }, + { + "date": "2023 09 5-8", + "headline": "NeuroDataReHack 2 as a satellite for the IBRO World Congress (Granada, Spain)" + }, + { + "date": "2023 08 28", + "headline": "Scientists who have publicly shared neurophysiology data on DANDI present their data at Open Neurodata Showcase 2023" + }, + { + "date": "2022 10 04", + "headline": "Paper outline the Neurodata Without Borders ecosystem including DANDI published in ELife (Link).\n" + }, + { + "date": "2022 03 08", + "headline": " DANDI Human ex-vivo microscopy workshop/hackathon.\n" + }, + { + "date": "2022 02 15 - 02 18", + "headline": "DANDI and NWB teams hold 2022 NWB-DANDI Remote Developer Hackathon.\n" + }, + { + "date": "2021 11 01", + "headline": "Virtual hands-on DANDI User Workshop.\n" + }, + { + "date": "2021 03 30 - 04 01", + "headline": "DANDI and NWB teams hold 2021 NWB-DANDI Remote Developer Hackathon.\n" + }, + { + "date": "2020 02 03-06", + "headline": "DANDI participated in NWB hackathon at Allen Institute.\n" + }, + { + "date": "2019 10 19-23", + "headline": "DANDI was at SFN and thanks INCF for hospitality.\n" + }, + { + "date": "2019 10 18", + "headline": "DANDI attended BICCN meeting prior to SFN.\n" + }, + { + "date": "2019 07 22", + "headline": "MIT, Dartmouth, and Kitware received BRAIN Initiative award for a cellular neurophysiology archive. Award details.\n" + } +] \ No newline at end of file diff --git a/data/news.yml b/data/news.yml new file mode 100644 index 0000000..bc65c05 --- /dev/null +++ b/data/news.yml @@ -0,0 +1,99 @@ +- date: 2024 07 08-12 + headline: >- + + NeuroDataReHack + at the HHMI Janelia Research Campus + +- date: 2024 07 02 + headline: >- + + Open Neurodata Showcase + hosted virtually in Gather + +- date: 2024 04 15-16 + headline: >- + + NWB and DANDI Workshop + at Baylor College of Medicine + +- date: 2024 02 29 + headline: >- + + NWB and DANDI Tutorial + at the COSYNE Conference + +- date: 2024 02 05-07 + headline: >- + + Brain Data Modeling Hackashop: LinkML and Neurophysiology + at the International Computer Science Institute (ICSI) + +- date: 2023 11 11 - 15 + headline: >- + DANDI, NWB, and CatalystNeuro teams are hosting exhibit booth at + SfN 2023. + See calendar of events at the booth. + +- date: 2023 10 10 - 12 + headline: >- + + Open Data In Neurophysiology (ODIN) Symposium @ MIT + + +- date: 2023 09 14 + headline: >- + NWB and DANDI Workshop at Princeton + +- date: 2023 09 5-8 + headline: >- + NeuroDataReHack 2 as a satellite for the IBRO World Congress (Granada, Spain) + +- date: 2023 08 28 + headline: >- + Scientists who have publicly shared neurophysiology data on DANDI present their data at + Open Neurodata Showcase 2023 + +- date: 2022 10 04 + headline: > + Paper outline the Neurodata Without Borders ecosystem including DANDI published in ELife + (Link). + +- date: 2022 03 08 + headline: > + + DANDI Human ex-vivo microscopy workshop/hackathon. + +- date: 2022 02 15 - 02 18 + headline: > + DANDI and NWB teams hold + + 2022 NWB-DANDI Remote Developer Hackathon. + +- date: 2021 11 01 + headline: > + Virtual hands-on DANDI User Workshop. + +- date: 2021 03 30 - 04 01 + headline: > + DANDI and NWB teams hold + + 2021 NWB-DANDI Remote Developer Hackathon. + +- date: 2020 02 03-06 + headline: > + DANDI participated in + + NWB hackathon at Allen Institute. + +- date: 2019 10 19-23 + headline: > + DANDI was at SFN and thanks INCF for hospitality. + +- date: 2019 10 18 + headline: > + DANDI attended BICCN meeting prior to SFN. + +- date: 2019 07 22 + headline: > + MIT, Dartmouth, and Kitware received BRAIN Initiative award for a cellular neurophysiology archive. + Award details. diff --git a/data/team_members.json b/data/team_members.json new file mode 100644 index 0000000..92317e3 --- /dev/null +++ b/data/team_members.json @@ -0,0 +1,132 @@ +[ + { + "name": "Satrajit S Ghosh", + "photo": "/img/team/Satrajit_S_Ghosh.png", + "info": "Director of Open Data in Neuroscience Initiative and Principal Research Scientist at MIT; Assistant Professor of Otolaryngology at Harvard Medical School\n", + "email": "satra@mit.edu", + "number_educ": 3, + "education1": "PhD Cognitive and Neural Systems, Boston University", + "education2": "BS(Honors) Information Systems and Computer Science, National University of Singapore", + "education3": "Full CV" + }, + { + "name": "Yaroslav O Halchenko", + "photo": "/img/team/Yaroslav_O_Halchenko.jpg", + "info": "Research Associate Professor at PBS, Dartmouth College", + "email": "yoh@onerussian.com", + "number_educ": 4, + "education1": "PhD Computer Science, NJIT", + "education2": "Director of Center for Open Neuroscience", + "education3": "A founder and lead of PyMVPA, NeuroDebian, DataLad and other projects", + "education4": "Full CV" + }, + { + "name": "Benjamin Dichter", + "photo": "/img/team/Benjamin_Dichter.jpg", + "info": "Founder of CatalystNeuro", + "email": "ben.dichter@catalystneuro.com", + "number_educ": 2, + "education1": "PhD Berkeley and UCSF Joint Program in Bioengineering", + "education2": "Full CV" + }, + { + "name": "Roni Choudhury", + "photo": "/img/team/Roni_Choudhury.jpeg", + "info": "Technical Leader at Kitware, Inc.", + "email": "roni.choudhury@kitware.com", + "number_educ": 3, + "education1": "PhD Computer Science, University of Utah", + "education2": "Data and Analytics Team at Kitware, Inc.", + "education3": "CV" + }, + { + "name": "John Thorvald Wodder II", + "photo": "/img/team/John_Thorvald_Wodder_II.jpg", + "info": "Software Developer at PBS, Dartmouth College", + "email": "John.T.Wodder@dartmouth.edu", + "number_educ": 1, + "education1": "Rochester Institute of Technology, Computational Mathematics" + }, + { + "name": "Horea-Ioan Ioanas", + "photo": "/img/team/Horea-Ioan_Ioanas.jpg", + "info": "Research Associate at PBS, Dartmouth College", + "email": "chr@chymera.eu", + "number_educ": 4, + "education1": "PhD in Neuroscience and Biomedical Engineering, ETH Zurich (CH)", + "education2": "MSc in Molecular Biosciences and Neuroscience, Heidelberg University (DE)", + "education3": "BSc in Molecular and Cellular Biology, Heidelberg University (DE)", + "education4": "CV" + }, + { + "name": "Cody Baker", + "photo": "/img/team/Cody_Baker.jpg", + "info": "Head of NWB Conversions at CatalystNeuro", + "email": "cody.baker@catalystneuro.com", + "number_educ": 1, + "education1": "PhD in Applied and Computational Mathematics and Statistics from the University of Notre Dame" + }, + { + "name": "Austin Macdonald", + "photo": "/img/team/Austin_Macdonald.jpg", + "info": "Research Software Engineer, Dartmouth College", + "email": "austin@dartmouth.edu", + "number_educ": 2, + "education1": "MM in Music Performance, University of Illinois Urbana-Champaign", + "education2": "BM in Music Education, University of North Carolina Greensboro" + }, + { + "name": "Jacob Nesbitt", + "photo": "/img/team/Jacob_Nesbitt.jpg", + "info": "Research and Development Engineer at Kitware, Inc.", + "email": "jacob.nesbitt@kitware.com", + "number_educ": 2, + "education1": "BS in Computer Science, Clarkson University", + "education2": "Data and Analytics Team at Kitware, Inc." + }, + { + "name": "Michael VanDenburgh", + "photo": "/img/team/Michael_VanDenburgh.jpg", + "info": "Research and Development Engineer at Kitware, Inc.", + "email": "michael.vandenburgh@kitware.com", + "number_educ": 2, + "education1": "BS in Computer Science and Applied Mathematics, Stony Brook University", + "education2": "Data and Analytics Team at Kitware, Inc." + }, + { + "name": "Dorota Jarecka", + "photo": "/img/team/Dorota_Jarecka.jpg", + "info": "Research Scientist, MIT", + "email": "djarecka@mit.edu", + "number_educ": 2, + "education1": "PhD Atmospheric Physics, University of Warsaw", + "education2": "MSc Theoretical Physics, University of Warsaw" + }, + { + "name": "Nima Dehghani", + "photo": "/img/team/Nima_Dehghani.jpg", + "info": "Research Scientist, MIT", + "email": "nima.dehghani@mit.edu", + "number_educ": 2, + "education1": "PhD Computational Neuroscience (Complex Systems), Pierre et Marie Curie (Sorbonne Université)", + "education2": "MD, Iran Univ of Med Sci" + }, + { + "name": "Kabilar Gunalan", + "photo": "/img/team/Kabilar_Gunalan.jpg", + "info": "Research Scientist, MIT", + "email": "kabi@mit.edu", + "number_educ": 2, + "education1": "PhD Biomedical Engineering, Case Western Reserve University", + "education2": "MD, Case Western Reserve University" + }, + { + "name": "Aaron Kanzer", + "photo": "/img/team/Aaron_Kanzer.jpg", + "info": "Software Engineer, MIT", + "email": "akanzer@mit.edu", + "number_educ": 2, + "education1": "M.S. in Computer Science, Northeastern University", + "education2": "B.S. in Economics & Political Science, Northeastern University" + } +] \ No newline at end of file diff --git a/data/team_members.yml b/data/team_members.yml new file mode 100644 index 0000000..10ed903 --- /dev/null +++ b/data/team_members.yml @@ -0,0 +1,117 @@ +- name: Satrajit S Ghosh + photo: /img/team/Satrajit_S_Ghosh.png + info: > + Director of Open Data in Neuroscience Initiative and Principal Research Scientist at MIT; Assistant + Professor of Otolaryngology at Harvard Medical School + email: satra@mit.edu + number_educ: 3 + education1: PhD Cognitive and Neural Systems, Boston University + education2: BS(Honors) Information Systems and Computer Science, National University of Singapore + education3: Full CV + +- name: Yaroslav O Halchenko + photo: /img/team/Yaroslav_O_Halchenko.jpg + info: Research Associate Professor at PBS, Dartmouth College + email: yoh@onerussian.com + number_educ: 4 + education1: PhD Computer Science, NJIT + education2: Director of Center for Open Neuroscience + education3: A founder and lead of PyMVPA, NeuroDebian, DataLad and other projects + education4: Full CV + +- name: Benjamin Dichter + photo: /img/team/Benjamin_Dichter.jpg + info: Founder of CatalystNeuro + email: ben.dichter@catalystneuro.com + number_educ: 2 + education1: PhD Berkeley and UCSF Joint Program in Bioengineering + education2: Full CV + +- name: Roni Choudhury + photo: /img/team/Roni_Choudhury.jpeg + info: Technical Leader at Kitware, Inc. + email: roni.choudhury@kitware.com + number_educ: 3 + education1: PhD Computer Science, University of Utah + education2: Data and Analytics Team at Kitware, Inc. + education3: CV + +- name: John Thorvald Wodder II + photo: /img/team/John_Thorvald_Wodder_II.jpg + info: Software Developer at PBS, Dartmouth College + email: John.T.Wodder@dartmouth.edu + number_educ: 1 + education1: Rochester Institute of Technology, Computational Mathematics + +- name: Horea-Ioan Ioanas + photo: /img/team/Horea-Ioan_Ioanas.jpg + info: Research Associate at PBS, Dartmouth College + email: chr@chymera.eu + number_educ: 4 + education1: PhD in Neuroscience and Biomedical Engineering, ETH Zurich (CH) + education2: MSc in Molecular Biosciences and Neuroscience, Heidelberg University (DE) + education3: BSc in Molecular and Cellular Biology, Heidelberg University (DE) + education4: CV + +- name: Cody Baker + photo: /img/team/Cody_Baker.jpg + info: Head of NWB Conversions at CatalystNeuro + email: cody.baker@catalystneuro.com + number_educ: 1 + education1: PhD in Applied and Computational Mathematics and Statistics from the University of Notre Dame + +- name: Austin Macdonald + photo: /img/team/Austin_Macdonald.jpg + info: Research Software Engineer, Dartmouth College + email: austin@dartmouth.edu + number_educ: 2 + education1: MM in Music Performance, University of Illinois Urbana-Champaign + education2: BM in Music Education, University of North Carolina Greensboro + +- name: Jacob Nesbitt + photo: /img/team/Jacob_Nesbitt.jpg + info: Research and Development Engineer at Kitware, Inc. + email: jacob.nesbitt@kitware.com + number_educ: 2 + education1: BS in Computer Science, Clarkson University + education2: Data and Analytics Team at Kitware, Inc. + +- name: Michael VanDenburgh + photo: /img/team/Michael_VanDenburgh.jpg + info: Research and Development Engineer at Kitware, Inc. + email: michael.vandenburgh@kitware.com + number_educ: 2 + education1: BS in Computer Science and Applied Mathematics, Stony Brook University + education2: Data and Analytics Team at Kitware, Inc. + +- name: Dorota Jarecka + photo: /img/team/Dorota_Jarecka.jpg + info: Research Scientist, MIT + email: djarecka@mit.edu + number_educ: 2 + education1: PhD Atmospheric Physics, University of Warsaw + education2: MSc Theoretical Physics, University of Warsaw + +- name: Nima Dehghani + photo: /img/team/Nima_Dehghani.jpg + info: Research Scientist, MIT + email: nima.dehghani@mit.edu + number_educ: 2 + education1: PhD Computational Neuroscience (Complex Systems), Pierre et Marie Curie (Sorbonne Université) + education2: MD, Iran Univ of Med Sci + +- name: Kabilar Gunalan + photo: /img/team/Kabilar_Gunalan.jpg + info: Research Scientist, MIT + email: kabi@mit.edu + number_educ: 2 + education1: PhD Biomedical Engineering, Case Western Reserve University + education2: MD, Case Western Reserve University + +- name: Aaron Kanzer + photo: /img/team/Aaron_Kanzer.jpg + info: Software Engineer, MIT + email: akanzer@mit.edu + number_educ: 2 + education1: M.S. in Computer Science, Northeastern University + education2: B.S. in Economics & Political Science, Northeastern University diff --git a/docs/intro.md b/docs/intro.md index 45e8604..5b74dcc 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -5,43 +5,3 @@ sidebar_position: 1 # Tutorial Intro Let's discover **Docusaurus in less than 5 minutes**. - -## Getting Started - -Get started by **creating a new site**. - -Or **try Docusaurus immediately** with **[docusaurus.new](https://docusaurus.new)**. - -### What you'll need - -- [Node.js](https://nodejs.org/en/download/) version 18.0 or above: - - When installing Node.js, you are recommended to check all checkboxes related to dependencies. - -## Generate a new site - -Generate a new Docusaurus site using the **classic template**. - -The classic template will automatically be added to your project after you run the command: - -```bash -npm init docusaurus@latest my-website classic -``` - -You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor. - -The command also installs all necessary dependencies you need to run Docusaurus. - -## Start your site - -Run the development server: - -```bash -cd my-website -npm run start -``` - -The `cd` command changes the directory you're working with. In order to work with your newly created Docusaurus site, you'll need to navigate the terminal there. - -The `npm run start` command builds your website locally and serves it through a development server, ready for you to view at http://localhost:3000/. - -Open `docs/intro.md` (this page) and edit some lines: the site **reloads automatically** and displays your changes. diff --git a/docs/tutorial-basics/_category_.json b/docs/tutorial-basics/_category_.json deleted file mode 100644 index 2e6db55..0000000 --- a/docs/tutorial-basics/_category_.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "label": "Tutorial - Basics", - "position": 2, - "link": { - "type": "generated-index", - "description": "5 minutes to learn the most important Docusaurus concepts." - } -} diff --git a/docs/tutorial-basics/congratulations.md b/docs/tutorial-basics/congratulations.md deleted file mode 100644 index 04771a0..0000000 --- a/docs/tutorial-basics/congratulations.md +++ /dev/null @@ -1,23 +0,0 @@ ---- -sidebar_position: 6 ---- - -# Congratulations! - -You have just learned the **basics of Docusaurus** and made some changes to the **initial template**. - -Docusaurus has **much more to offer**! - -Have **5 more minutes**? Take a look at **[versioning](../tutorial-extras/manage-docs-versions.md)** and **[i18n](../tutorial-extras/translate-your-site.md)**. - -Anything **unclear** or **buggy** in this tutorial? [Please report it!](https://github.com/facebook/docusaurus/discussions/4610) - -## What's next? - -- Read the [official documentation](https://docusaurus.io/) -- Modify your site configuration with [`docusaurus.config.js`](https://docusaurus.io/docs/api/docusaurus-config) -- Add navbar and footer items with [`themeConfig`](https://docusaurus.io/docs/api/themes/configuration) -- Add a custom [Design and Layout](https://docusaurus.io/docs/styling-layout) -- Add a [search bar](https://docusaurus.io/docs/search) -- Find inspirations in the [Docusaurus showcase](https://docusaurus.io/showcase) -- Get involved in the [Docusaurus Community](https://docusaurus.io/community/support) diff --git a/docs/tutorial-basics/create-a-blog-post.md b/docs/tutorial-basics/create-a-blog-post.md deleted file mode 100644 index 550ae17..0000000 --- a/docs/tutorial-basics/create-a-blog-post.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -sidebar_position: 3 ---- - -# Create a Blog Post - -Docusaurus creates a **page for each blog post**, but also a **blog index page**, a **tag system**, an **RSS** feed... - -## Create your first Post - -Create a file at `blog/2021-02-28-greetings.md`: - -```md title="blog/2021-02-28-greetings.md" ---- -slug: greetings -title: Greetings! -authors: - - name: Joel Marcey - title: Co-creator of Docusaurus 1 - url: https://github.com/JoelMarcey - image_url: https://github.com/JoelMarcey.png - - name: Sébastien Lorber - title: Docusaurus maintainer - url: https://sebastienlorber.com - image_url: https://github.com/slorber.png -tags: [greetings] ---- - -Congratulations, you have made your first post! - -Feel free to play around and edit this post as much as you like. -``` - -A new blog post is now available at [http://localhost:3000/blog/greetings](http://localhost:3000/blog/greetings). diff --git a/docs/tutorial-basics/create-a-document.md b/docs/tutorial-basics/create-a-document.md deleted file mode 100644 index c22fe29..0000000 --- a/docs/tutorial-basics/create-a-document.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -sidebar_position: 2 ---- - -# Create a Document - -Documents are **groups of pages** connected through: - -- a **sidebar** -- **previous/next navigation** -- **versioning** - -## Create your first Doc - -Create a Markdown file at `docs/hello.md`: - -```md title="docs/hello.md" -# Hello - -This is my **first Docusaurus document**! -``` - -A new document is now available at [http://localhost:3000/docs/hello](http://localhost:3000/docs/hello). - -## Configure the Sidebar - -Docusaurus automatically **creates a sidebar** from the `docs` folder. - -Add metadata to customize the sidebar label and position: - -```md title="docs/hello.md" {1-4} ---- -sidebar_label: 'Hi!' -sidebar_position: 3 ---- - -# Hello - -This is my **first Docusaurus document**! -``` - -It is also possible to create your sidebar explicitly in `sidebars.js`: - -```js title="sidebars.js" -export default { - tutorialSidebar: [ - 'intro', - // highlight-next-line - 'hello', - { - type: 'category', - label: 'Tutorial', - items: ['tutorial-basics/create-a-document'], - }, - ], -}; -``` diff --git a/docs/tutorial-basics/create-a-page.md b/docs/tutorial-basics/create-a-page.md deleted file mode 100644 index 20e2ac3..0000000 --- a/docs/tutorial-basics/create-a-page.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -sidebar_position: 1 ---- - -# Create a Page - -Add **Markdown or React** files to `src/pages` to create a **standalone page**: - -- `src/pages/index.js` → `localhost:3000/` -- `src/pages/foo.md` → `localhost:3000/foo` -- `src/pages/foo/bar.js` → `localhost:3000/foo/bar` - -## Create your first React Page - -Create a file at `src/pages/my-react-page.js`: - -```jsx title="src/pages/my-react-page.js" -import React from 'react'; -import Layout from '@theme/Layout'; - -export default function MyReactPage() { - return ( - -

My React page

-

This is a React page

-
- ); -} -``` - -A new page is now available at [http://localhost:3000/my-react-page](http://localhost:3000/my-react-page). - -## Create your first Markdown Page - -Create a file at `src/pages/my-markdown-page.md`: - -```mdx title="src/pages/my-markdown-page.md" -# My Markdown page - -This is a Markdown page -``` - -A new page is now available at [http://localhost:3000/my-markdown-page](http://localhost:3000/my-markdown-page). diff --git a/docs/tutorial-basics/deploy-your-site.md b/docs/tutorial-basics/deploy-your-site.md deleted file mode 100644 index 1c50ee0..0000000 --- a/docs/tutorial-basics/deploy-your-site.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -sidebar_position: 5 ---- - -# Deploy your site - -Docusaurus is a **static-site-generator** (also called **[Jamstack](https://jamstack.org/)**). - -It builds your site as simple **static HTML, JavaScript and CSS files**. - -## Build your site - -Build your site **for production**: - -```bash -npm run build -``` - -The static files are generated in the `build` folder. - -## Deploy your site - -Test your production build locally: - -```bash -npm run serve -``` - -The `build` folder is now served at [http://localhost:3000/](http://localhost:3000/). - -You can now deploy the `build` folder **almost anywhere** easily, **for free** or very small cost (read the **[Deployment Guide](https://docusaurus.io/docs/deployment)**). diff --git a/docs/tutorial-basics/markdown-features.mdx b/docs/tutorial-basics/markdown-features.mdx deleted file mode 100644 index 35e0082..0000000 --- a/docs/tutorial-basics/markdown-features.mdx +++ /dev/null @@ -1,152 +0,0 @@ ---- -sidebar_position: 4 ---- - -# Markdown Features - -Docusaurus supports **[Markdown](https://daringfireball.net/projects/markdown/syntax)** and a few **additional features**. - -## Front Matter - -Markdown documents have metadata at the top called [Front Matter](https://jekyllrb.com/docs/front-matter/): - -```text title="my-doc.md" -// highlight-start ---- -id: my-doc-id -title: My document title -description: My document description -slug: /my-custom-url ---- -// highlight-end - -## Markdown heading - -Markdown text with [links](./hello.md) -``` - -## Links - -Regular Markdown links are supported, using url paths or relative file paths. - -```md -Let's see how to [Create a page](/create-a-page). -``` - -```md -Let's see how to [Create a page](./create-a-page.md). -``` - -**Result:** Let's see how to [Create a page](./create-a-page.md). - -## Images - -Regular Markdown images are supported. - -You can use absolute paths to reference images in the static directory (`static/img/docusaurus.png`): - -```md -![Docusaurus logo](/img/docusaurus.png) -``` - -![Docusaurus logo](/img/docusaurus.png) - -You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them: - -```md -![Docusaurus logo](./img/docusaurus.png) -``` - -## Code Blocks - -Markdown code blocks are supported with Syntax highlighting. - -````md -```jsx title="src/components/HelloDocusaurus.js" -function HelloDocusaurus() { - return

Hello, Docusaurus!

; -} -``` -```` - -```jsx title="src/components/HelloDocusaurus.js" -function HelloDocusaurus() { - return

Hello, Docusaurus!

; -} -``` - -## Admonitions - -Docusaurus has a special syntax to create admonitions and callouts: - -```md -:::tip My tip - -Use this awesome feature option - -::: - -:::danger Take care - -This action is dangerous - -::: -``` - -:::tip My tip - -Use this awesome feature option - -::: - -:::danger Take care - -This action is dangerous - -::: - -## MDX and React Components - -[MDX](https://mdxjs.com/) can make your documentation more **interactive** and allows using any **React components inside Markdown**: - -```jsx -export const Highlight = ({children, color}) => ( - { - alert(`You clicked the color ${color} with label ${children}`) - }}> - {children} - -); - -This is Docusaurus green ! - -This is Facebook blue ! -``` - -export const Highlight = ({children, color}) => ( - { - alert(`You clicked the color ${color} with label ${children}`); - }}> - {children} - -); - -This is Docusaurus green ! - -This is Facebook blue ! diff --git a/docs/tutorial-extras/_category_.json b/docs/tutorial-extras/_category_.json deleted file mode 100644 index a8ffcc1..0000000 --- a/docs/tutorial-extras/_category_.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "label": "Tutorial - Extras", - "position": 3, - "link": { - "type": "generated-index" - } -} diff --git a/docs/tutorial-extras/img/docsVersionDropdown.png b/docs/tutorial-extras/img/docsVersionDropdown.png deleted file mode 100644 index 97e4164..0000000 Binary files a/docs/tutorial-extras/img/docsVersionDropdown.png and /dev/null differ diff --git a/docs/tutorial-extras/img/localeDropdown.png b/docs/tutorial-extras/img/localeDropdown.png deleted file mode 100644 index e257edc..0000000 Binary files a/docs/tutorial-extras/img/localeDropdown.png and /dev/null differ diff --git a/docs/tutorial-extras/manage-docs-versions.md b/docs/tutorial-extras/manage-docs-versions.md deleted file mode 100644 index ccda0b9..0000000 --- a/docs/tutorial-extras/manage-docs-versions.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -sidebar_position: 1 ---- - -# Manage Docs Versions - -Docusaurus can manage multiple versions of your docs. - -## Create a docs version - -Release a version 1.0 of your project: - -```bash -npm run docusaurus docs:version 1.0 -``` - -The `docs` folder is copied into `versioned_docs/version-1.0` and `versions.json` is created. - -Your docs now have 2 versions: - -- `1.0` at `http://localhost:3000/docs/` for the version 1.0 docs -- `current` at `http://localhost:3000/docs/next/` for the **upcoming, unreleased docs** - -## Add a Version Dropdown - -To navigate seamlessly across versions, add a version dropdown. - -Modify the `docusaurus.config.js` file: - -```js title="docusaurus.config.js" -export default { - themeConfig: { - navbar: { - items: [ - // highlight-start - { - type: 'docsVersionDropdown', - }, - // highlight-end - ], - }, - }, -}; -``` - -The docs version dropdown appears in your navbar: - -![Docs Version Dropdown](./img/docsVersionDropdown.png) - -## Update an existing version - -It is possible to edit versioned docs in their respective folder: - -- `versioned_docs/version-1.0/hello.md` updates `http://localhost:3000/docs/hello` -- `docs/hello.md` updates `http://localhost:3000/docs/next/hello` diff --git a/docs/tutorial-extras/translate-your-site.md b/docs/tutorial-extras/translate-your-site.md deleted file mode 100644 index b5a644a..0000000 --- a/docs/tutorial-extras/translate-your-site.md +++ /dev/null @@ -1,88 +0,0 @@ ---- -sidebar_position: 2 ---- - -# Translate your site - -Let's translate `docs/intro.md` to French. - -## Configure i18n - -Modify `docusaurus.config.js` to add support for the `fr` locale: - -```js title="docusaurus.config.js" -export default { - i18n: { - defaultLocale: 'en', - locales: ['en', 'fr'], - }, -}; -``` - -## Translate a doc - -Copy the `docs/intro.md` file to the `i18n/fr` folder: - -```bash -mkdir -p i18n/fr/docusaurus-plugin-content-docs/current/ - -cp docs/intro.md i18n/fr/docusaurus-plugin-content-docs/current/intro.md -``` - -Translate `i18n/fr/docusaurus-plugin-content-docs/current/intro.md` in French. - -## Start your localized site - -Start your site on the French locale: - -```bash -npm run start -- --locale fr -``` - -Your localized site is accessible at [http://localhost:3000/fr/](http://localhost:3000/fr/) and the `Getting Started` page is translated. - -:::caution - -In development, you can only use one locale at a time. - -::: - -## Add a Locale Dropdown - -To navigate seamlessly across languages, add a locale dropdown. - -Modify the `docusaurus.config.js` file: - -```js title="docusaurus.config.js" -export default { - themeConfig: { - navbar: { - items: [ - // highlight-start - { - type: 'localeDropdown', - }, - // highlight-end - ], - }, - }, -}; -``` - -The locale dropdown now appears in your navbar: - -![Locale Dropdown](./img/localeDropdown.png) - -## Build your localized site - -Build your site for a specific locale: - -```bash -npm run build -- --locale fr -``` - -Or build your site to include all the locales at once: - -```bash -npm run build -``` diff --git a/docusaurus.config.ts b/docusaurus.config.ts index ded4897..ac3373b 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -77,7 +77,7 @@ const config: Config = { type: 'docSidebar', sidebarId: 'tutorialSidebar', position: 'left', - label: 'Tutorial', + label: 'Documentation', }, { to: '/blog', label: 'Blog', position: 'left' }, { @@ -85,6 +85,8 @@ const config: Config = { label: 'GitHub', position: 'right', }, + { to: "/team", label: "Team", position: "left" }, + { to: "/news", label: "News", position: "left" }, ], }, footer: { @@ -137,6 +139,7 @@ const config: Config = { darkTheme: prismThemes.dracula, }, } satisfies Preset.ThemeConfig, + }; export default config; diff --git a/package.json b/package.json index 5ab36ca..50042f0 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "@docusaurus/core": "3.6.3", "@docusaurus/preset-classic": "3.6.3", "@mdx-js/react": "^3.0.0", + "@types/node": "^22.10.1", "clsx": "^2.0.0", "prism-react-renderer": "^2.3.0", "react": "^18.0.0", @@ -27,7 +28,8 @@ "@docusaurus/module-type-aliases": "3.6.3", "@docusaurus/tsconfig": "3.6.3", "@docusaurus/types": "3.6.3", - "typescript": "~5.6.2" + "typescript": "~5.6.2", + "yaml-loader": "^0.8.1" }, "browserslist": { "production": [ diff --git a/scripts/convert-yml-to-json.js b/scripts/convert-yml-to-json.js new file mode 100644 index 0000000..3b2f606 --- /dev/null +++ b/scripts/convert-yml-to-json.js @@ -0,0 +1,38 @@ +const fs = require("fs"); +const yaml = require("js-yaml"); +const path = require("path"); + +// Paths +const yamlPath = path.resolve(__dirname, "../data/team_members.yml"); +const jsonPath = path.resolve(__dirname, "../data/team_members.json"); + +try { + // Read YAML file + const yamlData = yaml.load(fs.readFileSync(yamlPath, "utf8")); + + // Write JSON file + fs.writeFileSync(jsonPath, JSON.stringify(yamlData, null, 2), "utf8"); + + console.log("YAML successfully converted to JSON!"); +} catch (err) { + console.error("Error converting YAML to JSON:", err); + process.exit(1); +} + + +// Paths +const newsyamlPath = path.resolve(__dirname, "../data/news.yml"); +const newsjsonPath = path.resolve(__dirname, "../data/news.json"); + +try { + // Read YAML file + const newsyamlData = yaml.load(fs.readFileSync(newsyamlPath, "utf8")); + + // Write JSON file + fs.writeFileSync(newsjsonPath, JSON.stringify(newsyamlData, null, 2), "utf8"); + + console.log("YAML successfully converted to JSON!"); +} catch (err) { + console.error("Error converting YAML to JSON:", err); + process.exit(1); +} diff --git a/src/components/News/index.tsx b/src/components/News/index.tsx new file mode 100644 index 0000000..178936a --- /dev/null +++ b/src/components/News/index.tsx @@ -0,0 +1,29 @@ +import React from "react"; +import newsData from "@site/data/news.json"; +import styles from "./styles.module.css"; + +interface NewsItem { + date: string; + headline: string; +} + +const News: React.FC = () => { + return ( +
+

News

+
+ {newsData.map((item: NewsItem, index: number) => ( +
+
{item.date}
+
+
+ ))} +
+
+ ); +}; + +export default News; diff --git a/src/components/News/styles.module.css b/src/components/News/styles.module.css new file mode 100644 index 0000000..40083f5 --- /dev/null +++ b/src/components/News/styles.module.css @@ -0,0 +1,45 @@ +.newsContainer { + max-width: 1200px; + margin: 0 auto; + padding: 20px; +} + +.title { + font-size: 2rem; + margin-bottom: 20px; + text-align: center; +} + +.newsList { + display: flex; + flex-direction: column; + gap: 20px; +} + +.newsCard { + padding: 20px; + border: 1px solid #ddd; + border-radius: 8px; + background-color: #f9f9f9; + box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); +} + +.date { + font-weight: bold; + margin-bottom: 10px; + color: #555; +} + +.headline { + font-size: 1rem; + line-height: 1.5; +} + +.headline a { + color: #007acc; + text-decoration: none; +} + +.headline a:hover { + text-decoration: underline; +} \ No newline at end of file diff --git a/src/components/TeamMembers/index.tsx b/src/components/TeamMembers/index.tsx new file mode 100644 index 0000000..432d5e5 --- /dev/null +++ b/src/components/TeamMembers/index.tsx @@ -0,0 +1,58 @@ +import React from "react"; +import useBaseUrl from "@docusaurus/useBaseUrl"; +import teamData from "@site/data/team_members.json"; +import styles from "./styles.module.css"; + +interface TeamMember { + name: string; + photo: string; + info: string; + email: string; + number_educ: number; + education1?: string; + education2?: string; + education3?: string; + education4?: string; +} + +const Team: React.FC = () => { + return ( +
+ {teamData.map((member: TeamMember, index: number) => ( +
+ {`Photo +

{member.name}

+

+

+ Email:{" "} + {member.email} +

+
+

Education

+
    + {Array.from({ length: member.number_educ }, (_, i) => { + const educationField = `education${i + 1}` as keyof TeamMember; + return ( + member[educationField] && ( +
  • + ) + ); + })} +
+
+
+ ))} +
+ ); +}; + +export default Team; diff --git a/src/components/TeamMembers/styles.module.css b/src/components/TeamMembers/styles.module.css new file mode 100644 index 0000000..c8a8514 --- /dev/null +++ b/src/components/TeamMembers/styles.module.css @@ -0,0 +1,59 @@ +.teamContainer { + display: flex; + flex-wrap: wrap; + gap: 30px; + /* Increased gap between cards */ + justify-content: center; + padding: 20px; + max-width: 1600px; + /* Wider content area */ + margin: 0 auto; +} + +.memberCard { + flex: 1 1 calc(33.333% - 30px); + /* Fit 3 cards per row, slightly wider */ + border: 1px solid #ddd; + border-radius: 8px; + padding: 20px; + min-width: 350px; + /* Increased minimum width */ + max-width: 450px; + /* Increased maximum width */ + text-align: center; + box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); + background-color: #ffffff; +} + +.memberPhoto { + border-radius: 50%; + width: 120px; + height: 120px; + object-fit: cover; + margin-bottom: 16px; +} + +.memberCard h3 { + margin: 12px 0 8px; + font-size: 1.25rem; +} + +.memberCard p { + font-size: 1rem; + line-height: 1.5; +} + +.memberCard ul { + list-style: disc; + /* Show as bullet points */ + padding-left: 20px; + /* Indent the bullet points */ + text-align: left; + /* Align items to the left */ +} + +.memberCard ul li { + font-size: 0.95rem; + margin-bottom: 8px; + /* Add spacing between items */ +} \ No newline at end of file diff --git a/src/pages/markdown-page.md b/src/pages/markdown-page.md deleted file mode 100644 index 9756c5b..0000000 --- a/src/pages/markdown-page.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Markdown page example ---- - -# Markdown page example - -You don't need React to write simple standalone pages. diff --git a/src/pages/news.mdx b/src/pages/news.mdx new file mode 100644 index 0000000..54a56ab --- /dev/null +++ b/src/pages/news.mdx @@ -0,0 +1,8 @@ +--- +id: news +title: News +--- + +import News from "@site/src/components/News"; + + diff --git a/src/pages/team.mdx b/src/pages/team.mdx new file mode 100644 index 0000000..5dee94c --- /dev/null +++ b/src/pages/team.mdx @@ -0,0 +1,11 @@ +--- +id: team +title: Team Members +--- + +import Team from "../components/TeamMembers"; + +# Members + + + diff --git a/static/img/team/Aaron_Kanzer.jpg b/static/img/team/Aaron_Kanzer.jpg new file mode 100644 index 0000000..ec83422 Binary files /dev/null and b/static/img/team/Aaron_Kanzer.jpg differ diff --git a/static/img/team/Austin_Macdonald.jpg b/static/img/team/Austin_Macdonald.jpg new file mode 100644 index 0000000..c9b0f2a Binary files /dev/null and b/static/img/team/Austin_Macdonald.jpg differ diff --git a/static/img/team/Benjamin_Dichter.jpg b/static/img/team/Benjamin_Dichter.jpg new file mode 100644 index 0000000..7e57a4d Binary files /dev/null and b/static/img/team/Benjamin_Dichter.jpg differ diff --git a/static/img/team/Cody_Baker.jpg b/static/img/team/Cody_Baker.jpg new file mode 100644 index 0000000..9907ec4 Binary files /dev/null and b/static/img/team/Cody_Baker.jpg differ diff --git a/static/img/team/Dorota_Jarecka.jpg b/static/img/team/Dorota_Jarecka.jpg new file mode 100644 index 0000000..25fef8e Binary files /dev/null and b/static/img/team/Dorota_Jarecka.jpg differ diff --git a/static/img/team/Horea-Ioan_Ioanas.jpg b/static/img/team/Horea-Ioan_Ioanas.jpg new file mode 100644 index 0000000..231d4fe Binary files /dev/null and b/static/img/team/Horea-Ioan_Ioanas.jpg differ diff --git a/static/img/team/Jacob_Nesbitt.jpg b/static/img/team/Jacob_Nesbitt.jpg new file mode 100644 index 0000000..27ce483 Binary files /dev/null and b/static/img/team/Jacob_Nesbitt.jpg differ diff --git a/static/img/team/John_Thorvald_Wodder_II.jpg b/static/img/team/John_Thorvald_Wodder_II.jpg new file mode 100644 index 0000000..1fb2640 Binary files /dev/null and b/static/img/team/John_Thorvald_Wodder_II.jpg differ diff --git a/static/img/team/Kabilar_Gunalan.jpg b/static/img/team/Kabilar_Gunalan.jpg new file mode 100644 index 0000000..17a66f2 Binary files /dev/null and b/static/img/team/Kabilar_Gunalan.jpg differ diff --git a/static/img/team/Michael_VanDenburgh.jpg b/static/img/team/Michael_VanDenburgh.jpg new file mode 100644 index 0000000..806ddef Binary files /dev/null and b/static/img/team/Michael_VanDenburgh.jpg differ diff --git a/static/img/team/Nima_Dehghani.jpg b/static/img/team/Nima_Dehghani.jpg new file mode 100644 index 0000000..85e5dd6 Binary files /dev/null and b/static/img/team/Nima_Dehghani.jpg differ diff --git a/static/img/team/Roni_Choudhury.jpeg b/static/img/team/Roni_Choudhury.jpeg new file mode 100644 index 0000000..94a1e31 Binary files /dev/null and b/static/img/team/Roni_Choudhury.jpeg differ diff --git a/static/img/team/Satrajit_S_Ghosh.png b/static/img/team/Satrajit_S_Ghosh.png new file mode 100644 index 0000000..09ccd61 Binary files /dev/null and b/static/img/team/Satrajit_S_Ghosh.png differ diff --git a/static/img/team/Yaroslav_O_Halchenko.jpg b/static/img/team/Yaroslav_O_Halchenko.jpg new file mode 100644 index 0000000..46508b7 Binary files /dev/null and b/static/img/team/Yaroslav_O_Halchenko.jpg differ diff --git a/yarn.lock b/yarn.lock index 0e9c05e..c774b3b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2504,7 +2504,7 @@ dependencies: "@types/node" "*" -"@types/node@*": +"@types/node@*", "@types/node@^22.10.1": version "22.10.1" resolved "https://registry.yarnpkg.com/@types/node/-/node-22.10.1.tgz#41ffeee127b8975a05f8c4f83fb89bcb2987d766" integrity sha512-qKgsUwfHZV2WCWLAnVP1JqnpE6Im6h3Y0+fYgMTasNQ7V++CBX5OT1as0g0f+OyubbFqhf6XVNIsmN4IIhEgGQ== @@ -5359,6 +5359,11 @@ isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== +javascript-stringify@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/javascript-stringify/-/javascript-stringify-2.1.0.tgz#27c76539be14d8bd128219a2d731b09337904e79" + integrity sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg== + jest-util@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" @@ -9068,11 +9073,25 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== +yaml-loader@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/yaml-loader/-/yaml-loader-0.8.1.tgz#034f901147073cfc307cdcce8bd44c1547e60ba1" + integrity sha512-BCEndnUoi3BaZmePkwGGe93txRxLgMhBa/gE725v1/GHnura8QvNs7c4+4C1yyhhKoj3Dg63M7IqhA++15j6ww== + dependencies: + javascript-stringify "^2.0.1" + loader-utils "^2.0.0" + yaml "^2.0.0" + yaml@^1.7.2: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== +yaml@^2.0.0: + version "2.6.1" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.6.1.tgz#42f2b1ba89203f374609572d5349fb8686500773" + integrity sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg== + yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"