Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/khederta/google-calendar-clone
The main goal of this project is to create a simple calendar application similar to Google Calendar.
https://github.com/khederta/google-calendar-clone
date-fns google-calendar reactjs typescript
Last synced: 25 days ago
JSON representation
The main goal of this project is to create a simple calendar application similar to Google Calendar.
- Host: GitHub
- URL: https://github.com/khederta/google-calendar-clone
- Owner: khederTa
- Created: 2024-08-28T12:28:43.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-08-28T14:48:06.000Z (2 months ago)
- Last Synced: 2024-10-11T05:41:21.900Z (25 days ago)
- Topics: date-fns, google-calendar, reactjs, typescript
- Language: TypeScript
- Homepage:
- Size: 39.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Description
The main goal of this project is to create a simple calendar application similar to Google Calendar. While this is a vastly simplified version of Google Calendar it is still quite complicated and will require lots of unique and interesting code. This project should also be written entirely in TypeScript if you are familiar with TypeScript as it is really good practice for most of the React specific TypeScript concepts.# React + TypeScript + Vite
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
Currently, two official plugins are available:
- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh
- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh## Expanding the ESLint configuration
If you are developing a production application, we recommend updating the configuration to enable type aware lint rules:
- Configure the top-level `parserOptions` property like this:
```js
export default tseslint.config({
languageOptions: {
// other options...
parserOptions: {
project: ['./tsconfig.node.json', './tsconfig.app.json'],
tsconfigRootDir: import.meta.dirname,
},
},
})
```- Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked`
- Optionally add `...tseslint.configs.stylisticTypeChecked`
- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and update the config:```js
// eslint.config.js
import react from 'eslint-plugin-react'export default tseslint.config({
// Set the react version
settings: { react: { version: '18.3' } },
plugins: {
// Add the react plugin
react,
},
rules: {
// other rules...
// Enable its recommended rules
...react.configs.recommended.rules,
...react.configs['jsx-runtime'].rules,
},
})
```