feat(general): improve the dev workflow with json data (#3374)

* mock data by copying from mock directory

* fix file remanes

* fix file remanes

* remove env variable

* add env varialbes to example file

* mock data by copying from mock directory

* fix file remanes

* fix file remanes

* remove env variable

* add env varialbes to example file

* move mock folder into hooks

* remove content

* mock data by default in npm run dev

* reorder imports

* fake mocked content

* change varname

* rename files to original

* update readme

* revert unnecesary changes

* revert unnecesary changes

* revert unnecesary changes
This commit is contained in:
Pablo Aragón 2023-07-04 13:45:47 +02:00 committed by GitHub
parent 050c8ad5fd
commit 6ff1a4b735
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
15 changed files with 11509 additions and 3968 deletions

View File

@ -7,3 +7,7 @@ NUXT_PUBLIC_IBM_ANALYTICS_SEGMENT_PRODUCT_CODE_TYPE=
NUXT_PUBLIC_IBM_ANALYTICS_SEGMENT_PRODUCT_TITLE=
NUXT_PUBLIC_IBM_ANALYTICS_SEGMENT_SCRIPT_SRC=
NUXT_PUBLIC_IBM_ANALYTICS_SEGMENT_UT30=
SITE_URL=
AIRTABLE_API_KEY=
MOCK_DATA=
MOCK_BASE_PATH=

6
.gitignore vendored
View File

@ -20,8 +20,8 @@ public/images/events/downloaded/*
static/sw.js
content/events/*.json
content/ecosystem/members.json
content/advocates/advocates.jon
content/ecosystem
content/events
content/advocates
docker-compose.yml

View File

@ -99,6 +99,14 @@ Notice that, for communicating with the team tools, API keys may be required. It
GENERATE_CONTENT=1 AIRTABLE_API_KEY=<your airtable api key> npm run dev
```
#### 🥸 Mocking content
If you should not have access to the content tables (or you don't want to fetch these data), it can be mocked by setting the environment variable `MOCK_CONTENT` to `true` .
If you start up the project with `npm run dev` , mocked content is enabled by default.
The project has a default mocked content under the `hooks/mock/content` folder. If you want your own custom mocked content, you can create a new folder and set it as your mocked content folder using the environment variable `MOCK_BASE_PATH` which should be an absolute path of your system.
<br/>
## ✏️ How to Contribute

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,128 @@
[
{
"types": [
"Talks"
],
"title": "unde animi voluptatibus earum aut modi magni natus fugit quo",
"image": "https://via.placeholder.com/512x512/fd9fca/4aefa7.gif?text=dolor%20ratione%20quasi",
"location": "YouTube",
"speaker": "Alfred Feest",
"regions": [
"Online"
],
"date": "June 16, 2023",
"startDate": "2023-06-16",
"startDateAndTime": null,
"endDate": "",
"to": "https://irresponsible-spokeswoman.net/",
"abstract": "Nostrum earum tempore quae officiis iure vitae voluptate harum. Incidunt quod possimus adipisci cumque amet voluptates cum. Voluptatem aperiam soluta veritatis quis."
},
{
"types": [
"Open Source"
],
"title": "repudiandae explicabo qui eligendi eligendi nam",
"image": "https://via.placeholder.com/512x512/67199d/fb2a42.jpeg?text=tenetur%20dolor%20repellat",
"location": "Virtual",
"speaker": "Mr. Vincent Mante II",
"regions": [
"Online"
],
"date": "June 15, 2023",
"startDate": "2023-06-15",
"startDateAndTime": "3:00PM UTC",
"endDate": "",
"to": "https://ornery-tam-o-shanter.biz",
"abstract": "Maxime maxime a. Similique provident incidunt quaerat architecto soluta. Facere voluptates ducimus voluptas voluptatem amet debitis."
},
{
"types": [
"Open Source"
],
"title": "ex ipsum odio doloremque occaecati a rerum ducimus possimus fugit eius aperiam voluptate aut",
"image": "https://via.placeholder.com/512x512/cbfac4/acc0cf.jpg?text=vero%20inventore%20fugiat",
"location": "Virtual",
"speaker": "Ms. Mary Murray",
"regions": [
"Online"
],
"date": "June 12, 2023",
"startDate": "2023-06-12",
"startDateAndTime": "12:00PM UTC",
"endDate": "",
"to": "https://naughty-antennae.org/",
"abstract": "Mollitia exercitationem voluptatem nesciunt. Ut sit pariatur expedita cum. Veniam autem voluptatum reprehenderit inventore."
},
{
"types": [
"Talks"
],
"title": "aut recusandae fugiat in",
"image": "https://via.placeholder.com/512x512/f41bfe/c4416a.jpg?text=doloribus%20cumque%20deleniti",
"location": "YouTube",
"speaker": "Wade Denesik",
"regions": [
"Online"
],
"date": "June 9, 2023",
"startDate": "2023-06-09",
"startDateAndTime": null,
"endDate": "",
"to": "https://well-lit-solicitor.info/",
"abstract": "Eius alias adipisci officia ab architecto nostrum ad. Atque modi culpa quibusdam veniam iure eius. Et magni voluptatibus ullam dolore asperiores."
},
{
"types": [
"Talks"
],
"title": "illo eaque veritatis delectus numquam velit provident quos voluptate tenetur itaque fugiat omnis suscipit doloremque tempora pariatur suscipit nesciunt quaerat",
"image": "https://via.placeholder.com/512x512/8b41a7/d9410a.png?text=assumenda%20veritatis%20odio",
"location": "YouTube",
"speaker": "Tabitha Funk",
"regions": [
"Online"
],
"date": "June 2, 2023",
"startDate": "2023-06-02",
"startDateAndTime": null,
"endDate": "",
"to": "https://babyish-appendix.net",
"abstract": "Qui vitae minus enim incidunt ipsam delectus voluptate eum. Molestias recusandae ipsam. Dolorem aut quam."
},
{
"types": [
"Open Source"
],
"title": "minus assumenda architecto consequuntur",
"image": "https://via.placeholder.com/512x512/e51517/4a6f5b.gif?text=repellat%20quo%20quaerat",
"location": "Virtual",
"speaker": "Caroline Feil",
"regions": [
"Online"
],
"date": "June 1, 2023",
"startDate": "2023-06-01",
"startDateAndTime": "3:00PM UTC",
"endDate": "",
"to": "https://digital-pseudocode.org/",
"abstract": "Rem sed odio ex consequuntur rerum voluptatum porro. Reprehenderit consectetur ab optio eum non quo itaque quia. Doloribus minus reprehenderit reiciendis repellat quas."
},
{
"types": [
"Open Source"
],
"title": "odit voluptatibus adipisci iusto dolor cupiditate magnam vero voluptates nisi amet quod pariatur vero alias possimus id",
"image": "https://via.placeholder.com/512x512/be3558/e34b51.jpg?text=amet%20unde%20assumenda",
"location": "Virtual",
"speaker": "Toni Schowalter",
"regions": [
"Online"
],
"date": "May 22, 2023",
"startDate": "2023-05-22",
"startDateAndTime": "5:00PM UTC",
"endDate": "",
"to": "https://brilliant-yawl.biz",
"abstract": "Quibusdam iusto adipisci saepe eveniet repudiandae beatae. Corporis doloremque neque ex. Dicta sed magnam corporis."
}
]

View File

@ -0,0 +1,72 @@
[
{
"date": "June 16, 2023",
"startDate": "2023-06-16",
"endDate": "",
"image": "https://via.placeholder.com/512x768/c9b86d/5ecccf.jpeg?text=asperiores%20labore%20velit",
"institution": "University of Waterloo",
"location": "YouTube",
"speaker": "Hubert Nitzsche",
"title": "dignissimos veritatis laborum accusantium distinctio"
},
{
"date": "June 9, 2023",
"startDate": "2023-06-09",
"endDate": "",
"image": "https://via.placeholder.com/512x768/f1165c/a49fec.jpeg?text=fugiat%20deserunt%20soluta",
"institution": "Google Quantum AI",
"location": "YouTube",
"speaker": "Stephanie Pfeffer-Flatley",
"title": "sapiente quia voluptates laborum quisquam debitis atque omnis saepe laudantium quia repellendus nam officiis placeat"
},
{
"date": "June 2, 2023",
"startDate": "2023-06-02",
"endDate": "",
"image": "https://via.placeholder.com/512x768/a3f9ea/de93fb.webp?text=aliquam%20velit%20eligendi",
"institution": "",
"location": "YouTube",
"speaker": "June Luettgen",
"title": "praesentium expedita quibusdam repudiandae cupiditate"
},
{
"date": "May 19, 2023",
"startDate": "2023-05-19",
"endDate": "",
"image": "https://via.placeholder.com/512x768/bcfc10/5cae52.jpg?text=voluptatum%20totam%20omnis",
"institution": "Johns Hopkins",
"location": "YouTube",
"speaker": "Eduardo Miller MD",
"title": "sapiente sunt"
},
{
"date": "May 12, 2023",
"startDate": "2023-05-12",
"endDate": "",
"image": "https://via.placeholder.com/512x768/3ad457/f87ab3.jpeg?text=consequuntur%20harum%20inventore",
"institution": "The University of Edinburgh",
"location": "YouTube",
"speaker": "Sarah Olson",
"title": "provident praesentium sit placeat eius sit cupiditate ducimus inventore architecto facere ipsum eum voluptatum explicabo illo"
},
{
"date": "April 28, 2023",
"startDate": "2023-04-28",
"endDate": "",
"image": "https://via.placeholder.com/512x768/e0cdeb/adced2.jpeg?text=impedit%20perferendis%20a",
"institution": "Université de Sherbrooke",
"location": "YouTube",
"speaker": "Jackie Donnelly",
"title": "ratione maiores nisi"
},
{
"date": "April 21, 2023",
"startDate": "2023-04-21",
"endDate": "",
"image": "https://via.placeholder.com/512x768/d7c84f/f3f7bf.webp?text=libero%20quisquam%20cum",
"institution": "Duke University",
"location": "YouTube",
"speaker": "Dr. Ellen Mayert",
"title": "porro quaerat adipisci minus officia ipsum illum omnis nulla cum aperiam fuga vero esse at molestiae molestias tenetur"
}
]

View File

@ -0,0 +1,364 @@
[
{
"types": [
"Talks"
],
"title": "molestiae et vero maxime occaecati officia explicabo velit voluptates libero corrupti quisquam a consequuntur ut debitis dolorem",
"image": "https://via.placeholder.com/512x512/d3210f/a68fb7.webp?text=ut%20error%20ipsam",
"location": "YouTube",
"speaker": "Beth Marks",
"regions": [
"Online"
],
"date": "June 23, 2023",
"startDate": "2023-06-23",
"startDateAndTime": null,
"endDate": "",
"to": "https://imperturbable-hyphenation.info/",
"abstract": "Accusamus eos amet animi saepe quidem fugit veritatis ex eveniet. Consectetur saepe assumenda. Esse id unde quibusdam consequuntur minima aperiam dicta amet rem."
},
{
"types": [
"Open Source"
],
"title": "necessitatibus magni rem consequuntur modi veniam quaerat",
"image": "https://via.placeholder.com/512x512/ef4ee4/bd27c7.jpg?text=ipsam%20fuga%20ea",
"location": "Virtual",
"speaker": "Mildred Johns",
"regions": [
"Online"
],
"date": "June 26, 2023",
"startDate": "2023-06-26",
"startDateAndTime": "5:00PM UTC",
"endDate": "",
"to": "https://unaware-oasis.biz",
"abstract": "Quibusdam dolores tenetur exercitationem quis. Fuga dolores accusantium laboriosam rerum dolor et. Est voluptate quaerat."
},
{
"types": [
"Industry Event"
],
"title": "iste omnis veniam itaque dolor",
"image": "https://via.placeholder.com/512x512/9a40fa/0f63e7.jpeg?text=et%20accusantium%20dicta",
"location": "Munich, Germany",
"speaker": "Tracey Parker",
"regions": [
"Europe"
],
"date": "June 27-30, 2023",
"startDate": "2023-06-27",
"startDateAndTime": null,
"endDate": "2023-06-30",
"to": "https://dreary-rap.name/",
"abstract": "Ratione eos rem. Quam reprehenderit debitis non. Laborum iure accusantium eius."
},
{
"types": [
"Hackathon"
],
"title": "et non fugiat nam repellat reprehenderit officiis eaque laborum vitae",
"image": "https://via.placeholder.com/512x512/7c1dff/fac0f9.webp?text=dolore%20ducimus%20culpa",
"location": "Munich, Germany",
"speaker": "Abel Altenwerth",
"regions": [
"Europe"
],
"date": "June 27-28, 2023",
"startDate": "2023-06-27",
"startDateAndTime": null,
"endDate": "2023-06-28",
"to": "https://peaceful-mother-in-law.biz/",
"abstract": "Vero sequi eius voluptatem cupiditate recusandae tempore voluptas qui. Molestias fugiat placeat id nesciunt corporis. Sint aliquam pariatur impedit vel."
},
{
"types": [
"Open Source"
],
"title": "eaque aliquam blanditiis quas quibusdam cupiditate magnam quod soluta architecto ex",
"image": "https://via.placeholder.com/512x512/0bfdce/754aeb.jpg?text=aliquam%20distinctio%20nostrum",
"location": "Virtual",
"speaker": "Floyd Jacobson",
"regions": [
"Online"
],
"date": "June 29, 2023",
"startDate": "2023-06-29",
"startDateAndTime": "3:00PM UTC",
"endDate": "",
"to": "https://prize-fitness.com/",
"abstract": "Veritatis soluta fugiat eveniet dolore minus fuga quaerat quas dolore. Nihil in hic. Sapiente provident similique laboriosam."
},
{
"types": [
"Talks"
],
"title": "saepe aut et exercitationem magni beatae dicta sint error neque non laudantium dicta excepturi reiciendis molestias dolores",
"image": "https://via.placeholder.com/512x512/abe6ca/eedd67.png?text=vitae%20ducimus%20eligendi",
"location": "YouTube",
"speaker": "Dominic Ferry",
"regions": [
"Online"
],
"date": "June 30, 2023",
"startDate": "2023-06-30",
"startDateAndTime": null,
"endDate": "",
"to": "https://lumbering-skywalk.org/",
"abstract": "Occaecati velit necessitatibus sit esse maiores nostrum eveniet. Itaque exercitationem aperiam reprehenderit impedit error eum nisi possimus eum. Impedit eos quia distinctio deleniti iusto distinctio minima cupiditate in."
},
{
"types": [
"Workshop"
],
"title": "tempora ipsam unde id",
"image": "https://via.placeholder.com/512x512/ad7bf4/67bb2f.webp?text=sequi%20nemo%20adipisci",
"location": "Virtual",
"speaker": "Jay Waters",
"regions": [
"Online"
],
"date": "July 6, 2023",
"startDate": "2023-07-06",
"startDateAndTime": null,
"endDate": "",
"to": "https://unhealthy-seller.org/",
"abstract": "Soluta deserunt ipsum veniam odit at expedita possimus. Nulla praesentium maiores. Quaerat ea rem quo id consequatur repellat voluptates itaque itaque."
},
{
"types": [
"Talks"
],
"title": "nostrum veniam omnis sequi tempore eum sequi dolorem impedit facere quos commodi in expedita possimus",
"image": "https://via.placeholder.com/512x512/cc55be/ccc7c8.gif?text=maxime%20perspiciatis%20quae",
"location": "YouTube",
"speaker": "Edith Effertz",
"regions": [
"Online"
],
"date": "July 7, 2023",
"startDate": "2023-07-07",
"startDateAndTime": null,
"endDate": "",
"to": "https://long-term-inventory.com/",
"abstract": "Nesciunt tempore natus. Officiis atque fuga error illo optio iste architecto. Labore nostrum totam."
},
{
"types": [
"Open Source"
],
"title": "suscipit rerum quam sed eos molestiae exercitationem sint enim quam ipsa fugiat sapiente",
"image": "https://via.placeholder.com/512x512/9c76aa/7dddbb.png?text=ratione%20ex%20incidunt",
"location": "Virtual",
"speaker": "Bennie Johnston PhD",
"regions": [
"Online"
],
"date": "July 10, 2023",
"startDate": "2023-07-10",
"startDateAndTime": "12:00PM UTC",
"endDate": "",
"to": "https://hefty-wave.com",
"abstract": "Quasi voluptas similique sunt excepturi placeat maxime modi tempore quod. Numquam sunt animi quia suscipit officiis modi nemo similique. Dignissimos id delectus optio iusto."
},
{
"types": [
"Open Source"
],
"title": "vel et earum quaerat aliquid soluta quam quae at libero sint culpa",
"image": "https://via.placeholder.com/512x512/7ee2b6/e2e5ea.jpeg?text=iste%20asperiores%20itaque",
"location": "Virtual",
"speaker": "Geoffrey Purdy",
"regions": [
"Online"
],
"date": "July 13, 2023",
"startDate": "2023-07-13",
"startDateAndTime": "3:00PM UTC",
"endDate": "",
"to": "https://measly-primary.org",
"abstract": "Iste minus facere ad. Vero voluptatibus eligendi rerum ea odit tenetur modi saepe. Possimus labore mollitia doloribus distinctio eligendi enim sunt temporibus necessitatibus."
},
{
"types": [
"Talks"
],
"title": "ipsa nesciunt non",
"image": "https://via.placeholder.com/512x512/d36fcb/6d3ea7.jpg?text=facilis%20perferendis%20optio",
"location": "YouTube",
"speaker": "Calvin Reinger",
"regions": [
"Online"
],
"date": "July 14, 2023",
"startDate": "2023-07-14",
"startDateAndTime": null,
"endDate": "",
"to": "https://stale-strike.net",
"abstract": "Explicabo voluptatibus molestiae aperiam ab. Beatae fugit minus quam ratione autem magni repellat repellat. Facilis vitae reprehenderit eos libero dolor consequuntur animi eligendi expedita."
},
{
"types": [
"Challenge",
"Talks",
"Workshop"
],
"title": "cum unde unde alias fugiat harum omnis veniam quaerat veniam voluptas ipsa dicta repudiandae minima eius",
"image": "https://via.placeholder.com/512x512/fc07fa/d6eaca.webp?text=voluptatem%20ad%20ab",
"location": "Virtual",
"speaker": "Gilbert DuBuque",
"regions": [
"Online"
],
"date": "July 17-28, 2023",
"startDate": "2023-07-17",
"startDateAndTime": null,
"endDate": "2023-07-28",
"to": "https://puzzled-worth.biz",
"abstract": "Inventore accusamus provident. Laudantium veritatis possimus suscipit vero quos eum eveniet cupiditate eligendi. Eos est distinctio quia totam sapiente unde commodi."
},
{
"types": [
"Talks"
],
"title": "soluta iste fugit qui animi ipsa quos quibusdam",
"image": "https://via.placeholder.com/512x512/07f0ae/48d86e.png?text=enim%20illo%20magni",
"location": "YouTube",
"speaker": "Miss Beulah Cole",
"regions": [
"Online"
],
"date": "July 21, 2023",
"startDate": "2023-07-21",
"startDateAndTime": null,
"endDate": "",
"to": "https://animated-boyfriend.biz/",
"abstract": "Soluta natus magnam minus enim alias a voluptatibus. Itaque dolor alias numquam cumque mollitia error. Facere tempore maxime maxime ducimus earum aperiam et a."
},
{
"types": [
"Open Source"
],
"title": "ducimus dolor fugiat id optio qui",
"image": "https://via.placeholder.com/512x512/f37069/dbb906.gif?text=laudantium%20sed%20accusantium",
"location": "Virtual",
"speaker": "Theresa Bode MD",
"regions": [
"Online"
],
"date": "July 24, 2023",
"startDate": "2023-07-24",
"startDateAndTime": "5:00PM UTC",
"endDate": "",
"to": "https://thin-clue.net/",
"abstract": "Eligendi maxime vitae eum. Eaque perspiciatis temporibus excepturi magnam suscipit aut soluta inventore. Quisquam sapiente fuga animi."
},
{
"types": [
"Open Source"
],
"title": "reprehenderit odio",
"image": "https://via.placeholder.com/512x512/d4ffbe/7fc6c8.jpg?text=esse%20ut%20repudiandae",
"location": "Virtual",
"speaker": "Bradford McKenzie",
"regions": [
"Online"
],
"date": "July 27, 2023",
"startDate": "2023-07-27",
"startDateAndTime": "3:00PM UTC",
"endDate": "",
"to": "https://envious-guitarist.name",
"abstract": "Minus quod enim eum doloremque quidem culpa commodi necessitatibus. Suscipit optio iusto ullam. In harum tenetur ratione exercitationem assumenda aut nulla adipisci pariatur."
},
{
"types": [
"Talks"
],
"title": "reprehenderit minus iure commodi",
"image": "https://via.placeholder.com/512x512/b389fd/5d25d5.gif?text=eveniet%20itaque%20consequuntur",
"location": "YouTube",
"speaker": "Dawn Herman",
"regions": [
"Online"
],
"date": "July 28, 2023",
"startDate": "2023-07-28",
"startDateAndTime": null,
"endDate": "",
"to": "https://sticky-riot.org/",
"abstract": "Provident temporibus accusantium nulla doloribus sunt natus. Repellat quam porro commodi repellendus distinctio accusamus. Excepturi id incidunt."
},
{
"types": [
"Talks"
],
"title": "molestiae aliquam rerum rerum deserunt maiores nobis minima amet",
"image": "https://via.placeholder.com/512x512/c6d28d/a22caa.png?text=consequuntur%20quae%20labore",
"location": "YouTube",
"speaker": "Jermaine Rowe-Barrows",
"regions": [
"Online"
],
"date": "August 4, 2023",
"startDate": "2023-08-04",
"startDateAndTime": null,
"endDate": "",
"to": "https://oblong-tummy.com/",
"abstract": "Quam occaecati ea dolorum eaque magnam. Earum amet dolorem quod tenetur iure natus assumenda cupiditate architecto. Facilis aliquid eaque."
},
{
"types": [
"Open Source"
],
"title": "aliquid rerum ex asperiores error quasi eius dicta porro cum iusto sapiente iste dolore dolorum totam",
"image": "https://via.placeholder.com/512x512/b58589/f7bc21.webp?text=perferendis%20nesciunt%20sit",
"location": "Virtual",
"speaker": "Bobbie Brown",
"regions": [
"Online"
],
"date": "August 10, 2023",
"startDate": "2023-08-10",
"startDateAndTime": "3:00PM UTC",
"endDate": "",
"to": "https://ample-classification.biz/",
"abstract": "Quia hic aut optio distinctio. Ducimus dolorum aperiam neque perspiciatis quam consectetur facere error. Nesciunt asperiores at porro fuga ad quo."
},
{
"types": [
"Talks"
],
"title": "facere consectetur perspiciatis vero dolorum unde vero blanditiis quos quas at",
"image": "https://via.placeholder.com/512x512/050a5d/fb295b.gif?text=sunt%20pariatur%20impedit",
"location": "YouTube",
"speaker": "Dr. Alfredo Pfannerstill",
"regions": [
"Online"
],
"date": "August 11, 2023",
"startDate": "2023-08-11",
"startDateAndTime": null,
"endDate": "",
"to": "https://flowery-authority.biz",
"abstract": "Ducimus expedita magnam. Explicabo iste natus perspiciatis ex aperiam quidem. Dolor provident ullam similique expedita assumenda repudiandae voluptas excepturi aliquam."
},
{
"types": [
"Open Source"
],
"title": "facere facere doloremque iure ipsum possimus possimus",
"image": "https://via.placeholder.com/512x512/acbe67/0ea32a.jpg?text=exercitationem%20quo%20ex",
"location": "Virtual",
"speaker": "Ms. Rosemary Lemke",
"regions": [
"Online"
],
"date": "August 14, 2023",
"startDate": "2023-08-14",
"startDateAndTime": "12:00PM UTC",
"endDate": "",
"to": "https://brief-matchmaker.info",
"abstract": "Velit deleniti numquam nam consectetur illo ipsum. Nostrum quaerat qui alias. Atque blanditiis ad quis saepe deleniti."
}
]

View File

@ -0,0 +1,52 @@
[
{
"date": "June 23, 2023",
"startDate": "2023-06-23",
"endDate": "",
"image": "https://via.placeholder.com/512x768/b99b01/8a0237.png?text=officiis%20error%20occaecati",
"institution": "University of Maryland ",
"location": "YouTube",
"speaker": "Clarence Dibbert",
"title": "voluptates labore tempore numquam cupiditate quos ad quisquam nisi itaque"
},
{
"date": "June 30, 2023",
"startDate": "2023-06-30",
"endDate": "",
"image": "https://via.placeholder.com/512x768/555ddd/da82c3.gif?text=eos%20excepturi%20doloremque",
"institution": "University of Maryland",
"location": "YouTube",
"speaker": "Fredrick Wisozk Jr.",
"title": "pariatur consequuntur ullam similique dolore doloribus asperiores quos doloribus impedit ratione"
},
{
"date": "July 7, 2023",
"startDate": "2023-07-07",
"endDate": "",
"image": "https://via.placeholder.com/512x768/0368a1/d4b9b2.png?text=corporis%20doloremque%20aut",
"institution": "University of Waterloo",
"location": "YouTube",
"speaker": "Kayla Swaniawski",
"title": "totam iusto possimus sint inventore eius beatae libero"
},
{
"date": "July 14, 2023",
"startDate": "2023-07-14",
"endDate": "",
"image": "https://via.placeholder.com/512x768/bd140f/ee0eba.gif?text=sunt%20dolorum%20dolor",
"institution": "Deloitte",
"location": "YouTube",
"speaker": "Carlton Kling II",
"title": "aperiam quibusdam enim odit"
},
{
"date": "July 21, 2023",
"startDate": "2023-07-21",
"endDate": "",
"image": "https://via.placeholder.com/512x768/a6ff47/a0ebeb.jpeg?text=debitis%20ut%20magnam",
"institution": "University of Cambridge",
"location": "YouTube",
"speaker": "Melody Hintz",
"title": "cupiditate qui debitis ducimus soluta quia quam eveniet dolore vitae"
}
]

View File

@ -0,0 +1,41 @@
import fs from "fs/promises";
import path from "path";
const mockBasePath =
process.env.MOCK_BASE_PATH || path.join(__dirname, "content");
const contentBasePath = path.join(__dirname, "..", "..", "content");
export async function generateMocks() {
await copyFiles(mockBasePath, contentBasePath);
}
/**
* This method copies all the files from sourceBasePath to targetBasePath
*
* @param sourceBasePath
* @param targetBasePath
*/
async function copyFiles(
sourceBasePath: string,
targetBasePath: string
): Promise<void> {
const dirContent = await fs.readdir(sourceBasePath, { withFileTypes: true });
for (const content of dirContent) {
const currentTargetPath = path.join(targetBasePath, content.name);
if (content.isFile()) {
const file = path.join(sourceBasePath, content.name);
await fs.copyFile(file, currentTargetPath);
} else {
try {
await fs.access(currentTargetPath);
} catch (e) {
await fs.mkdir(currentTargetPath);
}
const currentBasePath = path.join(sourceBasePath, content.name);
await copyFiles(currentBasePath, currentTargetPath);
}
}
}

View File

@ -1,9 +1,11 @@
import fetchEvents from "./hooks/update-events";
import fetchAdvocates from "./hooks/update-advocates";
import fetchEcosystemMembers from "./hooks/update-ecosystem";
import { generateMocks } from "./hooks/mock/mock-service";
import pkg from "./package.json";
const { AIRTABLE_API_KEY, GENERATE_CONTENT, NODE_ENV, SITE_URL } = process.env;
const { AIRTABLE_API_KEY, GENERATE_CONTENT, NODE_ENV, SITE_URL, MOCK_CONTENT } =
process.env;
const IS_PRODUCTION = NODE_ENV === "production";
// https://nuxt.com/docs/api/configuration/nuxt-config
@ -72,6 +74,15 @@ export default defineNuxtConfig({
* @returns A promise that resolves when the content has been generated
*/
async function generateContent() {
if (MOCK_CONTENT && MOCK_CONTENT === "true") {
// eslint-disable-next-line no-console
console.info("Mocking content...");
await generateMocks();
// eslint-disable-next-line no-console
console.info("Content generated...");
return;
}
// eslint-disable-next-line no-console
console.info("Generating the ecosystem content...");
await fetchEcosystemMembers("./content/ecosystem");

28
package-lock.json generated
View File

@ -24,6 +24,7 @@
"@vitest/coverage-c8": "^0.32.2",
"airtable": "^0.12.1",
"axios": "^1.4.0",
"cross-env": "^7.0.3",
"eslint": "^8.42.0",
"eslint-config-prettier": "^8.6.0",
"eslint-plugin-prettier": "^4.2.1",
@ -4728,6 +4729,24 @@
"integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==",
"dev": true
},
"node_modules/cross-env": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz",
"integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==",
"dev": true,
"dependencies": {
"cross-spawn": "^7.0.1"
},
"bin": {
"cross-env": "src/bin/cross-env.js",
"cross-env-shell": "src/bin/cross-env-shell.js"
},
"engines": {
"node": ">=10.14",
"npm": ">=6",
"yarn": ">=1"
}
},
"node_modules/cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
@ -19116,6 +19135,15 @@
"integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==",
"dev": true
},
"cross-env": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz",
"integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==",
"dev": true,
"requires": {
"cross-spawn": "^7.0.1"
}
},
"cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",

View File

@ -9,7 +9,7 @@
},
"scripts": {
"build": "nuxt build",
"dev": "nuxt dev",
"dev": "cross-env MOCK_CONTENT=true GENERATE_CONTENT=true nuxt dev",
"format": "npm run format:eslint && npm run format:prettier && npm run format:stylelint",
"format:eslint": "npm run lint:eslint -- --fix",
"format:prettier": "prettier . --ignore-path .gitignore --write",
@ -39,6 +39,7 @@
"@vitest/coverage-c8": "^0.32.2",
"airtable": "^0.12.1",
"axios": "^1.4.0",
"cross-env": "^7.0.3",
"eslint": "^8.42.0",
"eslint-config-prettier": "^8.6.0",
"eslint-plugin-prettier": "^4.2.1",