Coder Social home page Coder Social logo

matthewbub / calendar-widgets Goto Github PK

View Code? Open in Web Editor NEW
4.0 4.0 14.0 8.55 MB

Craft beautifully robust date components in React.

Home Page: http://calendar-widgets.com/

License: MIT License

JavaScript 9.99% CSS 13.89% TypeScript 73.33% HTML 2.47% MDX 0.32%
calendar calendar-widget component-library javascript open-source react typescript widgets

calendar-widgets's People

Contributors

1bhavyasingh1 avatar 777prabhjot avatar ankan-cyber avatar bajibpathan avatar bytemerger avatar cfkim avatar codemerything avatar dependabot[bot] avatar giri-madhan avatar matthewbub avatar ngoakor12 avatar samantatarun avatar samezzz avatar skyash101 avatar subham5401 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

calendar-widgets's Issues

new helper utilities - `getDefaultLocale` and `isLocaleSupported`

For the existing helper utilities, it's been decided that we could benefit from a few more Helper utilities -

Goals

Misc goals

  • Any method that uses locales or is hard coding a default locale should use getDefaultLocale
  • Fix any tests that may break as a result of this change

rebrand to calendar-widgets

After a year of operating under the generalized name WhileThisCompiles, i've decided to rebrand to a more professional appearance - Calendar Widgets! The rebrand is more than just a name change, I'm planning on investing a fair amount of my time and resources into the development of this SDK and API. I'm also planning a UI library which is intended to be the core product offering from the calendar-widgets package.

Changes

  • BREAKING CHANGE The website and API are now hosted on https://www.calendar-widgets.com
  • The SDK is going to be further developed under the scope calendar-widgets. The scope @whilethiscompiles/calendar is depreciated but will continue to exist on NPM as is.

Tasks

  • Update DNS records
  • Publish calendar-widgets
  • Update docs to point towards calendar-widgets
  • Update repo to calendar-widgets

write tests with Mocha & Chai to ensure SDK catches leap years

This should be a straightforward and simple task. We can build from what exists in the /lib/calendar-tests directory.

I would like to ensure that both future and past leap years are accounted for, as this is the most vital part we need to make sure is right.

document liftable utilities

utilities that are tested and ready for use pending documentation:

  • formatDate
  • getCalendarYear
  • getDaysInMonth
  • isValidDay
  • isValidMonth
  • isValidYear
  • listDaysInMonths

add a contributing.md file for the calendar-widget package

Some things that would be helpful to include:

  • pnpm is used/needed to contribute
  • getting setup on your machine(which commands to run in which order)
  • and other general guidelines on contributing

side note: nice looking project by the way, I like the idea list , I was also working on a somewhat similar package along these lines because of my frustrations in working with the date and times

Ignore the `src` directory in the `.npmignore` file

This change proposes to add the src directory to the .npmignore file within the calendar-widgets directory, to exclude it from being published to npm. The src directory contains TypeScript files that are not needed for the end-user and can cause issues if published to npm.

remove dev scripts in root directory

The following scripts do not function as intended. We should remove them from the primary package.json

dev:cleaninstall:calendar-tests
dev:cleaninstall:developer
dev:cleaninstall

Create a CodeSandbox example using the SDK

We could use the same example used in the website.

It would be awesome if we could get a link to the Code Sandbox included in the Primary README for the this repository. I was able to confirm the latest version of the SDK is available in the NPM registry from within CodeSandbox so there should be no issues there

Simplify the `getCalendarYear` method output

This proposal suggests simplifying the output of the getCalendarYear method by replacing the current output with a more concise one.

Currently, the getCalendarYear method returns an object representing a calendar year with the number of days and a list of days for each month. The output includes nested objects with the month name as the key and an object containing the count and collection as the value. This output structure can be complex and challenging to work with for users who want to extract the data.

To simplify the output, this proposal suggests changing the output to a flat object that includes the month name as the key and the list of days as the value. This output structure will be more straightforward and easier to work with for users who want to extract the data.

remove the `start` script from Calendar-Widgets package

This is confusing and causing unnecessary difficulties for folks getting started locally. The start script within the /workspaces/calendar-widgets/package.json file does nothing at all and should be removed from the project. We only need the build and lint commands.

minify build output to reduce bundle size

This ticket is available to anyone who wants it 👋 Its not my highest priority but i image it would be fun. We need to produce a minified build output to reduce the bundle size more than it already is. (Its growing)

