├── .eslintrc.cjs ├── .gitignore ├── README.md ├── data └── users.json ├── index.html ├── package-lock.json ├── package.json ├── public ├── _redirects └── vite.svg ├── src ├── App.jsx ├── assets │ ├── 404.png │ ├── LOGO.png │ ├── audio.mp3 │ ├── barchasi.png │ ├── beckImg.jpg │ ├── booPast.png │ ├── chakraPast.png │ ├── closeAudio.mp3 │ ├── cssPast.png │ ├── cssRek.mp4 │ ├── error.mp3 │ ├── faq.png │ ├── favicon.jpg │ ├── firkErr.mp3 │ ├── frontImg.jpeg │ ├── google.mp3 │ ├── google.png │ ├── heard.svg │ ├── htmlPast.png │ ├── icon.png │ ├── iconkalar.png │ ├── icons3.png │ ├── icons4.png │ ├── index.js │ ├── ins.png │ ├── jsPast.png │ ├── loginAudio.mp3 │ ├── materPast.png │ ├── media.jpg │ ├── messImg.png │ ├── nextPast.png │ ├── reatcPast.png │ ├── tailPast.png │ ├── taklif.png │ ├── tg.png │ ├── tsPast.png │ ├── user.png │ ├── value.mp3 │ ├── video.mp4 │ ├── vsc.png │ ├── vsh.png │ ├── vsp.png │ └── you.png ├── components │ ├── accordion │ │ └── accordion.jsx │ ├── beckCard │ │ └── beckCard.jsx │ ├── borderProps │ │ └── borderProps.jsx │ ├── click │ │ └── click.jsx │ ├── colorCards │ │ └── colorCards.jsx │ ├── colorVal │ │ └── colorVal.jsx │ ├── cssAccordion │ │ └── cssAccordion.jsx │ ├── cssRek │ │ └── cssRek.jsx │ ├── footer │ │ └── footer.jsx │ ├── forntCard │ │ └── frontCard.jsx │ ├── googleBtn │ │ └── googleBtn.jsx │ ├── header │ │ └── header.jsx │ ├── hodimlar │ │ └── hodimlar.jsx │ ├── homeColors │ │ └── homeColors.jsx │ ├── homeCss │ │ └── homeCss.jsx │ ├── homeHtml │ │ └── homeHtml.jsx │ ├── homeJavascript │ │ └── homeJavascipt.jsx │ ├── homeLessons │ │ └── homeLessons.jsx │ ├── homeReact │ │ └── homeReact.jsx │ ├── homeVideo │ │ └── homeVideo.jsx │ ├── index.js │ ├── komment │ │ └── komment.jsx │ ├── lessonCards │ │ └── lessonCards.jsx │ ├── mainTitle │ │ ├── mainTitle.css │ │ └── mainTitle.jsx │ ├── modal │ │ └── modal.jsx │ ├── navbar │ │ └── navbar.jsx │ ├── opacityCard │ │ └── opacityCard.jsx │ ├── outlineProps │ │ └── OutlineProps.jsx │ ├── particl.jsx │ ├── propsColor │ │ └── propsColor.jsx │ ├── rgbVal │ │ └── rgbVal.jsx │ ├── sidebarAdmi │ │ └── sidebarAdmin.jsx │ ├── sidebarCss │ │ └── sidebarCss.jsx │ ├── sidebarhtml │ │ └── sidebarhtml.jsx │ ├── takliflar │ │ └── takliflar.jsx │ ├── texnoCards │ │ └── texnoCards.jsx │ ├── texnologiIcon │ │ ├── texno.css │ │ └── texnologiIcon.jsx │ └── userProfil │ │ └── userProfile.jsx ├── cssDesc.js ├── firebase.js ├── hooks │ └── useProgres.js ├── htmlCode.js ├── htmlDesc.js ├── index.css ├── main.jsx └── pages │ ├── AdminmodevcoAdmin.jsx │ ├── Home.jsx │ ├── beckMalumot.jsx │ ├── css.jsx │ ├── css10dars.jsx │ ├── css11dars.jsx │ ├── css12dars.jsx │ ├── css13dars.jsx │ ├── css14dars.jsx │ ├── css15dars.jsx │ ├── css16dars.jsx │ ├── css17dars.jsx │ ├── css18dars.jsx │ ├── css19dars.jsx │ ├── css20dars.jsx │ ├── css21dars.jsx │ ├── css22dars.jsx │ ├── css23dars.jsx │ ├── css24dars.jsx │ ├── css25dars.jsx │ ├── css26dars.jsx │ ├── css27dars.jsx │ ├── css28dars.jsx │ ├── css29dars.jsx │ ├── css2dars.jsx │ ├── css30dars.jsx │ ├── css31dars.jsx │ ├── css32dars.jsx │ ├── css33dars.jsx │ ├── css34dars.jsx │ ├── css35dars.jsx │ ├── css36dars.jsx │ ├── css37dars.jsx │ ├── css38dars.jsx │ ├── css39dars.jsx │ ├── css3dars.jsx │ ├── css40dars.jsx │ ├── css41dars.jsx │ ├── css42dars.jsx │ ├── css43dars.jsx │ ├── css44dars.jsx │ ├── css45dars.jsx │ ├── css46dars.jsx │ ├── css4dars.jsx │ ├── css5dars.jsx │ ├── css6dars.jsx │ ├── css7dars.jsx │ ├── css8dars.jsx │ ├── css9dars.jsx │ ├── faq.jsx │ ├── faq │ └── faqItem.jsx │ ├── fikr.jsx │ ├── frontMalumot.jsx │ ├── html.jsx │ ├── html10dars.jsx │ ├── html11dars.jsx │ ├── html12dars.jsx │ ├── html13dars.jsx │ ├── html14dars.jsx │ ├── html15dars.jsx │ ├── html16dars.jsx │ ├── html17dars.jsx │ ├── html18dars.jsx │ ├── html19dars.jsx │ ├── html1dars.jsx │ ├── html20dars.jsx │ ├── html21dars.jsx │ ├── html22dars.jsx │ ├── html23dars.jsx │ ├── html2dars.jsx │ ├── html3dars.jsx │ ├── html4dars.jsx │ ├── html5dars.jsx │ ├── html6dars.jsx │ ├── html7dars.jsx │ ├── html8dars.jsx │ ├── html9dars.jsx │ ├── htmlCode.jsx │ ├── pageNotFound.jsx │ └── register.jsx └── vite.config.js /.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { browser: true, es2020: true }, 4 | extends: [ 5 | 'eslint:recommended', 6 | 'plugin:react/recommended', 7 | 'plugin:react/jsx-runtime', 8 | 'plugin:react-hooks/recommended', 9 | ], 10 | ignorePatterns: ['dist', '.eslintrc.cjs'], 11 | parserOptions: { ecmaVersion: 'latest', sourceType: 'module' }, 12 | settings: { react: { version: '18.2' } }, 13 | plugins: ['react-refresh'], 14 | rules: { 15 | 'react-refresh/only-export-components': [ 16 | 'warn', 17 | { allowConstantExport: true }, 18 | ], 19 | }, 20 | } 21 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # React + Vite 2 | 3 | This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. 4 | 5 | Currently, two official plugins are available: 6 | 7 | - [@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 8 | - [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh 9 | -------------------------------------------------------------------------------- /data/users.json: -------------------------------------------------------------------------------- 1 | { 2 | "users": [ 3 | { 4 | "name": "Muhammadali", 5 | "lastname": "Anvarov", 6 | "phone": "998916595582", 7 | "email": "modevco05@gmail.com", 8 | "id": 1 9 | }, 10 | { 11 | "name": "Diyorbek", 12 | "lastname": "Ahmadjonov", 13 | "phone": "998907822309", 14 | "email": "diyorbekuzbek@gmail.com", 15 | "id": 2 16 | }, 17 | { 18 | "name": "Husniddin", 19 | "lastname": "Muxtorov", 20 | "phone": "998912824262", 21 | "email": "muhtorovhusniddin@gmail.com", 22 | "id": 3 23 | }, 24 | { 25 | "name": "Azizbek", 26 | "lastname": "Abduhakimov", 27 | "phone": "998913248992", 28 | "email": "codewizard@gmail.com", 29 | "id": 4 30 | } 31 | ], 32 | "taklif": [ 33 | { 34 | "ism": "Muhammadali", 35 | "email": "modevco05@gmail.com", 36 | "mavzu": "Omad", 37 | "xabar": "Assalomu alekum sizlarga omad tilayman va video darsliklarniham chiqaringlar shuni so'ramoqchi edim", 38 | "id": 21 39 | } 40 | ], 41 | "komment": [ 42 | { 43 | "komment": "Judaham zo'r qilganszlar barchaga omad", 44 | "id": 1 45 | }, 46 | { 47 | "komment": "Judaham zo'r qilganszlar barchaga omad Judaham zo'r qilganszlar barchaga omadJudaham zo'r qilganszlar barchaga omadJudaham zo'r qilganszlar barchaga omadJudaham zo'r qilganszlar barchaga omad", 48 | "id": 2 49 | }, 50 | { 51 | "komment": "Judaham zo'r qilganszlar barchaga omad", 52 | "id": 3 53 | }, 54 | { 55 | "komment": "Judaham zo'r qilganszlar barchaga omad", 56 | "id": 3 57 | }, 58 | { 59 | "komment": "Judaham zo'r qilganszlar barchaga omad", 60 | "id": 3 61 | }, 62 | { 63 | "komment": "Judaham zo'r qilganszlar barchaga omad", 64 | "id": 3 65 | } 66 | ] 67 | } -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | MOdevco Online Maktabi 8 | 9 | 10 |
11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lessons", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite", 8 | "build": "vite build", 9 | "lint": "eslint . --ext js,jsx --report-unused-disable-directives --max-warnings 0", 10 | "preview": "vite preview" 11 | }, 12 | "dependencies": { 13 | "@chakra-ui/icons": "^2.1.0", 14 | "@chakra-ui/react": "^2.8.0", 15 | "@emotion/react": "^11.11.1", 16 | "@emotion/styled": "^11.11.0", 17 | "@fortawesome/fontawesome-svg-core": "^6.4.0", 18 | "@fortawesome/free-regular-svg-icons": "^6.4.0", 19 | "@fortawesome/free-solid-svg-icons": "^6.4.0", 20 | "@fortawesome/react-fontawesome": "^0.2.0", 21 | "@mantine/core": "^6.0.17", 22 | "@mantine/hooks": "^6.0.17", 23 | "axios": "^1.4.0", 24 | "bootstrap": "^5.3.0", 25 | "copy-to-clipboard": "^3.3.3", 26 | "firebase": "^10.1.0", 27 | "formik": "^2.4.3", 28 | "framer-motion": "^10.13.0", 29 | "howler": "^2.2.3", 30 | "react": "^18.2.0", 31 | "react-copy-to-clipboard": "^5.1.0", 32 | "react-dom": "^18.2.0", 33 | "react-firebase-hooks": "^5.1.1", 34 | "react-router-dom": "^6.14.2", 35 | "react-speech-kit": "^3.0.1", 36 | "react-tsparticles": "^2.11.0", 37 | "swiper": "^10.0.4", 38 | "tsparticles": "^2.11.1" 39 | }, 40 | "devDependencies": { 41 | "@types/react": "^18.2.15", 42 | "@types/react-dom": "^18.2.7", 43 | "@vitejs/plugin-react": "^4.0.3", 44 | "autoprefixer": "^10.4.14", 45 | "daisyui": "^3.5.0", 46 | "eslint": "^8.45.0", 47 | "eslint-plugin-react": "^7.32.2", 48 | "eslint-plugin-react-hooks": "^4.6.0", 49 | "eslint-plugin-react-refresh": "^0.4.3", 50 | "postcss": "^8.4.27", 51 | "tailwindcss": "^3.3.3", 52 | "vite": "^4.4.5" 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /public/_redirects: -------------------------------------------------------------------------------- 1 | /* /index.html 200 -------------------------------------------------------------------------------- /public/vite.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/404.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/404.png -------------------------------------------------------------------------------- /src/assets/LOGO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/LOGO.png -------------------------------------------------------------------------------- /src/assets/audio.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/audio.mp3 -------------------------------------------------------------------------------- /src/assets/barchasi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/barchasi.png -------------------------------------------------------------------------------- /src/assets/beckImg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/beckImg.jpg -------------------------------------------------------------------------------- /src/assets/booPast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/booPast.png -------------------------------------------------------------------------------- /src/assets/chakraPast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/chakraPast.png -------------------------------------------------------------------------------- /src/assets/closeAudio.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/closeAudio.mp3 -------------------------------------------------------------------------------- /src/assets/cssPast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/cssPast.png -------------------------------------------------------------------------------- /src/assets/cssRek.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/cssRek.mp4 -------------------------------------------------------------------------------- /src/assets/error.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/error.mp3 -------------------------------------------------------------------------------- /src/assets/faq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/faq.png -------------------------------------------------------------------------------- /src/assets/favicon.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/favicon.jpg -------------------------------------------------------------------------------- /src/assets/firkErr.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/firkErr.mp3 -------------------------------------------------------------------------------- /src/assets/frontImg.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/frontImg.jpeg -------------------------------------------------------------------------------- /src/assets/google.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/google.mp3 -------------------------------------------------------------------------------- /src/assets/google.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/google.png -------------------------------------------------------------------------------- /src/assets/heard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/htmlPast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/htmlPast.png -------------------------------------------------------------------------------- /src/assets/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/icon.png -------------------------------------------------------------------------------- /src/assets/iconkalar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/iconkalar.png -------------------------------------------------------------------------------- /src/assets/icons3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/icons3.png -------------------------------------------------------------------------------- /src/assets/icons4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/icons4.png -------------------------------------------------------------------------------- /src/assets/index.js: -------------------------------------------------------------------------------- 1 | import Tg from './tg.png' 2 | import You from './you.png' 3 | import Ins from './ins.png' 4 | import Goog from './google.png' 5 | import vsp from './vsp.png' 6 | import vsc from './vsc.png' 7 | import vsh from './vsh.png' 8 | import frontImg from './frontImg.jpeg' 9 | import beckImg from './beckImg.jpg' 10 | import Logo from './LOGO.png' 11 | import htmlPast from './htmlPast.png' 12 | import cssPast from './cssPast.png' 13 | import tsPast from './tsPast.png' 14 | import jsPast from './jsPast.png' 15 | import nextPast from './nextPast.png' 16 | import booPast from './booPast.png' 17 | import chakraPast from './chakraPast.png' 18 | import materPast from './materPast.png' 19 | import tailPast from './tailPast.png' 20 | import reatcPast from './reatcPast.png' 21 | import favicon from './favicon.jpg' 22 | import media from './media.jpg' 23 | import video from './video.mp4' 24 | import audio from './audio.mp3' 25 | import closeAudio from './closeAudio.mp3' 26 | import loginAudio from './loginAudio.mp3' 27 | import errorAudio from './error.mp3' 28 | import enterGoogle from './google.mp3' 29 | import notFound from './404.png' 30 | import FaqImage from './faq.png' 31 | import Heard from './heard.svg' 32 | import err from './firkErr.mp3' 33 | import value from './value.mp3' 34 | import cssRek from './cssRek.mp4' 35 | import user from './user.png' 36 | import taklif from './taklif.png' 37 | import barchasi from './barchasi.png' 38 | import messImg from './messImg.png' 39 | import photo from './icon.png' 40 | import icons from './iconkalar.png' 41 | import icons3 from './icons3.png' 42 | import icons4 from './icons4.png' 43 | export { Tg , You , Ins , Goog , vsc , vsh , vsp , frontImg , Logo , beckImg , htmlPast ,chakraPast , jsPast , tailPast , reatcPast , tsPast , booPast , materPast , nextPast , cssPast , favicon , media , video , audio , closeAudio , loginAudio , errorAudio , enterGoogle , notFound , FaqImage , Heard , err , value , cssRek , user , taklif , barchasi , messImg, photo, icons, icons3, icons4} -------------------------------------------------------------------------------- /src/assets/ins.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/ins.png -------------------------------------------------------------------------------- /src/assets/jsPast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/jsPast.png -------------------------------------------------------------------------------- /src/assets/loginAudio.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/loginAudio.mp3 -------------------------------------------------------------------------------- /src/assets/materPast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/materPast.png -------------------------------------------------------------------------------- /src/assets/media.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/media.jpg -------------------------------------------------------------------------------- /src/assets/messImg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/messImg.png -------------------------------------------------------------------------------- /src/assets/nextPast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/nextPast.png -------------------------------------------------------------------------------- /src/assets/reatcPast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/reatcPast.png -------------------------------------------------------------------------------- /src/assets/tailPast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/tailPast.png -------------------------------------------------------------------------------- /src/assets/taklif.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/taklif.png -------------------------------------------------------------------------------- /src/assets/tg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/tg.png -------------------------------------------------------------------------------- /src/assets/tsPast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/tsPast.png -------------------------------------------------------------------------------- /src/assets/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/user.png -------------------------------------------------------------------------------- /src/assets/value.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/value.mp3 -------------------------------------------------------------------------------- /src/assets/video.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/video.mp4 -------------------------------------------------------------------------------- /src/assets/vsc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/vsc.png -------------------------------------------------------------------------------- /src/assets/vsh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/vsh.png -------------------------------------------------------------------------------- /src/assets/vsp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/vsp.png -------------------------------------------------------------------------------- /src/assets/you.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/assets/you.png -------------------------------------------------------------------------------- /src/components/beckCard/beckCard.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Heading , Button } from '@chakra-ui/react' 2 | import { Link } from 'react-router-dom' 3 | 4 | 5 | const BeckCard = () => { 6 | return ( 7 | 8 | 9 | 10 | BACK-END 11 | 12 | 13 | dasturlovchi veb-saytning bazasi, serveri va shunga o’xshash ishlari bilan shug’ullanandi. 14 | 15 | 16 | 17 | 20 | 21 | 22 | 23 | ) 24 | } 25 | 26 | export default BeckCard -------------------------------------------------------------------------------- /src/components/borderProps/borderProps.jsx: -------------------------------------------------------------------------------- 1 | import { Box, Text } from '@chakra-ui/react' 2 | import React from 'react' 3 | 4 | const BorderProps = ({borderColor, bottom, borderStyle,borderw, borderLeft,borderLeftw, borderRight, borderTop, text, rounded, bg}) => { 5 | return ( 6 | {text} 7 | 8 | ) 9 | } 10 | 11 | export default BorderProps 12 | -------------------------------------------------------------------------------- /src/components/click/click.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Flex , Heading , Button , Text , Image , Input , FormLabel, HStack, Radio, RadioGroup, useDisclosure ,Divider} from '@chakra-ui/react' 2 | import { 3 | Modal, 4 | ModalOverlay, 5 | ModalContent, 6 | ModalHeader, 7 | ModalFooter, 8 | ModalBody, 9 | ModalCloseButton, 10 | } from '@chakra-ui/react' 11 | import { useEffect, useState } from 'react' 12 | import CopyToClipboard from 'react-copy-to-clipboard' 13 | import { useAuthState } from 'react-firebase-hooks/auth' 14 | import { auth } from '../../firebase' 15 | 16 | const Click = () => { 17 | const [user , loading] = useAuthState(auth) 18 | const [folow , setFolow] = useState(true) 19 | const [clipboard , setClipboard] = useState(false) 20 | const { isOpen, onOpen, onClose } = useDisclosure() 21 | 22 | 23 | useEffect(() => { 24 | if(user) { 25 | setFolow(true) 26 | } else { 27 | setFolow(false) 28 | } 29 | } , [user]) 30 | 31 | 32 | const handleClip = () => { 33 | setClipboard(true) 34 | toast({ 35 | position: 'top-right', 36 | render: () => ( 37 | 38 | Nusxa olindi! 39 | 40 | ), 41 | }) 42 | } 43 | return ( 44 | 45 | 46 | 47 | 48 | {``} 57 | 58 | 59 | 60 | Click Me!`} onCopy={handleClip} > 61 | 62 | 63 | 64 | Yuqoridagi HTML kodi brauzerda shunday ko'rsatiladi: 65 | 66 | { folow ? ( 67 | 68 | 69 | 70 | Diqqat 71 | 72 | 73 | Hurmatli foidalanuvchi siz ro'yxatdan o'tkansiz buning uchun sizdan minatdormiz platforma sizga yoqayotgan bo'lsa biz juda hursandmiz😊 74 | 75 | 76 | 77 | ): ( 78 | 79 | 80 | 81 | Diqqat 82 | 83 | 84 | Hurmatli foidalanuvchi siz platformamizdan ro'yxatdan o'tmagansiz sizga eslatib o'tamiz agarda ro'yxatdan o'tsangiz siz platformadan keng foidalanishingiz mumkun bo'ladi eng tepadagi ro'yxatdan o'tish tugmasi yordamida ro'yxatdan o'ting 😉 (Hurmat bilan MOdevco jamoasi) 85 | 86 | 87 | 88 | ) } 89 | Eslatma: Har doim tugma elementi uchun type atributini belgilang. Turli xil brauzerlar
tugma elementi uchun har xil standart turlardan foydalanishi mumkin.
90 |
91 | 92 | 93 | 94 | 95 | ) 96 | } 97 | 98 | export default Click -------------------------------------------------------------------------------- /src/components/colorCards/colorCards.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Heading , Text , useToast} from '@chakra-ui/react' 2 | import CopyToClipboard from 'react-copy-to-clipboard' 3 | import { useState } from 'react' 4 | 5 | 6 | const ColorCards = ({cardBg , title , colorName , textColor , copyColor , copy}) => { 7 | const [clipboard , setClipboard] = useState(false) 8 | const toast = useToast() 9 | const handleClip = () => { 10 | setClipboard(true) 11 | toast({ 12 | position: 'top-right', 13 | render: () => ( 14 | 15 | {title}dan Nusxa olindi! 16 | 17 | ), 18 | }) 19 | } 20 | return ( 21 | 22 | 23 | 24 | {title} 25 | {colorName} 26 | 27 | 28 | 29 | ) 30 | } 31 | 32 | export default ColorCards -------------------------------------------------------------------------------- /src/components/colorVal/colorVal.jsx: -------------------------------------------------------------------------------- 1 | import React, { useState } from 'react' 2 | import {Box, Text, useToast} from '@chakra-ui/react' 3 | import CopyToClipboard from 'react-copy-to-clipboard' 4 | const ColorVal = ({bgColor, colorName}) => { 5 | const [clipboard , setClipboard] = useState(false) 6 | const toast = useToast() 7 | const handleClip = () => { 8 | setClipboard(true) 9 | toast({ 10 | position: 'top-right', 11 | render: () => ( 12 | 13 | {colorName}dan Nusxa olindi! 14 | 15 | ), 16 | }) 17 | } 18 | return ( 19 | 20 | 21 | 22 | 23 | 24 | {colorName} 25 | 26 | 27 | 28 | 29 | 30 | ) 31 | } 32 | 33 | export default ColorVal 34 | -------------------------------------------------------------------------------- /src/components/cssRek/cssRek.jsx: -------------------------------------------------------------------------------- 1 | import { Box } from '@chakra-ui/react' 2 | import React from 'react' 3 | 4 | const CssRek = () => { 5 | return ( 6 | 7 | 8 | 9 | ) 10 | } 11 | 12 | export default CssRek -------------------------------------------------------------------------------- /src/components/footer/footer.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Heading , Image } from '@chakra-ui/react' 2 | import { Link } from 'react-router-dom' 3 | import { Ins, Tg, You } from '../../assets' 4 | 5 | 6 | const Footer = () => { 7 | return ( 8 | 9 | 10 | MOdevco Maktabi 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | ) 25 | } 26 | 27 | export default Footer -------------------------------------------------------------------------------- /src/components/forntCard/frontCard.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Heading , Button } from '@chakra-ui/react' 2 | import { Link } from 'react-router-dom' 3 | 4 | const FrontCard = () => { 5 | return ( 6 | 7 | 8 | 9 | FRONT-END 10 | 11 | 12 | dasturlovchi veb-saytning foydalanuvchiga ko’rinadigan qismini tayyorlash bilan shug’ullanadi. 13 | 14 | 15 | 16 | 19 | 20 | 21 | 22 | ) 23 | } 24 | 25 | export default FrontCard -------------------------------------------------------------------------------- /src/components/googleBtn/googleBtn.jsx: -------------------------------------------------------------------------------- 1 | import { signInWithPopup , GoogleAuthProvider } from 'firebase/auth' 2 | import { useAuthState } from 'react-firebase-hooks/auth' 3 | import { auth } from '../../firebase' 4 | import { useToast , Box , Button , Image , Text , Heading } from '@chakra-ui/react' 5 | import { useNavigate } from 'react-router-dom' 6 | import { Goog } from '../../assets' 7 | import { enterGoogle } from '../../assets' 8 | import { useState } from 'react' 9 | const GoogleBtn = () => { 10 | const googleProvider = new GoogleAuthProvider 11 | const toast = useToast() 12 | const navigate = useNavigate() 13 | const [load , setLoad] = useState(false) 14 | 15 | const handleEnterGoogle = () => { 16 | new Audio(enterGoogle).play() 17 | } 18 | 19 | const handleUser = () => { 20 | setLoad(true) 21 | 22 | try { 23 | const res = signInWithPopup(auth , googleProvider).then((res) => { 24 | toast({ 25 | position: 'top-right', 26 | duration: 3000, 27 | render: () => ( 28 | 29 | RO'YXATDAN O'TDINGIZ 30 | 31 | ), 32 | }) 33 | console.log(res) 34 | navigate('/') 35 | handleEnterGoogle() 36 | }) 37 | 38 | } catch { 39 | navigate('/register') 40 | console.log('error') 41 | setLoad(false) 42 | } 43 | } 44 | return ( 45 | 46 | {!load && } 50 | {load && } 59 | 60 | 61 | ) 62 | } 63 | 64 | export default GoogleBtn -------------------------------------------------------------------------------- /src/components/header/header.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Heading , Flex , Button , Avatar , Text } from '@chakra-ui/react' 2 | import { useAuthState } from 'react-firebase-hooks/auth' 3 | import { auth } from '../../firebase' 4 | import { signInWithPopup , GoogleAuthProvider } from 'firebase/auth' 5 | import { ArrowRightIcon , EmailIcon , QuestionIcon } from '@chakra-ui/icons' 6 | import { 7 | Modal, 8 | ModalOverlay, 9 | ModalContent, 10 | ModalHeader, 11 | ModalFooter, 12 | ModalBody, 13 | ModalCloseButton, 14 | useDisclosure, 15 | Image 16 | } from '@chakra-ui/react' 17 | import { 18 | Menu, 19 | MenuButton, 20 | MenuList, 21 | MenuItem, 22 | MenuItemOption, 23 | MenuGroup, 24 | MenuOptionGroup, 25 | MenuDivider, 26 | useToast 27 | } from '@chakra-ui/react' 28 | import { Goog, Ins, Logo, Tg, You } from '../../assets' 29 | import { useEffect } from 'react' 30 | import { Link } from 'react-router-dom' 31 | import useProgres from '../../hooks/useProgres' 32 | import { closeAudio } from '../../assets' 33 | import UserProfile from '../userProfil/userProfile' 34 | 35 | 36 | const Header = () => { 37 | const [ user , loading] = useAuthState(auth) 38 | const { isOpen, onOpen, onClose } = useDisclosure() 39 | const toast = useToast() 40 | const completion = useProgres() 41 | const handleCloseAudio = () => { 42 | new Audio(closeAudio).play() 43 | } 44 | const handleClose = () => { 45 | auth.signOut() 46 | toast({ 47 | position: 'top-right', 48 | duration: 3000, 49 | render: () => ( 50 | 51 | PROFILINGIZDAN CHIQTINGIZ 52 | 53 | ), 54 | }) 55 | handleCloseAudio() 56 | } 57 | return ( 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | MOdevco Maktabi 66 | 67 | 68 | {user ? ( 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | PRODILDAN CHIQISH 77 | 78 | 79 | 80 | 81 | 82 | ): ( 83 | 84 | 85 | 86 | 87 | 88 | ) 89 | 90 | } 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | ) 99 | } 100 | 101 | 102 | 103 | export default Header -------------------------------------------------------------------------------- /src/components/hodimlar/hodimlar.jsx: -------------------------------------------------------------------------------- 1 | import { Avatar, Box, Button, Divider, Heading } from '@chakra-ui/react' 2 | import React, { useEffect, useState } from 'react' 3 | import { 4 | Table, 5 | Thead, 6 | Tbody, 7 | Tfoot, 8 | Tr, 9 | Th, 10 | Td, 11 | TableCaption, 12 | TableContainer, 13 | } from '@chakra-ui/react' 14 | import axios from 'axios' 15 | import { DeleteIcon, SearchIcon } from '@chakra-ui/icons' 16 | import { err } from '../../assets' 17 | const Hodimlar = ({setData , data}) => { 18 | const API = 'http://localhost:3000/users' 19 | const audio = () => { 20 | new Audio(err).play() 21 | } 22 | useEffect(() => { 23 | axios.get(API).then((res) => { 24 | setData(res.data) 25 | }) 26 | 27 | } ,[API]) 28 | 29 | const handleDelete = (id) => { 30 | axios.delete('http://localhost:3000/users/' + id).then((res) => { 31 | axios.get(API).then((res) => { 32 | setData(res.data) 33 | }) 34 | audio() 35 | }) 36 | } 37 | 38 | 39 | return ( 40 | 41 | 42 | 43 | 44 | Xodimlar Ro'yxati 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | {data.map((user , i) => ( 66 | 67 | 68 | 69 | 70 | 71 | 72 | 75 | 76 | ))} 77 | 78 |
AvatarIsmFamiliyaTelefon NomerEmailQo'shimcha
{user.name}{user.lastname}{user.phone}{user.email} 73 | 74 |
79 |
80 |
81 | 82 |
83 | 84 | 85 |
86 | ) 87 | } 88 | 89 | export default Hodimlar -------------------------------------------------------------------------------- /src/components/homeColors/homeColors.jsx: -------------------------------------------------------------------------------- 1 | import { Box } from '@chakra-ui/react' 2 | import ColorCards from '../colorCards/colorCards' 3 | 4 | const HomeColors = () => { 5 | 6 | return ( 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | ) 60 | } 61 | 62 | export default HomeColors -------------------------------------------------------------------------------- /src/components/homeCss/homeCss.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Heading , Text , Button , useToast , useDisclosure } from '@chakra-ui/react' 2 | import { Link } from 'react-router-dom' 3 | import CopyToClipboard from 'react-copy-to-clipboard' 4 | import { useState } from 'react' 5 | import { 6 | Modal, 7 | ModalOverlay, 8 | ModalContent, 9 | ModalHeader, 10 | ModalBody, 11 | ModalCloseButton, 12 | } from '@chakra-ui/react' 13 | 14 | const HomeCss = () => { 15 | const [clipboard , setClipboard] = useState(false) 16 | const { isOpen, onOpen, onClose } = useDisclosure() 17 | const toast = useToast() 18 | const handleClip = () => { 19 | setClipboard(true) 20 | toast({ 21 | position: 'top-right', 22 | render: () => ( 23 | 24 | Nusxa olindi! 25 | 26 | ), 27 | }) 28 | } 29 | return ( 30 | 31 | 32 | 33 | 34 | 35 | CSS 36 | 37 | 38 | Veb-sahifalarni uslublash tili 39 | 40 | 41 | 44 | 45 | 46 | 49 | 50 | 51 | 52 | ESLATIB O'TAMIZ 53 | 54 | 55 | BU BO'LIMDA HOZIRCHA HECHNARSA MAVJUD EMAS ILTMOS KUTING! NOQULAYLIK UCHUN UZUR SO'RAYMIZ 56 | 57 | 58 | 59 | 60 | 61 | 64 | 65 | 66 | 67 | 68 | Css Misol: 69 | 70 | 71 | {' { '} 72 | {'background-color:'} lightblue; 73 | {'}'} 74 | 75 | {'h1 { '} 76 | {'color:'} white; 77 | {' text-align:'} center; 78 | {'}'} 79 | 80 | {'p { '} 81 | {'font-family:'} verdana; 82 | {'}'} 83 | 84 | 85 | 86 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | ) 96 | } 97 | 98 | export default HomeCss -------------------------------------------------------------------------------- /src/components/homeHtml/homeHtml.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Heading , Text , Button , useToast , useDisclosure } from '@chakra-ui/react' 2 | import { useState } from 'react' 3 | import CopyToClipboard from 'react-copy-to-clipboard' 4 | import { Link } from 'react-router-dom' 5 | 6 | import { 7 | Modal, 8 | ModalOverlay, 9 | ModalContent, 10 | ModalHeader, 11 | ModalBody, 12 | ModalCloseButton, 13 | } from '@chakra-ui/react' 14 | 15 | 16 | const HomeHtml = () => { 17 | const [clipboard , setClipboard] = useState(false) 18 | const { isOpen, onOpen, onClose } = useDisclosure() 19 | const toast = useToast() 20 | const handleClip = () => { 21 | setClipboard(true) 22 | toast({ 23 | position: 'top-right', 24 | render: () => ( 25 | 26 | Nusxa olindi! 27 | 28 | ), 29 | }) 30 | } 31 | 32 | return ( 33 | 34 | 35 | 36 | 37 | 38 | HTML 39 | 40 | 41 | Veb-sahifalar yaratish uchun til 42 | 43 | 44 | 47 | 48 | 49 | 52 | 53 | 54 | 55 | ESLATIB O'TAMIZ 56 | 57 | 58 | BU BO'LIMDA HOZIRCHA HECHNARSA MAVJUD EMAS ILTMOS KUTING! NOQULAYLIK UCHUN UZUR SO'RAYMIZ 59 | 60 | 61 | 62 | 63 | 64 | 67 | 68 | 69 | 70 | 71 | 72 | Html Misol: 73 | 74 | 75 | 76 | {'{`html>`} 77 | {''} 78 | {''} <span style={{color: 'white'}}>HTML darslik</span>{''} 79 | {''} 80 |
81 | {'

'} Bu sarlavha{'

'}
82 | {'

'} Bu paragraf{'

'}
83 |
84 | {''} 85 | {''} 86 |
87 | 88 | 89 | 92 | 93 | 94 |
95 |
96 | 97 |
98 | ) 99 | } 100 | 101 | export default HomeHtml -------------------------------------------------------------------------------- /src/components/homeJavascript/homeJavascipt.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Heading , Text , Button , useToast , useDisclosure } from '@chakra-ui/react' 2 | import { Link } from 'react-router-dom' 3 | import CopyToClipboard from 'react-copy-to-clipboard' 4 | import { useState } from 'react' 5 | import { 6 | Modal, 7 | ModalOverlay, 8 | ModalContent, 9 | ModalHeader, 10 | ModalBody, 11 | ModalCloseButton, 12 | } from '@chakra-ui/react' 13 | 14 | const HomeJavascipt = () => { 15 | const [clipboard , setClipboard] = useState(false) 16 | const { isOpen, onOpen, onClose } = useDisclosure() 17 | const toast = useToast() 18 | const handleClip = () => { 19 | setClipboard(true) 20 | toast({ 21 | position: 'top-right', 22 | render: () => ( 23 | 24 | Nusxa olindi! 25 | 26 | ), 27 | }) 28 | } 29 | return ( 30 | 31 | 32 | 33 | 34 | 35 | JAVASCRIPT 36 | 37 | 38 | Veb-sahifalarni dasturlash tili 39 | 40 | 41 | 44 | 45 | 46 | 49 | 50 | 51 | 52 | ESLATIB O'TAMIZ 53 | 54 | 55 | BU BO'LIMDA HOZIRCHA HECHNARSA MAVJUD EMAS ILTMOS KUTING! NOQULAYLIK UCHUN UZUR SO'RAYMIZ 56 | 57 | 58 | 59 | 60 | 61 | 64 | 65 | 66 | 67 | 68 | 69 | JavaScipt Misol: 70 | 71 | 72 | 73 | {'{` onclick=`} {`"myFunction()">`} 74 | {'Click Me!'} 75 | {''} 76 |
77 | {''} 84 |
85 | 86 | 87 | 90 | 91 | 92 |
93 |
94 | 95 |
96 | ) 97 | } 98 | 99 | export default HomeJavascipt -------------------------------------------------------------------------------- /src/components/homeLessons/homeLessons.jsx: -------------------------------------------------------------------------------- 1 | import { Box } from '@chakra-ui/react' 2 | import LessonCards from '../lessonCards/lessonCards' 3 | 4 | const HomeLessons = () => { 5 | return ( 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | ) 24 | } 25 | 26 | export default HomeLessons -------------------------------------------------------------------------------- /src/components/homeReact/homeReact.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Heading , Text , Button , useToast , useDisclosure} from '@chakra-ui/react' 2 | import { Link } from 'react-router-dom' 3 | import CopyToClipboard from 'react-copy-to-clipboard' 4 | import { useState } from 'react' 5 | import { 6 | Modal, 7 | ModalOverlay, 8 | ModalContent, 9 | ModalHeader, 10 | ModalBody, 11 | ModalCloseButton, 12 | } from '@chakra-ui/react' 13 | 14 | const HomeReact = () => { 15 | const [clipboard , setClipboard] = useState(false) 16 | const { isOpen, onOpen, onClose } = useDisclosure() 17 | const toast = useToast() 18 | const handleClip = () => { 19 | setClipboard(true) 20 | toast({ 21 | position: 'top-right', 22 | render: () => ( 23 | 24 | Nusxa olindi! 25 | 26 | ), 27 | }) 28 | } 29 | return ( 30 | 31 | 32 | 33 | 34 | 35 | REACT JS 36 | 37 | 38 | Foydalanuvchi interfeyslarini
yaratish 39 | uchun JavaScript kutubxonasi 40 |
41 | 42 | 45 | 46 | 47 | 50 | 51 | 52 | 53 | ESLATIB O'TAMIZ 54 | 55 | 56 | BU BO'LIMDA HOZIRCHA HECHNARSA MAVJUD EMAS ILTMOS KUTING! NOQULAYLIK UCHUN UZUR SO'RAYMIZ 57 | 58 | 59 | 60 | 61 | 62 | 65 | 66 |
67 | 68 | 69 | 70 | REACT JS Misol: 71 | 72 | 73 | 74 | {"import "} React from 'react' 75 | {"const Header = () => {"} 76 | {"return ("} 77 | {"
"} 78 | {`

`} Salom Dunyo {`

`}
79 | {"
"} 80 | {")"} 81 | {'}'} 82 | {'export'} default Header 83 | 84 | 85 | 86 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | ) 96 | } 97 | 98 | export default HomeReact -------------------------------------------------------------------------------- /src/components/homeVideo/homeVideo.jsx: -------------------------------------------------------------------------------- 1 | import { Box } from '@chakra-ui/react' 2 | import { video } from '../../assets' 3 | 4 | const HomeVideo = () => { 5 | return ( 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | ) 14 | } 15 | 16 | export default HomeVideo -------------------------------------------------------------------------------- /src/components/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MOdevco/MOdevcoSchool/d95f3bac432350122dc1f39f89e6bb98fc629737/src/components/index.js -------------------------------------------------------------------------------- /src/components/komment/komment.jsx: -------------------------------------------------------------------------------- 1 | import { ChevronDownIcon, DeleteIcon } from '@chakra-ui/icons' 2 | import { Avatar, Box, Button, Divider, Heading, Text } from '@chakra-ui/react' 3 | import axios from 'axios' 4 | import { useEffect, useState } from 'react' 5 | import { 6 | Popover, 7 | PopoverTrigger, 8 | PopoverContent, 9 | PopoverHeader, 10 | PopoverBody, 11 | PopoverFooter, 12 | PopoverArrow, 13 | PopoverCloseButton, 14 | PopoverAnchor, 15 | } from '@chakra-ui/react' 16 | 17 | 18 | const Komment = () => { 19 | const API = 'http://localhost:3000/komment' 20 | const [data , setData] = useState([]) 21 | 22 | useEffect(() => { 23 | axios.get(API).then((res) => { 24 | setData(res.data) 25 | }) 26 | } ,[API]) 27 | 28 | 29 | const handleDlete = async (id) => { 30 | await axios.delete('http://localhost:3000/komment/' + id).then((res) => { 31 | axios.get(API).then((res) => { 32 | setData(res.data) 33 | }) 34 | }) 35 | } 36 | 37 | 38 | return ( 39 | 40 | 41 | 42 | 43 | 44 | Kommentariyalar 45 | 46 | 47 | 48 | {data && data.map((item , i) => ( 49 | 50 | 51 | 52 | 53 | Foidalanuvchi 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | Ma'lumotni tozalash 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | {item.komment} 75 | 76 | 77 | ))} 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | ) 86 | } 87 | 88 | export default Komment -------------------------------------------------------------------------------- /src/components/lessonCards/lessonCards.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Heading , Text , Button, useDisclosure } from '@chakra-ui/react' 2 | import { Link } from 'react-router-dom' 3 | import { 4 | Modal, 5 | ModalOverlay, 6 | ModalContent, 7 | ModalHeader, 8 | ModalFooter, 9 | ModalBody, 10 | ModalCloseButton, 11 | } from '@chakra-ui/react' 12 | 13 | const LessonCards = ({title ,text , bg , color , cardBg , cardColor , linkLess}) => { 14 | const { isOpen, onOpen, onClose } = useDisclosure() 15 | return ( 16 | 17 | 18 | 19 | 20 | 21 | Ma'lumot 22 | 23 | 24 | 25 | Bu bo'limda hozircha darsliklar mavjut emas , tez orada bo'lim to'ldiriladi😊 26 | 27 | 28 | 29 | 30 | {title} 31 | {text} 32 | 33 | 34 | 35 | 36 | 37 | ) 38 | } 39 | 40 | export default LessonCards -------------------------------------------------------------------------------- /src/components/mainTitle/mainTitle.css: -------------------------------------------------------------------------------- 1 | 2 | .center { 3 | display: flex; 4 | justify-content: flex-start; 5 | align-items: center ; 6 | 7 | } -------------------------------------------------------------------------------- /src/components/modal/modal.jsx: -------------------------------------------------------------------------------- 1 | // import { Box, useDisclosure } from '@chakra-ui/react' 2 | // import { 3 | // Modal, 4 | // ModalOverlay, 5 | // ModalContent, 6 | // ModalHeader, 7 | // ModalFooter, 8 | // ModalBody, 9 | // ModalCloseButton, 10 | // } from '@chakra-ui/react' 11 | // const Modal = ({ isOpen}) => { 12 | 13 | // return ( 14 | // 15 | 16 | 17 | 18 | // 19 | // ) 20 | // } 21 | 22 | // export default Modal -------------------------------------------------------------------------------- /src/components/opacityCard/opacityCard.jsx: -------------------------------------------------------------------------------- 1 | import { Box, Text, useToast } from '@chakra-ui/react' 2 | import React from 'react' 3 | import { useState } from 'react' 4 | import CopyToClipboard from 'react-copy-to-clipboard' 5 | 6 | const OpacityCard = ({text, opacity}) => { 7 | const [clipboard , setClipboard] = useState(false) 8 | const toast = useToast() 9 | const handleClip = () => { 10 | setClipboard(true) 11 | toast({ 12 | position: 'top-right', 13 | render: () => ( 14 | 15 | {text}dan Nusxa olindi! 16 | 17 | ), 18 | }) 19 | } 20 | return ( 21 | 22 | 23 | 24 | 25 | {text} 26 | 27 | 28 | 29 | ) 30 | } 31 | 32 | export default OpacityCard 33 | -------------------------------------------------------------------------------- /src/components/outlineProps/OutlineProps.jsx: -------------------------------------------------------------------------------- 1 | import { Box, Text } from '@chakra-ui/react' 2 | import React from 'react' 3 | 4 | const OutlineProps = ({borderStyle, text, borderColor, width, top, left, right, bottom}) => { 5 | return ( 6 | 7 | {text} 8 | 9 | ) 10 | } 11 | 12 | export default OutlineProps 13 | -------------------------------------------------------------------------------- /src/components/particl.jsx: -------------------------------------------------------------------------------- 1 | import { Box } from "@chakra-ui/react"; 2 | import { useCallback } from "react"; 3 | import Particles from "react-tsparticles"; 4 | import { loadSlim } from "tsparticles-slim"; 5 | 6 | const Particl = () => { 7 | const particlesInit = useCallback(async engine => { 8 | await loadSlim(engine); 9 | }, []); 10 | 11 | const particlesLoaded = useCallback(async container => { 12 | }, []); 13 | 14 | return ( 15 | 16 | 86 | 87 | ) 88 | } 89 | 90 | export default Particl -------------------------------------------------------------------------------- /src/components/propsColor/propsColor.jsx: -------------------------------------------------------------------------------- 1 | import {Box , Text} from '@chakra-ui/react' 2 | 3 | 4 | const PropsColor = ({bgColor , colorName}) => { 5 | return ( 6 | 7 | 8 | {colorName} 9 | 10 | 11 | ) 12 | } 13 | 14 | export default PropsColor 15 | -------------------------------------------------------------------------------- /src/components/rgbVal/rgbVal.jsx: -------------------------------------------------------------------------------- 1 | import React, { useState } from 'react' 2 | import {Box, Text, useToast} from '@chakra-ui/react' 3 | import CopyToClipboard from 'react-copy-to-clipboard' 4 | const RgbVal = ({bgColor, colorName, text}) => { 5 | const [clipboard , setClipboard] = useState(false) 6 | const toast = useToast() 7 | const handleClip = () => { 8 | setClipboard(true) 9 | toast({ 10 | position: 'top-right', 11 | render: () => ( 12 | 13 | {colorName}dan Nusxa olindi! 14 | 15 | ), 16 | }) 17 | } 18 | return ( 19 | 20 | 21 | 22 | 23 | 24 | {colorName} 25 | 26 | 27 | 28 | 29 | 30 | ) 31 | } 32 | 33 | export default RgbVal 34 | -------------------------------------------------------------------------------- /src/components/sidebarAdmi/sidebarAdmin.jsx: -------------------------------------------------------------------------------- 1 | import { DragHandleIcon } from '@chakra-ui/icons' 2 | import { Box, Button, useToast } from '@chakra-ui/react' 3 | // import HodimQoshish from '../hodimQo\'shish/hodimQo\'shish' 4 | import { FormControl, FormLabel, Input, useDisclosure } from '@chakra-ui/react' 5 | import { 6 | Modal, 7 | ModalOverlay, 8 | ModalContent, 9 | ModalHeader, 10 | ModalFooter, 11 | ModalBody, 12 | ModalCloseButton, 13 | } from '@chakra-ui/react' 14 | import axios from 'axios' 15 | import React, { useState } from 'react' 16 | import { value } from '../../assets' 17 | 18 | const SidebarAdmin = ({setData , data , handleAll , handleTaklif , handleXodim , handleKomment}) => { 19 | const { isOpen, onOpen, onClose } = useDisclosure() 20 | const initialRef = React.useRef(null) 21 | const finalRef = React.useRef(null) 22 | const [user , setUser] = useState({name: '' , lastname: '' , phone: '' , email: ''}) 23 | const API = 'http://localhost:3000/users' 24 | const toast = useToast() 25 | const audio = () => { 26 | new Audio(value).play() 27 | } 28 | const handleSubmit = async () => { 29 | await axios.post(API , user).then((res) => { 30 | axios.get(API).then((res) => { 31 | setData(res.data) 32 | }) 33 | toast({ 34 | position: 'top-right', 35 | duration: 3000, 36 | render: () => ( 37 | 38 | Ma'lumot qo'shildi 39 | 40 | ), 41 | }) 42 | audio() 43 | }) 44 | setUser("") 45 | } 46 | return ( 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 62 | 63 | 64 | Hodim Qo'shish 65 | 66 | 67 | 68 | Ism 69 | setUser({...user , name: e.target.value})} ref={initialRef} placeholder='Ism...' type={'text'}/> 70 | 71 | 72 | 73 | Familiya 74 | setUser({...user , lastname: e.target.value})} placeholder='Familiya...' type={'text'} /> 75 | 76 | 77 | 78 | Telefon Raqam 79 | setUser({...user , phone: e.target.value})} placeholder='Telefon...' type={'number'} /> 80 | 81 | 82 | 83 | Elektron Manzil 84 | setUser({...user , email: e.target.value})} placeholder='Email...' type={'email'} /> 85 | 86 | 87 | 88 | 89 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | ) 103 | } 104 | 105 | export default SidebarAdmin -------------------------------------------------------------------------------- /src/components/takliflar/takliflar.jsx: -------------------------------------------------------------------------------- 1 | import { Box, Button, Heading, Text, Textarea } from '@chakra-ui/react' 2 | import axios from 'axios' 3 | import React, { useEffect, useState } from 'react' 4 | import { 5 | Table, 6 | Thead, 7 | Tbody, 8 | Tfoot, 9 | Tr, 10 | Th, 11 | Td, 12 | TableCaption, 13 | TableContainer, 14 | } from '@chakra-ui/react' 15 | import { DeleteIcon } from '@chakra-ui/icons' 16 | import { err } from '../../assets' 17 | const Takliflar = () => { 18 | const API = 'http://localhost:3000/taklif' 19 | const [data , setData] = useState([]) 20 | const audio = () => { 21 | new Audio(err).play() 22 | } 23 | 24 | useEffect(() => { 25 | axios.get(API).then((res) => { 26 | setData(res.data) 27 | }) 28 | } ,[API]) 29 | 30 | 31 | const handleDelete = (id) => { 32 | axios.delete('http://localhost:3000/taklif/' + id).then((res) => { 33 | axios.get(API).then((res) => { 34 | setData(res.data) 35 | }) 36 | audio() 37 | }) 38 | } 39 | return ( 40 | 41 | 42 | 43 | 44 | 45 | 46 | Takliflar 47 | 48 | 49 | {data.map((res , i) => ( 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 |
IsmEmailMavzu
{res.ism}{res.email}{res.mavzu}
70 |
71 | {/* Ism: {res.ism} 72 | Email: {res.email} 73 | Mavzu: {res.mavzu} */} 74 | Xabar: 75 | 63 | { } 64 | 65 |
66 | 67 | 68 | 69 |
70 | 71 |
72 |
73 | 74 | ) 75 | } 76 | 77 | export default Fikr -------------------------------------------------------------------------------- /src/pages/html.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Flex ,Button , Heading , Text} from '@chakra-ui/react' 2 | import { useEffect, useState } from 'react' 3 | import Sidebar from '../components/sidebarhtml/sidebarhtml' 4 | import { HamburgerIcon , CloseIcon} from '@chakra-ui/icons' 5 | import { 6 | Drawer, 7 | DrawerBody, 8 | DrawerFooter, 9 | DrawerHeader, 10 | DrawerOverlay, 11 | DrawerContent, 12 | DrawerCloseButton, 13 | useDisclosure, 14 | useToast 15 | } from '@chakra-ui/react' 16 | import AccordionItenm from '../components/accordion/accordion' 17 | import CopyToClipboard from 'react-copy-to-clipboard' 18 | const Html = () => { 19 | const { isOpen, onOpen, onClose } = useDisclosure() 20 | const [placement, setPlacement] = useState('left') 21 | const [size, setSize] = useState('') 22 | const [clipboard , setClipboard] = useState(false) 23 | const toast = useToast() 24 | 25 | const handleClip = () => { 26 | setClipboard(true) 27 | toast({ 28 | position: 'top-right', 29 | render: () => ( 30 | 31 | Nusxa olindi! 32 | 33 | ), 34 | }) 35 | } 36 | 37 | const handleClick = (newSize) => { 38 | setSize(newSize) 39 | onOpen() 40 | } 41 | const nandleClose = () => { 42 | onClose() 43 | } 44 | const sizes = ['md'] 45 | useEffect(() => { 46 | window.scroll(0,0) 47 | }, []) 48 | 49 | return ( 50 | 51 | 52 | 53 | {onOpen && 54 | 55 | } 56 | 57 | {sizes.map((size) => ( 58 | 61 | 62 | ))} 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | HTML DARSLARI 75 | 76 | 77 | 78 | 79 | 80 | 81 | HTML veb-sahifalar uchun standart belgilash tilidir. 82 | HTML yordamida siz o'z veb-saytingizni yaratishingiz mumkin. 83 | HTMLni o'rganish juda oson - bu sizga yoqadi! 84 | 85 | 86 | 87 | HTML nima? 88 | 89 | 90 | 91 |
    92 |
  • HTML stands for Hyper Text Markup Language
  • 93 |
  • HTML veb-sahifalarni yaratish uchun standart belgilash tilidir
  • 94 |
  • HTML Web-sahifaning tuzilishini tavsiflaydi
  • 95 |
  • HTML bir qator elementlardan iborat
  • 96 |
  • HTML elementlari brauzerga kontentni qanday ko'rsatishni aytadi
  • 97 |
  • HTML elementlari "bu sarlavha", "bu paragraf",
    "bu havola" va boshqalar kabi kontent qismlarini belgilaydi.
  • 98 |
99 |
100 |
101 | 102 | 103 | 104 | HTML bilan oson o'rganish "O'zingiz sinab ko'ring" 105 | 106 | 107 | "O'zingiz sinab ko'ring" muharririmiz yordamida siz HTML kodni tahrirlashingiz va natijani ko'rishingiz mumkin: 108 | 109 | 110 | 111 | 112 | Misol 113 | 114 | {`{`html>`} 115 | {``} 116 | {``} <span style={{color: 'white'}}>Html darslari</span> {``} 117 | {``} 118 | {`

`} Bu heading {`

`}
119 | {`

`} Bu paragraph {`

`}
120 | {``} 121 | {``} 122 |
123 | 124 | 125 | 126 | 127 | 128 |
129 |
130 |
131 | ) 132 | } 133 | 134 | export default Html -------------------------------------------------------------------------------- /src/pages/html1dars.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Flex , Heading , Button , Text , Image} from '@chakra-ui/react' 2 | import { HamburgerIcon , CloseIcon } from '@chakra-ui/icons' 3 | import Sidebar from '../components/sidebarhtml/sidebarhtml' 4 | import { 5 | Drawer, 6 | DrawerBody, 7 | DrawerFooter, 8 | DrawerHeader, 9 | DrawerOverlay, 10 | DrawerContent, 11 | DrawerCloseButton, 12 | useDisclosure, 13 | useToast,Divider 14 | } from '@chakra-ui/react' 15 | import AccordionItenm from '../components/accordion/accordion' 16 | import CopyToClipboard from 'react-copy-to-clipboard' 17 | import { useEffect, useState } from 'react' 18 | import { video, vsc, vsp } from '../assets' 19 | const Html1dars = () => { 20 | const { isOpen, onOpen, onClose } = useDisclosure() 21 | const [placement, setPlacement] = useState('left') 22 | const [size, setSize] = useState('') 23 | const [clipboard , setClipboard] = useState(false) 24 | const toast = useToast() 25 | 26 | const handleClip = () => { 27 | setClipboard(true) 28 | toast({ 29 | position: 'top-right', 30 | render: () => ( 31 | 32 | Nusxa olindi! 33 | 34 | ), 35 | }) 36 | } 37 | const handleClick = (newSize) => { 38 | setSize(newSize) 39 | onOpen() 40 | } 41 | const nandleClose = () => { 42 | onClose() 43 | } 44 | const sizes = ['md'] 45 | useEffect(() => { 46 | window.scroll(0,0) 47 | }, []) 48 | return ( 49 | 50 | 51 | 52 | {onOpen && 53 | 54 | } 55 | 56 | {sizes.map((size) => ( 57 | 60 | 61 | ))} 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | HTML O’rnatish 74 | 75 | 76 | 77 | 78 | 79 | 80 | 1-Qadam 81 | Visuale studio dasturini yusklash 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 2-Qadam 91 | VS code ga kirish va papka ochish 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 3-Qadam 102 | Papkadan so’ng file ochish fileni nomi har doim projectda bitta index.html bo’lish kerak bo’ladi chunki brouser faqar index filenigina tushunadi html tehnalogiyasini o’rganyotdanizda file nomi ohiri tehnalogiya nomi bilan tugashi shart bo’ladi yani index.html 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 4-Qadam 113 | File ichiga kiriladi va boshlang’ich kodlar chaqirildi kodlarni ! shu belgi yoki html5 buyrug’i yordamida chiqiriladi. 114 | 115 | Misol 116 | 117 | {`{`html`} {`>`} 118 | {`lang= "en" {`>`} 119 | {` `} 120 | 121 | {`{`"UTF-8"`} {`>`} 122 | {`{`"X-UA-Compatible"`} {`content=`} {`"IE=edge"`} {`>`} 123 | {`"viewport" content= "width=device-width, initial-scale=1.0" {`>`} 124 | {` `} <span style={{color: 'white'}}> Document</span> {``} 125 | {` `} 126 | {` `} 127 | Kod yoziladi 128 | {` `} 129 | {` `} 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | ) 142 | } 143 | 144 | export default Html1dars -------------------------------------------------------------------------------- /src/pages/html2dars.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Flex , Heading , Button , Text , Image} from '@chakra-ui/react' 2 | import { HamburgerIcon , CloseIcon } from '@chakra-ui/icons' 3 | import Sidebar from '../components/sidebarhtml/sidebarhtml' 4 | import { 5 | Drawer, 6 | DrawerBody, 7 | DrawerFooter, 8 | DrawerHeader, 9 | DrawerOverlay, 10 | DrawerContent, 11 | DrawerCloseButton, 12 | useDisclosure, 13 | useToast,Divider 14 | } from '@chakra-ui/react' 15 | import AccordionItenm from '../components/accordion/accordion' 16 | import CopyToClipboard from 'react-copy-to-clipboard' 17 | import { useEffect, useState } from 'react' 18 | 19 | const Html2dars = () => { 20 | const { isOpen, onOpen, onClose } = useDisclosure() 21 | const [placement, setPlacement] = useState('left') 22 | const [size, setSize] = useState('') 23 | const [clipboard , setClipboard] = useState(false) 24 | const toast = useToast() 25 | 26 | const handleClip = () => { 27 | setClipboard(true) 28 | toast({ 29 | position: 'top-right', 30 | render: () => ( 31 | 32 | Nusxa olindi! 33 | 34 | ), 35 | }) 36 | } 37 | const handleClick = (newSize) => { 38 | setSize(newSize) 39 | onOpen() 40 | } 41 | const nandleClose = () => { 42 | onClose() 43 | } 44 | const sizes = ['md'] 45 | useEffect(() => { 46 | window.scroll(0,0) 47 | }, []) 48 | return ( 49 | 50 | 51 | 52 | {onOpen && 53 | 54 | } 55 | 56 | {sizes.map((size) => ( 57 | 60 | 61 | ))} 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | HTML asosiy misollar 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | HTML hujjatlar 82 | Barcha HTML hujjatlari hujjat turi deklaratsiyasi bilan boshlanishi kerak: {`.`} 83 | HTML hujjatining o'zi {` bilan boshlanadi va `} bilan tugaydi. 84 | HTML hujjatining ko'rinadigan qismi {` va `} orasida joylashgan. 85 | 86 | 87 | 88 | 89 | 90 | Misol 91 | 92 | {`{`html`} {`>`} 93 | {`lang= "en" {`>`} 94 | {` `} 95 | 96 | {` `} <span style={{color: 'white'}}> Document</span> {``} 97 | {` `} 98 | {` `} 99 | 100 | {`

`} Shu holatda {`

`}
101 | {`

`}Shu holatda {`

`}
102 | 103 | {` `} 104 | {` `} 105 | 106 |
107 | 108 | 109 | 110 |
111 |
112 |
113 |
114 |
115 | 116 | 117 | 118 | 119 | 120 | {` Deklaratsiyasi`} 121 | {``} deklaratsiyasi hujjat turini ifodalaydi va brauzerlarga veb-sahifalarni to'g'ri ko'rsatishga yordam beradi. 122 | U faqat bir marta, sahifaning yuqori qismida (har qanday HTML teglaridan oldin) paydo bo'lishi kerak. 123 | {``} deklaratsiyasi katta-kichik harflarga sezgir emas. 124 | HTML5 uchun {``} deklaratsiyasi: 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | {` {`html `} {`>`} 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 |
144 |
145 | ) 146 | } 147 | 148 | export default Html2dars -------------------------------------------------------------------------------- /src/pages/html3dars.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Flex , Heading , Button , Text , Image} from '@chakra-ui/react' 2 | import { HamburgerIcon , CloseIcon } from '@chakra-ui/icons' 3 | import Sidebar from '../components/sidebarhtml/sidebarhtml' 4 | import { 5 | Drawer, 6 | DrawerBody, 7 | DrawerFooter, 8 | DrawerHeader, 9 | DrawerOverlay, 10 | DrawerContent, 11 | DrawerCloseButton, 12 | useDisclosure, 13 | useToast,Divider 14 | } from '@chakra-ui/react' 15 | import AccordionItenm from '../components/accordion/accordion' 16 | import CopyToClipboard from 'react-copy-to-clipboard' 17 | import { useEffect, useState } from 'react' 18 | import { vsc, vsp } from '../assets' 19 | 20 | const Html3dars = () => { 21 | const { isOpen, onOpen, onClose } = useDisclosure() 22 | const [placement, setPlacement] = useState('left') 23 | const [size, setSize] = useState('') 24 | const [clipboard , setClipboard] = useState(false) 25 | const toast = useToast() 26 | 27 | const handleClip = () => { 28 | setClipboard(true) 29 | toast({ 30 | position: 'top-right', 31 | render: () => ( 32 | 33 | Nusxa olindi! 34 | 35 | ), 36 | }) 37 | } 38 | const handleClick = (newSize) => { 39 | setSize(newSize) 40 | onOpen() 41 | } 42 | const nandleClose = () => { 43 | onClose() 44 | } 45 | const sizes = ['md'] 46 | useEffect(() => { 47 | window.scroll(0,0) 48 | }, []) 49 | return ( 50 | 51 | 52 | 53 | {onOpen && 54 | 55 | } 56 | 57 | {sizes.map((size) => ( 58 | 61 | 62 | ))} 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | HTML Hedinglar 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | HTML sarlavhalari veb-sahifada ko'rsatmoqchi bo'lgan sarlavhalar yoki subtitrlardir. 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | Misol 91 | 92 | Heading 1 93 | Heading 2 94 | Heading 3 95 | Heading 4 96 | Heading 5 97 | Heading 6 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | HTML Hedinglar 111 | HTML sarlavhalari {`

dan

`} teglari bilan belgilanadi. 112 | {`

eng muhim sarlavhani belgilaydi.

`} eng muhim sarlavhani belgilaydi. 113 | 114 | 115 | 116 | 117 | 118 | Misol 119 | 120 | {`

`} Heading 1 {`

`}
121 | {`

`} Heading 2 {`

`}
122 | {`

`} Heading 3 {`

`}
123 | {`

`} Heading 4 {`

`}
124 | {`
`} Heading 5 {`
`}
125 | {`
`} Heading 6 {`
`}
126 |
127 | 128 | 129 | 130 |
131 |
132 |
133 | 134 | 135 | 136 | 137 | ) 138 | } 139 | 140 | export default Html3dars -------------------------------------------------------------------------------- /src/pages/htmlCode.jsx: -------------------------------------------------------------------------------- 1 | import { Box , Flex , Heading , Button , Text , Image , Input , FormLabel, HStack, Radio, RadioGroup} from '@chakra-ui/react' 2 | import { HamburgerIcon , CloseIcon } from '@chakra-ui/icons' 3 | import Sidebar from '../components/sidebarhtml/sidebarhtml' 4 | import { 5 | Drawer, 6 | DrawerBody, 7 | DrawerFooter, 8 | DrawerHeader, 9 | DrawerOverlay, 10 | DrawerContent, 11 | DrawerCloseButton, 12 | useDisclosure, 13 | useToast,Divider, 14 | UnorderedList, 15 | ListItem 16 | } from '@chakra-ui/react' 17 | import AccordionItenm from '../components/accordion/accordion' 18 | import CopyToClipboard from 'react-copy-to-clipboard' 19 | import { useEffect, useState } from 'react' 20 | import { 21 | Table, 22 | Thead, 23 | Tbody, 24 | Tfoot, 25 | Tr, 26 | Th, 27 | Td, 28 | TableCaption, 29 | TableContainer, 30 | } from '@chakra-ui/react' 31 | import { Search2Icon } from '@chakra-ui/icons' 32 | import { data } from '../htmlCode' 33 | const HtmlCode = () => { 34 | const { isOpen, onOpen, onClose } = useDisclosure() 35 | const [placement, setPlacement] = useState('left') 36 | const [size, setSize] = useState('') 37 | const [clipboard , setClipboard] = useState(false) 38 | const toast = useToast() 39 | const [search , setSearch] = useState("") 40 | const handleClip = () => { 41 | setClipboard(true) 42 | toast({ 43 | position: 'top-right', 44 | render: () => ( 45 | 46 | Nusxa olindi! 47 | 48 | ), 49 | }) 50 | } 51 | const handleClick = (newSize) => { 52 | setSize(newSize) 53 | onOpen() 54 | } 55 | const nandleClose = () => { 56 | onClose() 57 | } 58 | const sizes = ['md'] 59 | useEffect(() => { 60 | window.scroll(0,0) 61 | }, []) 62 | 63 | 64 | let input = document.querySelector('#inp') 65 | document.addEventListener('keyup', e => { 66 | if(e.ctrlKey && e.key == "/"){ 67 | input.focus(); 68 | } 69 | }) 70 | return ( 71 | 72 | 73 | 74 | {onOpen && 75 | 76 | } 77 | 78 | {sizes.map((size , i) => ( 79 | 82 | 83 | ))} 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | HTML Teglari Alifbo Tartibida Tartiblangan 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | setSearch(e.target.value)}> 108 | Ctrl + / 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | {data.filter((item => { 123 | return search.toLowerCase() == '' ? item : item.tag.toLowerCase().includes(search) 124 | })).map((item) => ( 125 | 126 | 127 | 128 | 129 | 130 | ))} 131 | 132 | 133 |
TuriTavsif
{item.tag}{item.desc}
134 |
135 | 136 | 137 | Taglar soni {data.length} ta dan iborat 138 | 139 |
140 | 141 |
142 |
143 | 144 | 145 | 146 | 147 | 148 |
149 | ) 150 | } 151 | 152 | export default HtmlCode -------------------------------------------------------------------------------- /src/pages/pageNotFound.jsx: -------------------------------------------------------------------------------- 1 | import { 2 | createStyles, 3 | Image, 4 | Container, 5 | Title, 6 | Text, 7 | Button, 8 | SimpleGrid, 9 | rem, 10 | } from '@mantine/core'; 11 | import { notFound} from '../assets' 12 | import { Link } from 'react-router-dom'; 13 | import { Box } from '@chakra-ui/react'; 14 | import { ArrowBackIcon } from '@chakra-ui/icons'; 15 | 16 | const useStyles = createStyles((theme) => ({ 17 | root: { 18 | paddingTop: rem(80), 19 | paddingBottom: rem(80), 20 | }, 21 | 22 | title: { 23 | fontWeight: 900, 24 | fontSize: rem(34), 25 | marginBottom: theme.spacing.md, 26 | fontFamily: `Greycliff CF, ${theme.fontFamily}`, 27 | 28 | [theme.fn.smallerThan('sm')]: { 29 | fontSize: rem(32), 30 | }, 31 | }, 32 | 33 | control: { 34 | [theme.fn.smallerThan('sm')]: { 35 | width: '100%', 36 | }, 37 | }, 38 | 39 | mobileImage: { 40 | [theme.fn.largerThan('sm')]: { 41 | display: 'none', 42 | }, 43 | }, 44 | 45 | desktopImage: { 46 | [theme.fn.smallerThan('sm')]: { 47 | display: 'none', 48 | }, 49 | }, 50 | })); 51 | 52 | const PageNotFound = () => { 53 | const { classes } = useStyles(); 54 | 55 | return ( 56 | 57 | 58 | 59 | 60 | 61 |
62 | Nimadir noto‘g‘ri... 63 | 64 | Siz ochmoqchi bo'lgan sahifa mavjud emas. Siz manzilni yoki manzilni noto'g'ri kiritgan bo'lishingiz mumkin 65 | sahifa boshqa URL manziliga ko'chirildi. Agar buni xato deb hisoblasangiz, qo'llab-quvvatlash xizmatiga murojaat qiling. 66 | 67 | 71 |
72 | 73 | 74 | 75 |
76 |
77 |
78 | ); 79 | } 80 | 81 | 82 | export default PageNotFound 83 | -------------------------------------------------------------------------------- /vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite' 2 | import react from '@vitejs/plugin-react' 3 | 4 | // https://vitejs.dev/config/ 5 | export default defineConfig({ 6 | plugins: [react()], 7 | }) 8 | --------------------------------------------------------------------------------