47 lines
1.9 KiB
Markdown
47 lines
1.9 KiB
Markdown
|
## The Website
|
||
|
|
||
|
Data for the website comes from three places:
|
||
|
* db/ : "The Database", a JSON object that provides metadata and structured
|
||
|
representations of publications, lab member details, etc...
|
||
|
* src/ : "The Website". Files in this directory are automatically compiled
|
||
|
through a sequence of transformations (defined in `Rakefile`). Most files
|
||
|
in this directory are in [Embedded Ruby](https://en.wikipedia.org/wiki/ERuby)
|
||
|
(`.erb`) format.
|
||
|
* slides/, software/ : "The Static Content". Files in these directories are
|
||
|
posted with no transformation or compilation.
|
||
|
|
||
|
You don't need to upload anything. Branch the repo, commit your changes, and
|
||
|
if they test successfully, create a merge request to add your changes.
|
||
|
|
||
|
## The Database
|
||
|
|
||
|
Much of the data that goes into the website is generated dynamically based on
|
||
|
a JSON database. The directory `db` contains a JSON object heirarchy, split
|
||
|
out into multiple files for convenience. Directories will append to an object
|
||
|
at the same path. For example, part of the structure is:
|
||
|
* db/venues.json
|
||
|
* db/venues/SIGMOD.json
|
||
|
* db/venues/pVLDB.json
|
||
|
The resulting database will include
|
||
|
```
|
||
|
{
|
||
|
venues: {
|
||
|
"MIST" : { ... }, // From venues.json
|
||
|
...
|
||
|
"SIGMOD" : { ... }, // From venues/SIGMOD.json
|
||
|
"pVLDB" : { ... }, // From venues/pVLDB.json
|
||
|
},
|
||
|
...
|
||
|
}
|
||
|
```
|
||
|
Relevant portions of the hierarchy:
|
||
|
* lab: Lab Members, Alumni, and Collaborators. Used to generate /people, as
|
||
|
well as URLs in any place where a lab member's name is mentioned.
|
||
|
* publications: Metadata for papers that lab members have published.
|
||
|
* venues: Metadata regarding conferences. Used to generate full conference
|
||
|
names, as well as numerous annotations for CV generation
|
||
|
* people: Metadata regarding random people that may/may not be affiliated with
|
||
|
the lab. Used primarily for CV generation
|
||
|
* cv: Data uased to generate CVs.
|
||
|
|