Giter Club home page Giter Club logo

neurodata.io's Introduction

neurodata.io

This is the static site generator code for neurodata.io

Prerequisites

At a minimum, you will need the following tools installed:

  1. Git
  2. Grow

If you do not have Grow, you can install it using:

curl https://install.grow.io | bash

or (from a virtual environment)

pip install grow

Note that grow does not yet support Python 3.

Running the development server

Prior to starting the development server, you may have to install dependencies used by your project. The grow install command walks you through this and tries to set up your environment for you.

The grow run command starts your development server. You can make changes to your project files and refresh to see them reflected immediately.

grow install
grow run

Building

You can use the grow build command to build your whole site to the build directory. This is a good way to test and verify the generated code.

grow build

Contributing

Please submit pull requests to deploy branch.

[DEV/QC] Bib files and references

There is a LaTeX file that will build the references into a PDF, mostly for QC. It is located in the root directory and can be built by running make in the root directory.

Bib addition rubric

When adding a new addition to the bib files, most normal bib entries will work, with the only additional step being the addition of a keywords value. Which keywords should be used for each bib file are displayed below, as they are used to organize the file. General rules:

  • When adding entries to either the pubs.bib or talks.bib files, include an entry called author+an, this serves to underline lab members and bold jovo's name in the publication sections of his CV. Looking at the order of authors for a bib entry, number which authors are lab members (trainee) and which is jovo (highlight). For example:
@article{example,
author = {<lab member> and <not lab member> and <jovo> and <lab member> and <not lab member>},
author+an = {1=trainee;4=trainee;3=highlight},
...
  • DO NOT add an @incollection citation unless you are adding a new member to the people.bib file
  • Make sure that month is an integer, as this prevents potential ordering issues
  • Avoid symbols such as & and $ in your entries, as they may cause issues with bib compiling

Categories for pubs.bib:

  • For accepted and published peer-reviewed papers: peer-reviewed
  • For papers currently under review: in-review
  • For conference papers: conference
  • For book entries: book
  • For technical reports: tech
  • For abstracts/posters: abspos
  • For other publications: other
  • For papers without Jovo as an author, but still referenced on the website: omit

categories for talks.bib:

  • For local talks: local
  • For international talks: international

Categories for press.bib:

  • N/A

Team member addition info

All information regarding team members for both the website's neurodata.io/about/team/ page, and Jovo's CV (neurodata.io/about/jovo, the Mentorship section) is derived from the bib file located in content/bibs/people.bib. It is very important that everyone keep their personal information up to date, as this will be reflected on Jovo's CV. In addition to the information added here, you will need to upload an image to content/source/images/people and state its name in the file category (for example, john_doe.jpg). See below if you wish to add someone to the website who shouldn't show up on either the cv or the Teams page.

@incollection{<ID>,
    author = {Full name},
    usera = {Job title},
    month = {Month, as an integer, that you started working},
    year = {starting year},
    number = {starting month/year -- ending month/year},
    series = {ending year},
    abstract = {What you do in the lab, 1-2 sentences, 3rd person},
    userb = {highest degree held},
    userc = {department/major, school},
    userd = {website category},
    keywords = {cv category},
    doi = {github username},
    note = {email address},
    url = {personal website (do not include https://)},
    usere = {training},
    file = {image name}
}

Some categories can be left blank if not applicable, the categories required to have information in them are: <ID>, author, usera, month, year, number, and userd. Some more notes:

  • Abbreviations are heavily encouraged for userb and userc

  • year and series should have all 4 digits of the year (i.e. 2019, not 19)

  • number should be in the format of {01/18 -- } if the team member is still a member of the lab, and {01/18 -- 04/21} if they are no longer a member.

  • Categories for userd are (in order of placement on the teams page):

    • faculty
    • faculty - research
    • staff
    • postdoc
    • student
    • undergrad
    • associate
    • highschool
  • Categories for keywords are:

    • Research Track Faculty Mentorship = researchtrackfaculty
    • Staff Research Scientist = staffresearch
    • Postdoctoral Fellow = postdoc
    • Ph.D. Student = PhDstudent
    • Visiting Doctoral Student = visitingdoc
    • Masters Student = MSstudent
    • Undergrad Student = undergrad
    • High School Student = HS
  • Your image can be found here () if you are already on the website

  • Current supported usere entries are:

    • safe-zone

An example entry is:

@incollection{johndoe,
    author = {John Doe},
    usera = {Research Assistant},
    month = {7},
    year = {2019},
    number = {7/19 -- },
    series = {},
    abstract = {Lead developer on <project>, helping with <something>...},
    userb = {BSE},
    userc = {BME, JHU},
    userd = {student},
    keywords = {MS},
    doi = {jnydoe},
    note = {[email protected]},
    url = {www.heresjohnny.com},
    usere = {safe-zone},
    file = {john_doe.jpg}
}

Adding someone who shouldn't appear on the Teams page or CV:

To do this, simply copy the entry below (yes, there should be spaces in the number and series sections) and change the relevant information. The other specification for both userd and keywords tell the website to ignore showing these people on the Teams page (though they will appear when referenced elsewhere) and for the CV to ignore them on generation.

@incollection{johndoe,
    author = {John Doe},
    usera = {},
    month = {},
    year = {},
    number = { },
    series = { },
    abstract = {},
    userb = {},
    userc = {},
    userd = {other},
    keywords = {other},
    doi = {},
    note = {[email protected]},
    url = {},
    usere = {},
    file = {john_doe.jpg}
}

Hosting files on the website:

CURRENTLY UNDER DEVELOPMENT

neurodata.io's People

Contributors

aliceqingyangwang avatar asaadeldin11 avatar bdpedigo avatar bvarjavand avatar dependabot[bot] avatar devincrowley avatar diane-lee-01 avatar eyezerets avatar falkben avatar j1c avatar javierhow avatar jdey4 avatar jovo avatar jshinm avatar kareef928 avatar laknath1996 avatar lawreros avatar loftusa avatar m-powell avatar megh1241 avatar mlemyco avatar mrae avatar perlman avatar pssf23 avatar rflperry avatar sampan501 avatar suki-o avatar suki-ogihara avatar tathey1 avatar tliu68 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

neurodata.io's Issues

intro video has large file size

  • Replace video files with updated files of higher quality/better compression
  • Both the mp4 files load on safari
  • Create low resolution videos for mobile users
  • Replace .gif for mobile users with video element (autoplay video used to be blocked but no longer)
  • GIF loads even on desktop (undesirable as it's 3.5 MB)

replace static links with g.static calls

g.static
g.static()

Returns a StaticFile object corresponding to a static file contained within the pod. is the full pod path of the static file. You can access the path property of StaticFile.url to retrieve an absolute link to the file's serving path.

It is a best practice to always refer to static files using the g.static tag rather than referring to their URLs directly. This has the benefit of making URL changes easy and Grow will catch broken links to static files at build time.

Prior to using g.static, routes must be configured in the static_dirs property of podspec.yaml.

g.static supports static file localization by way of the localization option of the static_dirs setting in podspec.yaml. If a localized static file exists, it will return the object corresponding to the localized static file. If it doesn't, it will return the object corresponding to the base static file.

Uses the current document's locale.

{{g.static('/static/example.png', locale=doc.locale)}}

Uses a hardcoded locale.

{{g.static('/static/example.png', locale='de')}}

add cloudfront

and monitor cost

cloudfront is a CDN and should make the website load fast everywhere

and it allows using SSL certificate

add data

  • Bhatia et al. (2015) ๐Ÿ‘ป (worm 4&5)
  • Vladimirov et al. (2014) ๐Ÿ‘ป (freeman14)
  • Jarrell et al. (2016) ๐Ÿ‘ป (Cook et al / emmons12)
  • Deisseroth et al. (2016) ๐Ÿ‘ป (kutten/tomer15)
  • Bumbarger et al. (2013) ๐Ÿ‘ป (worm2)
  • Dyer et al. (2016)
  • Weiler et al. (2014)
  • Wanner et al. (2016)
  • Tobin et al. (2017)
  • Takemura et al. (2013)
  • Randlett et al. (2015)
  • Lee et al. (2016)
  • Kristina et al. (2015)
  • Harris et al. (2015)
  • Kasthuri et al. (2015)
  • Hildebrand et al.
  • Collman et al. (2015)
  • Bock et al. (2011)
  • Bloss et al. (2018)
  • Bloss et al. (2016)
  • BigBrain (Release 2015)
  • Ohyama et al. (2015)

convert images from PNG to JPG

  • data\kharris15_bg.png
  • data\weiler14_bg.png
  • data\takemura13_bg.png
  • data\takemura13_thumb.png
  • data\kharris15_thumb.png
  • data\kasthuri11thumbtmp.png
  • data\weiler14_thumb.png
  • data\collman15\collman15dataset1.png
  • kavli_fpo.png
  • team\lee_albert.png
  • data\collman15_thumb.png
  • data\flyCNS_L1_thumb.png
  • data\lee16_thumb.png
  • tools\placeholder.png
  • data\placeholder.png
  • team\ryan-marren.png
  • data\deisseroth_thumb.png
  • publications\placeholder.png
  • data\worm.png
  • team\placeholder.png
  • tools\ndmg.png
  • tools\flashx_preview.png
  • team\jovo.png
  • data\vladimirov14_thumb.png
  • team\zhu_luke.png
  • team\liu_jon.png
  • data\randlett15_bg.png
  • team\sun_tony.png
  • data\tobin12_thumb.png
  • tools\clarityVizLogo.png
  • data\weiler14\paperfigureplaceholder.png
  • data\lee16_bg.png
  • data\kasthuri11.png
  • data\collman15_bg.png
  • data\flyCNS_L1.png
  • data\deisseroth_bg.png
  • darpa_fpo.png
  • data\vladimirov14_bg.png
  • data\tobin12_bg.png
  • randlett15_thumb.png

add tools

  • ingest large vol
  • meda
  • flashx
  • lol
  • multiscale generalized correlation
  • ndio
  • ndmg
  • neurodata parse
  • ndreg
  • ndstore
  • ndviz
  • nd web tools
  • oopsi
  • randomer forest

add/update people

  • Albert Lee (alum)
  • Alex Baden
  • Alex Eusman (alum)
  • Ben Falk
  • Carey E. Priebe
  • Cencheng Shen
  • Da Zheng (alum)
  • Disa Mhembere
  • Eric Perlman
  • Eric W Bridgeford
  • Greg Kiar (alum)
  • Guilherme Franca (alum)
  • Heather Gaddy Patsolic
  • Jesse Leigh Patsolic
  • Jon Liu (alum)
  • Jordan Matelsky (alum)
  • Joshua Vogelstein
  • Kunal Lillaney (alum)
  • Leo Duan (alum)
  • Luke Zhu (alum)
  • Michael I. Miller
  • Misha Kazhdan
  • Randal Burns
  • Ryan Marren (alum)
  • Tanay Agarwal (alum)
  • Tony Sun (alum)
  • Tyler Tomita (alum)
  • William Gray Roncal (alum)
  • Youngser Park
  • Vikram Chandrashekhar
  • Kwame Kutten (alum)
  • James Browne
  • Kaveh Karbasi

update readme

think it could better explain where the content folders are to edit

in about, a few other pages

  1. references, i am guessing the easiest way to do this is to be able to import a latex bib, because i keep one of those up to date anyway.
    jordan might do something like that here: https://jordan.matelsky.com/resume/
    if there is a simpler way for you, then i can migrate to using that instead.

  2. talks we've given. bibtex might be easy to import. ideally each talk would have a functioning link to slides.

  3. awards, our team was won a number of awards, best paper/talk/poster/etc. we should be highlighting that.

projects page?

the page for projects feels a bit lame.
i'm not sure how to make it feel less sucky, some options:

  1. in the vertical navbar, add a "+" sign next to data, which drops down the 3 projects, so people can see the projects if they want, and remove the page

  2. change the nav bar to have a submenu containing the three projects under data.

  3. just remove the page and the entry in the navbar, so it takes 2 clicks to get there, no big deal

  4. make the page more dramatic somehow. like, make the tiles way bigger, and little movies or something, even with a bit of text next to each? i think this option is my least favorite, but open to it if . you think it is better.

publications naming change

YAML publication files:
name should be author and year
subtext should be Title

Makes it more readable and almost none of the publications actually were using subtext

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.