This is a project to process the raw data of Nogizaka Lib project to make them instantly available for the View.
Profile images and CD artworks © 乃木坂46LLC.
Most information in this project is from Nogizaka46 official website and Wikipedia.
Install necessary packages and build
npm install
npm run build
Watch and transpile TypeScript
to JavaScript
npm run watch
Generate final JSON data
npm start
main.ts
: entry point/dist/
: compiledJS
file/src/types/
: data types for raw data/src/common/
: common used types/src/raw/
: raw data/src/json/
: final outputJSON
data
Specify data types for raw data. The purpose is to do type-check and unify input in data editing process.
TODO:
- song
- member
- single & album
- unit & corp
Edit and input raw data in ts
files.
TODO:
- members
- main
- photoAlbums shopping
- profileImage
- singleImages
- songs
- main
- creators
- musicVideos
- singles
- albums
- units
Process and calculate edited raw data to get more data like members' positions history.
TODO:
- Members
- Calculate
units
andcorps
- Calculate
positionsHistory
andpositionsHistory
based onsingles
- Calculate
- Singles
- Extract
songType
fromsongs
- Extract focus members/unit/corp from
songs
- Extract
- Albums
- Extract
songType
fromsongs
- Extract focus members/unit/corp from
songs
- Extract
- Songs
- Pair
single
andalbums
fromsongs
andalbums
- Calculate the artwork based on its
single
andalbums
properties
- Pair
- Units & Corps
- Extract performed songs from
songs
- Extract performed songs from
- songs
song > albums
single > songs > title
(raw)
song > singles
album > songs > title
(raw)
- singles
single > songs > type
(NOTE: has default values but should referencesongs
)song > type
(raw)
single > focusPerformers
song > type
(raw)song > performers
(raw)song > formations
(raw)
- albums
album > songs > type
(NOTE: has default values but should referencesongs
)song > type
(raw)
album > focusPerformers
song > type
(raw)song > performers
(raw)song > formations
(raw)
- members
member > units
unit > name
(raw)unit > type
(raw)
member > positions
single > behindPerformers
(raw)single > song > type
->song > formations
(raw)song > performers
(raw)
TODO:
- Replace
undefined
with emptynull
(becauseundefined
will remove properties)