Home

Awesome

Game ⨯ Tech (beta)

Build Status

A web-based knowledge management system for visualizing game related technologies.

This repository can be viewed at gamextech.org.

Currently the database is very limited. Please consider contribution.

Target users

Features

Dependinces

Schema

The database contains a set of graphs.

The database and graphs are stored in JSON format.

Each graph JSON is an object, with "nodes" and "links" array.

Node

Each node is an object with following keys (*required):

KeyTypeDescription
id*stringUnique identifier in title case
abbrstringAbbreviation
akastring or array of stringAlternative names (also known as
typestring"category" (default) or "technique" or "game"
yearnumberYear of invention or publication
synopsisstringConcise description
authorstring or array of stringInventor(s) or author(s)
linkstring or array of stringlinks of publication, wikipedia or other related information
titlestringTitle of the first publication which reveals this
conferencestringAbbreviation of conference name, e.g. GDC, SIGGRAPH
journalstringAbbreviation of journal name, e.g. JCGT
organizationstring or array of stringCompany, institute or other organization
contributorstring or array of stringgithub usernames of whom contribute to this node

Link

Each link is an object with following keys (*required):

KeyTypeDescription
source*stringSource node id
target*stringTarget node id
typestring"include" (default) or "derive" or "use" or "first-use" or "invent"

Contribution

Contributions are welcome. Please follow:

  1. Fork this repository
  2. Add nodes or links in related json files. Add "contributor" key optionally.
  3. Testing
  4. Make Pull request

If there are too many nodes/links in a single file, you may extract them into a new JSON in a suitable directory, and add the JSON file into /database.json.

If you want to add a lot of data or reorganize existing structure, you may create an GitHub issue for discussion.

Adding new features and fixing bugs are welcome as well.

Testing

Run npm install and npm test to validate the database with schema and additional checks.

Run npm start to start a local http server, and open one of the listed URL in the browser to view the local site.

Starting up http-server, serving .
Available on:
  http://192.168.1.1:8080
  http://127.0.0.1:8080

For testing single(or several) JSON, you may use ?d= in query string, such as http://localhost:8000/?d=/tech/graphics/shadow.json&e=-1.

History