Add contribution guide
parent
14173cb8b1
commit
4fa78e4420
|
@ -0,0 +1,46 @@
|
||||||
|
## 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.
|
||||||
|
|
Loading…
Reference in New Issue