https://github.com/rollup/plugins lists terser as the package of choice that generates a minified output bundle.

Goals

  • produce a minified build output to reduce bundle size (We've gotta be lighting fast ⚡)

provide support for various locales

We were originally using ChatGPT to translate languages, but I'm not 100% confident in it that. PRs are welcome here 👋 This will ultimately be outsourced when we reach a stable release

Supported so far

  • af-ZA
  • sq-AL
  • am-ET
  • ar-AE
  • ar-BH
  • ar-DJ
  • ar-DZ
  • ar-EG
  • ar-ER
  • ar-IL
  • es-ES
  • zh-CN
  • en-GB
  • ar-SA
  • ru-RU
  • pt-BR
  • fr-FR
  • ja-JP
  • de-DE
  • bn-IN
  • gu-IN
  • [ ]
    Planned
const roadmap = {
 'ar-IQ': 'Arabic (Iraq)',
  'ar-JO': 'Arabic (Jordan)',
  'ar-KM': 'Arabic (Comoros)',
  'ar-KW': 'Arabic (Kuwait)',
  'ar-LB': 'Arabic (Lebanon)',
  'ar-LY': 'Arabic (Libya)',
  'ar-MA': 'Arabic (Morocco)',
  'ar-MR': 'Arabic (Mauritania)',
  'ar-OM': 'Arabic (Oman)',
  'ar-PS': 'Arabic (Palestinian Territories)',
  'ar-QA': 'Arabic (Qatar)',
  'ar-SD': 'Arabic (Sudan)',
  'ar-SO': 'Arabic (Somalia)',
  'ar-SS': 'Arabic (South Sudan)',
  'ar-SY': 'Arabic (Syria)',
  'ar-TD': 'Arabic (Chad)',
  'ar-TN': 'Arabic (Tunisia)',
  'ar-YE': 'Arabic (Yemen)',
  'hy-AM': 'Armenian (Armenia)',
  'as-IN': 'Assamese (India)',
  'av-RU': 'Avaric (Russia)',
  'ae': 'Avestan (world)',
  'awa-IN': 'Awadhi (India)',
  'ay-BO': 'Aymara (Bolivia)',
  'ay-PE': 'Aymara (Peru)',
  'az-AZ': 'Azerbaijani (Azerbaijan)',
  'az-Cyrl-AZ': 'Azerbaijani (Cyrillic, Azerbaijan)',
  'az-Latn-AZ': 'Azerbaijani (Latin, Azerbaijan)',
  'ba-RU': 'Bashkir (Russia)',
  'bm-ML': 'Bambara (Mali)',
  'be-BY': 'Belarusian (Belarus)',
  'bn-BD': 'Bengali (Bangladesh)',
  'bh-IN': 'Bihari (India)',
  'bi-VU': 'Bislama (Vanuatu)',
  'bs-BA': 'Bosnian (Bosnia & Herzegovina)',
  'bs-Cyrl-BA': 'Bosnian (Cyrillic, Bosnia & Herzegovina)',
  'bs-Latn-BA': 'Bosnian (Latin, Bosnia & Herzegovina)',
  'br-FR': 'Breton (France)',
  'bg-BG': 'Bulgarian (Bulgaria)',
  'my-MM': 'Burmese (Myanmar (Burma))',
  'ca-AD': 'Catalan (Andorra)',
  'ca-ES': 'Catalan (Spain)',
  'ca-FR': 'Catalan (France)',
  'ca-IT': 'Catalan (Italy)',
  'ch-GU': 'Chamorro (Guam)',
  'ce-RU': 'Chechen (Russia)',
  'chr-US': 'Cherokee (United States)',
  'ny-MW': 'Chichewa (Malawi)',
  'zh-HK': 'Chinese (Traditional, Hong Kong SAR)',
  'zh-MO': 'Chinese (Traditional, Macao SAR)',
  'zh-TW': 'Chinese (Traditional, Taiwan)',
  'co-FR': 'Corsican (France)',
  'cr-CA': 'Cree (Canada)',
  'hr-HR': 'Croatian (Croatia)',
  'hr-Latn-HR': 'Croatian (Latin, Croatia)',
  'cs-CZ': 'Czech (Czech Republic)',
  'da-DK': 'Danish (Denmark)',
  'da-GL': 'Danish (Greenland)',
  'dv-MV': 'Divehi (Maldives)',
  'nl-BE': 'Dutch (Belgium)',
  'nl-NL': 'Dutch (Netherlands)',
  'dz-BT': 'Dzongkha (Bhutan)',
  'en-AU': 'English (Australia)',
  'en-CA': 'English (Canada)',
  'en-IN': 'English (India)',
  'en-IE': 'English (Ireland)',
  'en-JM': 'English (Jamaica)',
  'en-MY': 'English (Malaysia)',
  'en-NZ': 'English (New Zealand)',
  'en-PH': 'English (Philippines)',
  'en-SG': 'English (Singapore)',
  'en-ZA': 'English (South Africa)',
  'en-TT': 'English (Trinidad & Tobago)',
  'eo': 'Esperanto (world)',
  'et-EE': 'Estonian (Estonia)',
  'ee-GH': 'Ewe (Ghana)',
  'ee-TG': 'Ewe (Togo)',
  'fo-DK': 'Faroese (Denmark)',
  'fo-FO': 'Faroese (Faroe Islands)',
  'fj-FJ': 'Fijian (Fiji)',
  'fi-FI': 'Finnish (Finland)',
  'fr-BE': 'French (Belgium)',
  'fr-CA': 'French (Canada)',
  'fr-CH': 'French (Switzerland)',
  'fr-LU': 'French (Luxembourg)',
  'fr-MC': 'French (Monaco)',
  'fr-VU': 'French (Vanuatu)',
  'ff-CM': 'Fulah (Cameroon)',
  'ff-GN': 'Fulah (Guinea)',
  'ff-MR': 'Fulah (Mauritania)',
  'ff-SN': 'Fulah (Senegal)',
  'gl-ES': 'Galician (Spain)',
  'ka-GE': 'Georgian (Georgia)',
  'de-AT': 'German (Austria)',
  'de-BE': 'German (Belgium)',
  'de-CH': 'German (Switzerland)',
  'de-LU': 'German (Luxembourg)',
  'de-LI': 'German (Liechtenstein)',
  'el-CY': 'Greek (Cyprus)',
  'el-GR': 'Greek (Greece)',
  'gn-PY': 'Guarani (Paraguay)',
  'ht-HT': 'Haitian Creole (Haiti)',
  'ha-GH': 'Hausa (Ghana)',
  'ha-NE': 'Hausa (Niger)',
  'ha-NG': 'Hausa (Nigeria)',
  'haw-US': 'Hawaiian (United States)',
  'he-IL': 'Hebrew (Israel)',
  'hi-IN': 'Hindi (India)',
  'hil-PH': 'Hiligaynon (Philippines)',
  'hu-HU': 'Hungarian (Hungary)',
  'is-IS': 'Icelandic (Iceland)',
  'ig-NG': 'Igbo (Nigeria)',
  'id-ID': 'Indonesian (Indonesia)',
  'ia': 'Interlingua (world)',
  'ie': 'Interlingue (world)',
  'iu-CA': 'Inuktitut (Canada)',
  'iu-Latn-CA': 'Inuktitut (Latin, Canada)',
  'ik-US': 'Inupiaq (United States)',
  'ga-IE': 'Irish (Ireland)',
  'it-CH': 'Italian (Switzerland)',
  'it-IT': 'Italian (Italy)',
  'jv-ID': 'Javanese (Indonesia)',
  'kea-CV': 'Kabuverdianu (Cape Verde)',
  'kl-GL': 'Kalaallisut (Greenland)',
  'kn-IN': 'Kannada (India)',
  'kr-NG': 'Kanuri (Nigeria)',
  'ks-IN': 'Kashmiri (India)',
  'kk-KZ': 'Kazakh (Kazakhstan)',
  'km-KH': 'Khmer (Cambodia)',
  'ki-KE': 'Kikuyu (Kenya)',
  'rw-RW': 'Kinyarwanda (Rwanda)',
  'kv-RU': 'Komi (Russia)',
  'kg-CD': 'Kongo (Democratic Republic of the Congo)',
  'kok-IN': 'Konkani (India)',
  'ko-KR': 'Korean (South Korea)',
  'ku-IQ': 'Kurdish (Iraq)',
  'ku-IR': 'Kurdish (Iran)',
  'ku-TR': 'Kurdish (Turkey)',
  'kj-AO': 'Kwanyama (Angola)',
  'ky-KG': 'Kyrgyz (Kyrgyzstan)',
  'lo-LA': 'Lao (Laos)',
  'la': 'Latin (world)',
  'lv-LV': 'Latvian (Latvia)',
  'li-NL': 'Limburgish (Netherlands)',
  'ln-AO': 'Lingala (Angola)',
  'ln-CD': 'Lingala (Democratic Republic of the Congo)',
  'ln-CF': 'Lingala (Central African Republic)',
  'ln-CG': 'Lingala (Congo - Brazzaville)',
  'lt-LT': 'Lithuanian (Lithuania)',
  'lu-CD': 'Luba-Katanga (Democratic Republic of the Congo)',
  'lb-LU': 'Luxembourgish (Luxembourg)',
  'mk-MK': 'Macedonian (North Macedonia)',
  'mg-MG': 'Malagasy (Madagascar)',
  'ms-BN': 'Malay (Brunei)',
  'ms-MY': 'Malay (Malaysia)',
  'ml-IN': 'Malayalam (India)',
  'mt-MT': 'Maltese (Malta)',
  'gv-IM': 'Manx (Isle of Man)',
  'mi-NZ': 'Maori (New Zealand)',
  'mr-IN': 'Marathi (India)',
  "mh-MH": "Marshallese (Marshall Islands)",
  "mn-MN": "Mongolian (Mongolia)",
  "mn-Mong-CN": "Mongolian (Traditional Mongolian, China)",
  "sr-ME": "Montenegrin (Montenegro)",
  "sr-Latn-ME": "Montenegrin (Latin, Montenegro)",
  "mos-CM": "More (Cameroon)",
  "naq-NA": "Nama (Namibia)",
  "na-NR": "Nauru (Nauru)",
  "nv-US": "Navajo (United States)",
  "ng-NZ": "Ndonga (Namibia)",
  "ne-IN": "Nepali (India)",
  "ne-NP": "Nepali (Nepal)",
  "nl-AW": "Dutch (Aruba)",
  "nl-BQ": "Dutch (Bonaire, Sint Eustatius and Saba)",
  "nl-CW": "Dutch (Curaçao)",
  "nl-SX": "Dutch (Sint Maarten)",
  "nb-NO": "Norwegian Bokmål (Norway)",
  "nn-NO": "Norwegian Nynorsk (Norway)",
  "no-SJ": "Norwegian (Svalbard & Jan Mayen)",
  "no-NO": "Norwegian (Norway)",
  "nqo-GN": "N'ko (Guinea)",
  "oc-FR": "Occitan (France)",
  "oj-CA": "Ojibwa (Canada)",
  "oj-US": "Ojibwa (United States)",
  "cu": "Old Church Slavonic (world)",
  "or-IN": "Oriya (India)",
  "om-ET": "Oromo (Ethiopia)",
  "om-KE": "Oromo (Kenya)",
  "os-RU": "Ossetic (Russia)",
  "os-GE": "Ossetic (Georgia)",
  "pi": "Pāli (world)",
  "ps-AF": "Pashto (Afghanistan)",
  "fa-AF": "Persian (Afghanistan)",
  "fa-IR": "Persian (Iran)",
  "pl-PL": "Polish (Poland)",
  "pt-CV": "Portuguese (Cape Verde)",
  "pt-GW": "Portuguese (Guinea-Bissau)",
  "pt-LU": "Portuguese (Luxembourg)",
  "pt-MO": "Portuguese (Macao SAR)",
  "pt-MZ": "Portuguese (Mozambique)",
  "pt-PT": "Portuguese (Portugal)",
  "pt-ST": "Portuguese (São Tomé & Príncipe)",
  "pt-TL": "Portuguese (Timor-Leste)",
  "pa-IN": "Punjabi (India)",
  "qu-BO": "Quechua (Bolivia)",
  "qu-EC": "Quechua (Ecuador)",
  "qu-PE": "Quechua (Peru)",
  "ro-MD": "Romanian (Moldova)",
  "ro-RO": "Romanian (Romania)",
  "rm-CH": "Romansh (Switzerland)",
  "rn-BI": "Rundi (Burundi)",
  "ru-BY": "Russian (Belarus)",
  "ru-KG": "Russian (Kyrgyzstan)",
  "ru-KZ": "Russian (Kazakhstan)",
  "ru-MD": "Russian (Moldova)",
  "ru-UA": "Russian (Ukraine)",
  "sm-AS": "Samoan (American Samoa)",
  "sm-WS": "Samoan (Samoa)",
  "sg-CF": "Sango (Central African Republic)",
  "sa-IN": "Sanskrit (India)",
  "sat-IN": "Santali (India)",
  "sc-IT": "Sardinian (Italy)",
  "gd": "Scots Gaelic (United Kingdom)",
  "sr-BA": "Serbian (Bosnia & Herzegovina)",
  "sr-Cyrl-BA": "Serbian (Cyrillic, Bosnia & Herzegovina)",
  "sr-Cyrl-ME": "Serbian (Cyrillic, Montenegro)",
  "sr-Cyrl-RS": "Serbian (Cyrillic, Serbia)",
  "sr-Latn-RS": "Serbian (Latin, Serbia)",
  "st-LS": "Sesotho (Lesotho)",
  "st-ZA": "Sesotho (South Africa)",
  "sn-ZW": "Shona (Zimbabwe)",
  "ii-CN": "Sichuan Yi (China)",
  "sd-IN": "Sindhi (India)",
  "si-LK": "Sinhala (Sri Lanka)",
  "sk-SK": "Slovak (Slovakia)",
  "sl-SI": "Slovenian (Slovenia)",
  "so-DJ": "Somali (Djibouti)",
  "so-ET": "Somali (Ethiopia)",
  "so-KE": "Somali (Kenya)",
  "so-SO": "Somali (Somalia)",
  "es-AR": "Spanish (Argentina)",
  "es-BO": "Spanish (Bolivia)",
  "es-CL": "Spanish (Chile)",
  "es-CO": "Spanish (Colombia)",
  "es-CR": "Spanish (Costa Rica)",
  "es-DO": "Spanish (Dominican Republic)",
  "es-EC": "Spanish (Ecuador)",
  "es-GQ": "Spanish (Equatorial Guinea)",
  "es-GT": "Spanish (Guatemala)",
  "es-HN": "Spanish (Honduras)",
  "es-MX": "Spanish (Mexico)",
  "es-NI": "Spanish (Nicaragua)",
  "es-PA": "Spanish (Panama)",
  "es-PE": "Spanish (Peru)",
  "es-PR": "Spanish (Puerto Rico)",
  "es-PY": "Spanish (Paraguay)",
  "es-SV": "Spanish (El Salvador)",
  "es-US": "Spanish (United States)",
  "es-UY": "Spanish (Uruguay)",
  "es-VE": "Spanish (Venezuela)",
  "su-ID": "Sundanese (Indonesia)",
  "sw-KE": "Swahili (Kenya)",
  "sw-TZ": "Swahili (Tanzania)",
  "ss-SZ": "Swati (Eswatini)",
  "sv-AX": "Swedish (Åland Islands)",
  "sv-FI": "Swedish (Finland)",
  "sv-SE": "Swedish (Sweden)",
  "syrc": "Syriac (world)",
  "syrc-SY": "Syriac (Syria)",
  "tg-TJ": "Tajik (Tajikistan)",
  "ta-IN": "Tamil (India)",
  "ta-LK": "Tamil (Sri Lanka)",
  "tt-RU": "Tatar (Russia)",
  "te-IN": "Telugu (India)",
  "th-TH": "Thai (Thailand)",
  "bo-CN": "Tibetan (China)",
  "ti-ER": "Tigrinya (Eritrea)",
  "ti-ET": "Tigrinya (Ethiopia)",
  "to-TO": "Tongan (Tonga)",
  "ts-ZA": "Tsonga (South Africa)",
  "tn-BW": "Tswana (Botswana)",
  "tn-ZA": "Tswana (South Africa)",
  "tr-CY": "Turkish (Cyprus)",
  "tr-TR": "Turkish (Turkey)",
  "tk-TM": "Turkmen (Turkmenistan)",
  "ug-CN": "Uighur (China)",
  "uk-UA": "Ukrainian (Ukraine)",
  "ur-IN": "Urdu (India)",
  "ur-PK": "Urdu (Pakistan)",
  "uz-Arab-AF": "Uzbek (Arabic, Afghanistan)",
  "uz-Cyrl-UZ": "Uzbek (Cyrillic, Uzbekistan)",
  "uz-Latn-UZ": "Uzbek (Latin, Uzbekistan)",
  "ve-ZA": "Venda (South Africa)",
  "vi-VN": "Vietnamese (Vietnam)",
  "vo": "Volapük (world)",
  "wa-BE": "Walloon (Belgium)",
  "cy-GB": "Welsh (United Kingdom)",
  "wo-SN": "Wolof (Senegal)",
  "xh-ZA": "Xhosa (South Africa)",
  "sah-RU": "Yakut (Russia)",
  "yi": "Yiddish (world)",
  "yo-NG": "Yoruba (Nigeria)",
  "za-CN": "Zhuang (China)",
  "zu-ZA": "Zulu (South Africa)"
}

Improve the Error handling in the `getCalendarYear` method

Right now, the getCalendarYear method will return an object if there is an error:

 return {
      error: {
        body: 'The argument passed to `calendar(\'YYYY\')` must be a valid year between 1900 and 2100. You passed ' + year + '.'
      }
    };

This object is inconsistent with the rest of our error handling, This ticket is being created to change the error response. It should probably be something more like:

throw new TypeError('The argument passed to `calendar(\'YYYY\')` must be a valid year between 1900 and 2100.');

This will likely break some tests in the workspaces/tests directory. Please attempt to fix those errors as they arise, if you encounter troubles, feel free to reach out - I'm happy to help 🙂

Calendar should retrieve date between ranges

This would be a change to the SDK in lib/calendar

Feeling a bit undecided towards the formatting we'll want to use. I see 2 options to accept the 2nd argument

Option A

Just add a second arg. This is probably the most straight forward approach when it comes to how a use might want to implement. We'd need to account for error handling in the first arg though, as we're currently checking for a valid 4 digit year.

calendar('YYYY MM DD', 'YYYY MM DD')

Option B

This is my preferred option, but I have a feeling others might have mixed feelings about it. I like this approach because we are free to add an unlimited amount of options without needing to worry about modifying existing args & and their conditions. Test cases are less likely to brake. Would make for a smoother dev experience IMO

calendar(null, {
  startRange: 'YYYY-MM-DD',
  endRange: 'YYYY-MM-DD'
});

Bug: formatDate test is failing

The formatDate test: should format a date in the default locale is failing. It seems to be be picking up my locale(en-ZA) instead of the project's default locale. Seems fixable, if not remove?

See image:
image

CircleCI setup

would be wanting to test the /lib/calendar-tests directory only

more purposeful messages in error handling

I would prefer to have user-feedback before implementing more that what already exists. Basically - I don't want to edit this without additional input. Open to suggestions for enhancement

Create a CodeSandbox example using the API

We could use the same example used in the website.

It would be awesome if we could get a link to the Code Sandbox included in the Primary README for the this repository.

Contributing.md and readme.md suggestions

Here are some suggestions after having gone through both files:

  • I don't believe the "local setup" section under the main readme.md is that important to include in the main page. Moving it to an appropriate section in contributing.md("contributing code" section could be the right place). It also frees up space for other exciting things to be showcased
  • the "prerequisite" section in contributing.md sounds code related and should perhaps be under "contributing code" as well
  • under "contribution code"/"local setup" add installation and running commands for each package and mention which depend on which (this has been a pain, I was only able to run the docs package so far)

This I would like to work on, especially the installation and running part of each section once I get everything working. I can start tomorrow

strengthen eslint rules

should go through each ESLint rule 1 by 1 and see which ones might be applicable to this code base

JSON syntax highlighting

Implementing in the Nextjs directory - /lib/developer/** I know that there are markdown parsers available and that can surely be an option. We should also keep in mind we are only working with JSON content so it's all going to be strings.

Possible solutions:

Where are we applying this syntax highlight?

to 1 component, the <JsonInput />
Docs on this component here: https://mantine.dev/core/json-input/

Screen Shot 2022-06-03 at 7 49 09 PM

API demo endpoint

Right now we are only using the SDK in the demo... even though the API tab is present

Add GitHub Action for Linting, Building, and Testing

Create a GitHub Action that performs the following tasks:

  1. Runs linters in the ./workspaces/calendar-widgets directory using the command pnpm run lint
  2. Builds the code in the ./workspaces/calendar-widgets directory using the command pnpm run build
  3. Runs the test suites in the ./workspaces/tests directory using the command pnpm run test

This action will ensure that the code in the calendar-widgets workspace is properly linted, built, and tested before being deployed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.