<aside> 💡 Please use Node v14, preferably v14.15.0. Recommend usage of Node Version Manager.
</aside>
For this section, the new data source will be known as ‘Data Source X’
Fork the Dynamic Data repo
https://lh4.googleusercontent.com/qQAqWCBEWIucikSqTjooVftcIWJa-uwkov3xYIbNoWhk28P1FkKiYyLMkzXAfRUn5tSPJoFRNwS0Jk5jXQMywRrQkLcZeuWC_XcwdwfSG1mm6wDxFF-gcO726tfr7GIwR3bfyTzv0mwuU_VhlIH3N_Y7-AdDNnGuMg7Y5o6DHF2hM9cKnt-hVCREHA
Clone the newly forked repo
https://lh6.googleusercontent.com/NBVGz3NNEKYeGngYoqrEDoCIL0kQqbAhwOmDs2ziKLLKtUsII_tLz54gSg8K1rzo09C0IjXmbXfxjmcBFF-R-e-P32l_qNXdsfI9VslZI96hqPSKVnIUU7jmSL6ZGf685lIrmr9r9eklqdInNsC8Tp7KP8W8jz9Ndihv72oNmjtpcFx36tZp5JSbBA
Yarn install in root repo folder (dynamic-data)
https://lh4.googleusercontent.com/7wMP7hINuD-aO6Xd8EZFBJWWyz4uW-vvRQwBPwFKMpiM7TUVNPDQOXFjt9RlXjZZ0WNEt-V_EKxazv_j6qlB5dO0okrDAaRQznOSt0zEvx4w4clcGLEc-TFuatR4zRx8LkSmaEA3AQ7DJ4iRjTnIcPYoAHer0VMoSAIrateHVp1Q6AIzmMbkwN6tzA
Either duplicate the folders that belong to a specific package (e.g. oura-data and oura-mockups) or import the two folders found at Dylan-Finney/dynamic-data-template and import them into dynamic-data/packages/
Rename the folders to be prefixed by the new data source, e.g. data-source-x-data and data-source-x-mockups
https://lh5.googleusercontent.com/xfZNiKXW2p9XOpzym1igfIEdiAB6Tkp1p1km4Jvd6_4gEWZT0jzqOdMkNQvmbsLUqfQOpK1YwRNZrW_Fhi_dcqKbepNfuSC2-CUubAsnCuaBmTosougW4y-MGIKduIB4XlCAxoDXGLx5oYzSa47e7cLOyoy-cykibFN-uoKvE_oblZ30lDK7ViwS8w
Inside each of the package.json files in both folders,
https://lh3.googleusercontent.com/7SPGnwq758WyPgjiKiGOt217brL06UWcObln1QU2TSJSnFrVchA2UtFtmcORpFGYbp6ST1_Tv2lWzz40LcMU9r8jhx7KP6xUz4xPg5HFO5ZGjGTEr22XRG8p9YG4_q0sc795TEKw1--zFQUliuxDC34_19d2i2xQqGpPrSeefDzg_6T7do1pkzHdGA
c. for the data-source-x-mockups package.json, change the dependency for the test-data to data-source-x-data and change the version to the version of that package
https://lh6.googleusercontent.com/jJicvIgaeczEXrxuinISnAZXiqkA6SVY1nrCZJvKdjpCBZ_9dam32IoEPDp6C3LoGvKz7WRBf32qfPI9n85DBrRmZZkqCVjdZlZeXAzWmV9Zmt6BNBHPBXUTvJ9b9UjCaSUcHIElGZD-HdJg9kulTYIJoqAg2dHwG732xPRxX2fnWzedTjbe3Y_mFg
d. in the scripts, change the selectProjects argument to be equal to the new package name
https://lh4.googleusercontent.com/q5tNY3QQUynaItAE6icmM5DsDlkT5RVR1POAcYziqoI6jpKEcbQ8XFSZOJnypGGGtroJ6QkqBc4JlFch5jXELsZC_T41oKqAshxkCV-eb_gnlTdOwl5wdI1IjXxGsMJaS0zP3wDArwUodnYX7WEHCw4gvuXHMJY8nkTZXnxNMNfSdV5J9wgiZZqnJw
https://lh6.googleusercontent.com/aIivKiMzIc3rlObzFLkl18kTz7fH7n9De07QFOnC24-VOrgUaR4tYsXzc4AZP-oRhgiMLouLCLTdR3rzJuAmW-shiPUcOl_kQWM2jVwDlJo_vqe6TqDlLBiaqXzMCAy6xtPRu1PhP9WDwXhz-vFteosiPD6rC2jUccmgeG7Y9nZ9Dzo6VV0a6zryuQ
Make the library export the files
https://lh4.googleusercontent.com/RT9Bi_mWQbQl8NAUt7NF1gjIXw5O7cfdWpYV-GzIASeQk2F4Za1f21RH7UrxGE39lUdbnMHVNxolOIzD_TqJJEiMcgRmoifRSjD3AnCVEERQo90PZ2yLyQTiApvRM99tduA9XgUX6QXWFu0X5uK7ePyHGBFo9BeP7_Fl2ZbRkz6Xy3wKEn6ywBpBwA
https://lh6.googleusercontent.com/zbt_oPNL26v_KkugN8V1WN8W5jeJOaOo1U82o3iVSE-TtSEhSuRLLY9-QzDKG7V5aUakdfUy71fM25N2pVae4_WZwBTYiYYuOMLU3eT1sa25XISojasodw0IcnaY7rz2jIG-tvdIdRL1UKn8UOgTP8B6cKl3Z029zoDrc9iDYtVe0AuzE4NR7jmkkQ
Yarn build, fix any errors that arise. if any changes are made to the functions in this package afterwards, make sure to rebuild
https://lh5.googleusercontent.com/miLQxZRpy16X5XQqEdq95PPwKkBQpeGC2791OmhA0qJR6m5dtl0p_WrDX6xqAD7bBIsQt3LnjTyFWR2gk73V8TXSwMUJFBc18-BUfq4zuVZ32B763hldiNjNColLFzb3buR7-H5_3d_TpcSTjZw8Ve75Ag63AChSUpraXgQbWjSf7vBXGEPDi3sq-g
In the tests folder in data-source-x-data, create jest functions that test to see if the data is valid. Note the .js uses require, .mjs uses import
https://lh3.googleusercontent.com/N1WlhyBsTYymuNMMaQZolczUemht21jIbBNUlglqGWkfBVc9e-5nnxaXU-3rPpM873V8563OD1t1sfycy7zws3DAAVPRiV0BOSKlaDqOoDLmX0kf5p55UmZaz2fEqxwcTNRlzsiS8t9rIH17_T7H82LiTurx1OkaZ-yA_Uge694Q6B9dy_QvQkILZg
https://lh3.googleusercontent.com/8Cpyg-L36NtndVo5yajjW2ZzKYXL5je3XtIukKButabfyGkjiQ350FbjBiLLOx9MOF-4N87ypW_BpSKbZCtYy4a2xr6hc5wyK5N9V3pE52Ob60uiDQ12Xab9gD62MYETeFk9VmKMecRxJ0gKq7ETb1jy45Vy_Jw-qC6Zrfg7Hbif5K2V3Nzw5w-x4g