[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE)
[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/)
[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/)
[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pull/)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)

[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/)
[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/)
[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/)

[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners)

# नवशिक्यांसाठी वेब विकास - एक कोर्स

सर्व JavaScript, CSS आणि HTML मूलभूत गोष्टींचा समावेश असलेला 12-आठवड्याचा, 24-धडा अभ्यासक्रम ऑफर करताना Microsoft च्या Azure Cloud Advocates खूश आहेत. प्रत्येक धड्यात पाठपूर्व आणि पाठोत्तर प्रश्नमंजुषा, धडा पूर्ण करण्यासाठी लिखित सूचना, उपाय, असाइनमेंट आणि बरेच काही समाविष्ट आहे. आमची प्रकल्प-आधारित अध्यापनशास्त्र तुम्हाला तुम्ही तयार करत असताना शिकण्याची परवानगी देते, नवीन कौशल्ये 'स्टिक=' करण्याचा एक सिद्ध मार्ग.

** आमच्या लेखक जेन लूपर, ख्रिस नॉरिंग, ख्रिस्तोफर हॅरिसन, जास्मिन ग्रीनवे, योहान लासोरा, फ्लोर ड्राईस आणि स्केचनोट कलाकार टोमोमी इमुरा यांचे मनःपूर्वक आभार!**

> **शिक्षक**, आम्ही हा अभ्यासक्रम कसा वापरायचा याबद्दल [काही टिपा](for-teachers.en.md) समाविष्ट केल्या आहेत. तुम्हाला तुमचा स्वतःचा मजकूर तयार करायचा असल्यास, आम्ही एक [मजकूर टेम्पलेट](leson-template/translations/README.mar.md) देखील समाविष्ट केले आहे.

> **विद्यार्थी**, या कोर्समध्ये स्वतःहून प्रवेश करण्यासाठी, संपूर्ण रेपो फोर्क करा आणि स्वतःच व्यायाम पूर्ण करा, व्याख्यानापूर्वीच्या प्रश्नमंजुषापासून सुरुवात करा, नंतर व्याख्यान वाचून उर्वरित क्रियाकलाप पूर्ण करा. सोल्यूशन कोड कॉपी करण्याऐवजी, धडे समजून घेऊन प्रकल्प तयार करण्याचा प्रयत्न करा; तथापि हा कोड प्रत्येक प्रकल्पाभिमुख धड्यातील /सोल्यूशन्स फोल्डरमध्ये उपलब्ध आहे. दुसरी कल्पना म्हणजे मित्रांसोबत अभ्यास गट तयार करणे आणि एकत्रितपणे साहित्याचा अभ्यास करणे. पुढील अभ्यासासाठी, आम्ही [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-13441-cxa) आणि पाहिल्यानंतर खालील व्हिडिओची शिफारस करतो.

[![प्रोमो व्हिडिओ](../images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "प्रोमो व्हिडिओ")

> प्रकल्प आणि ज्या लोकांनी तो बनवला त्याबद्दलच्या व्हिडिओसाठी वरील इमेजवर क्लिक करा!

## अध्यापनशास्त्र

हा अभ्यासक्रम तयार करताना आम्ही दोन अध्यापनशास्त्रीय तत्त्वे निवडली: ते प्रकल्प-आधारित असल्याची खात्री करणे आणि त्यात पुनरावृत्ती झालेल्या प्रश्नमंजुषा समाविष्ट आहेत. या मालिकेच्या शेवटी, विद्यार्थ्यांनी एक टायपिंग गेम, एक व्हर्च्युअल टेरॅरियम, एक 'ग्रीन' ब्राउझर विस्तार, एक 'स्पेस इन्व्हेस्टर्स' प्रकारचा गेम आणि एक व्यवसाय-प्रकार बँकिंग अॅप तयार केला असेल आणि JavaScript च्या मूलभूत गोष्टी शिकल्या असतील. आजच्या वेब डेव्हलपरच्या आधुनिक टूलचेनसह HTML आणि CSS.

सामग्री प्रकल्पांशी संरेखित असल्याची खात्री करून, प्रक्रिया विद्यार्थ्यांसाठी अधिक आकर्षक बनविली जाते आणि संकल्पनांची धारणा वाढविली जाईल. आम्ही संकल्पनांचा परिचय करून देण्यासाठी JavaScript मूलभूत गोष्टींमध्ये अनेक स्टार्टर धडे देखील लिहिले, ज्यात व्हिडिओ ट्यूटोरियलच्या "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT) समाविष्ट आहे. .mc_id=academic-13441-cxa)", ज्यांच्या काही लेखकांनी या अभ्यासक्रमासाठी योगदान दिले आहे.

शिवाय, वर्गापूर्वी कमी-स्‍टेक्‍स क्विझ विद्यार्थ्‍याचा विषय शिकण्‍याचा हेतू ठरवते, तर वर्गानंतर दुसरी क्विझ कायम ठेवण्‍याची खात्री देते. हा कोर्स लवचिक आणि मजेदार आणि संपूर्ण किंवा काही प्रमाणात घेतला जाऊ शकतो. प्रकल्प लहान सुरू होतात आणि 12 आठवड्यांच्या चक्राच्या शेवटी ते अधिकाधिक जटिल बनतात.

आम्ही जावास्क्रिप्ट फ्रेमवर्कची ओळख करून देण्याचे हेतुपुरस्सर टाळले आहे, फ्रेमवर्क स्वीकारण्यापूर्वी वेब डेव्हलपर म्हणून आवश्यक असलेल्या मूलभूत कौशल्यांवर लक्ष केंद्रित करण्यासाठी, हा अभ्यासक्रम पूर्ण करण्यासाठी पुढील चांगली पायरी म्हणजे व्हिडिओंचा दुसरा संग्रह. Node.js बद्दल याद्वारे शिकू: "[प्रारंभिक मालिका ते: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-13441 -cxa)".

आमची [आचारसंहिता](/CODE_OF_CONDUCT.md), [योगदान](/CONTRIBUTING.md), आणि [अनुवाद](/TRANSLATIONS.md) मार्गदर्शक तत्त्वे शोधा. आम्ही तुमच्या रचनात्मक अभिप्रायाचे स्वागत करतो!
,
## प्रत्येक धड्यात हे समाविष्ट आहे:

- पर्यायी स्केचनोट
- पर्यायी पूरक व्हिडिओ
- प्री-लेक्चर वॉर्मअप क्विझ
- लिखित मजकूर
- प्रकल्प-आधारित धड्यांसाठी, प्रकल्प तयार करण्यासाठी चरण-दर-चरण मार्गदर्शक
- ज्ञान तपासणी
- एक आव्हान
- परिशिष्ट वाचन
- असाइनमेंट
- पोस्ट लेक्चर क्विझ

> **क्विझबद्दल एक टीप**: सर्व प्रश्नमंजुषा [या अॅपमध्ये](https://ashy-river-0debb7803.1.azurestaticapps.net/)

## धडा

|       |                        प्रकल्पाचे नाव                         |                         शिकवलेल्या संकल्पना                         | शिकण्याचे उद्दिष्ट                                                                                                        |                                                     लिंक केलेला मजकूर                                                     | लिखित मजकूर | स्केचनोट | असाइनमेंट | नवशिक्या क्विझ | अंतिम क्विझ |  विडिओ  |      लेखक       |
| :---: | :------------------------------------------------------: | :----------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------ | :-----------------------------------------------------------------------------------------------------------------: | :------: | :---: | :----: | :----------: | :---------: | :---: | :-------------: |
|  01   |                          सुरू करण्यासाठी                          |                  ट्रैड प्रोग्रामिंग और उपकरणों का परिचय                  | बर्‍याच प्रोग्रामिंग भाषांमागील मूलभूत गोष्टी जाणून घ्या आणि सॉफ्टवेअर जे व्यावसायिक विकासकांना त्यांची कामे करण्यात मदत करतात                          | [क्वाड प्रोग्रामिंग आणि टूल्सचा परिचय](/1-getting-started-lessons/1-intro-to-programming-languages/translations/README.hi.md) |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   ✅   |      जैस्मिन       |
|  02   |                          सुरू करण्यासाठी                          |            टीमसोबत काम करण्यासह गिटहबच्या मूलभूत गोष्टी             | तुमच्या प्रोजेक्टमध्ये GitHub कसे वापरावे, कोड बेसवर इतरांशी सहयोग कसे करावे                                                       |                 [GitHub परिचय](/1-getting-started-lessons/2-github-basics/translations/README.hi.md)                 |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   🛑   |       फलर       |
|  03   |                          सुरू करण्यासाठी                          |                            प्रवेशयोग्यता                            | वेब ऍक्सेसिबिलिटीची मूलभूत माहिती जाणून घ्या                                                                                               |                  [सुलभता निधी](/1-getting-started-lessons/3-accessibility/translations/README.hi.md)                  |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   🛑   |     क्रिस्टोफर      |
|  04   |                        JS च्या मूलभूत गोष्टी                        |                       जावास्क्रिप्ट डेटा प्रकार                        | Javascript डेटा प्रकारांची मूलभूत माहिती                                                                                            |                           [डेटा प्रकार](/2-js-basics/1-data-types/translations/README.hi.md)                            |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   ✅   |      जैस्मिन       |
|  05   |                        JS च्या मूलभूत गोष्टी                        |                        कार्ये आणि पद्धती                        | अनुप्रयोगाचा तर्क प्रवाह व्यवस्थापित करण्यासाठी कार्ये आणि पद्धतींबद्दल जाणून घ्या                                                        |                    [फंगक्शनस और मेथड्स](/2-js-basics/2-functions-methods/translations/README.hi.md)                     |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   ✅   | जैस्मिन and क्रिस्टोफर |
|  06   |                        JS च्या मूलभूत गोष्टी                        |                      JS सह निर्णय                       | ननिर्णय घेण्याच्या पद्धती वापरून तुमच्या कोडमध्ये परिस्थिती निर्माण करायला शिका                                                                     |                        [निर्णय घेणे](/2-js-basics/3-making-decisions/translations/README.hi.md)                         |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   ✅   |      जैस्मिन       |
|  07   |                        JS च्या मूलभूत गोष्टी                        |                         अररेस और लूपस                          | Javascript मध्ये अॅरे आणि ल्युपस वापरून डेटासह कार्य करा                                                                      |                        [अररेस और लूपस](/2-js-basics/4-arrays-loops/translations/README.hi.md)                         |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   ✅   |      जैस्मिन       |
|  08   | [टेरारियम](/3-terrarium/solution/translations/README.hi.md) |                       सराव मध्ये HTML                       | लेआउटवर लक्ष केंद्रित करून ऑनलाइन टेरेरियम तयार करण्यासाठी HTML तयार करा                                                      |                      [HTML चा परिचय](/3-terrarium/1-intro-to-html/translations/README.hi.md)                       |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   🛑   |       जेन        |
|  09   | [टेरारियम](/3-terrarium/solution/translations/README.hi.md) |                            सीएसएस                             | पृष्ठ प्रतिसादासह CSS च्या मूलभूत गोष्टींवर लक्ष केंद्रित करून टेरेरियम ऑनलाइन स्टाइल करण्यासाठी CSS तयार करा                 |                        [CSS चा परिचय](/3-terrarium/2-intro-to-css/translations/README.hi.md)                         |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   🛑   |       जेन        |
|  10   |              [टेरारियम](/3-terrarium/solution/README.md)              |                   Javascript क्लोजर, DOM मॅनिपुलेशन                   | क्लोजर आणि डीओएम मॅनिपुलेशनवर लक्ष केंद्रित करून ड्रॅग/ड्रॉप इंटरफेस म्हणून टेरेरियम फंक्शन तयार करण्यासाठी JavaScript तयार करा               |          [जावास्क्रिप्ट क्लोजर और डोम मनिप्यलैशन](/3-terrarium/3-intro-to-DOM-and-closures/translations/README.hi.md)           |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   🛑   |       जेन        |
|  11   |            [टायपिंग गेम](/4-typing-game/solution/README.md)            |                        एक टायपिंग गेम बनाए                        | तुमच्या JavaScript अॅपचे लॉजिक चालविण्यासाठी कीबोर्ड इव्हेंट कसे वापरायचे ते शिका                                                           |                       [ईवेंट-संचालित प्रोग्रामिंग](/4-typing-game/typing-game/translations/README.hi.md)                       |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   ✅   |     क्रिस्टोफर      |
|  12   |    [ग्रीन ब्राउजर इक्स्टेन्शन](/5-browser-extension/solution/README.md)    |                      ब्राउझरसह कार्य करणे                       | ब्राउझर कसे कार्य करतात, त्यांचा इतिहास जाणून घ्या आणि ब्राउझर विस्तारांचे प्रथम घटक तयार करा                                          |                   [ब्राउझर बद्दल](/5-browser-extension/1-about-browsers/translations/README.hi.md)                   |    ✅     |   ✅   |   ✅    |      ✅       |      ✅      |   🛑   |       जेन        |
|  13   |    [ग्रीन ब्राउजर इक्स्टेन्शन](/5-browser-extension/solution/README.md)    | फॉर्म तयार करणे, API कॉल करणे आणि स्थानिक स्टोरेजमध्ये व्हेरिएबल्स संचयित करणे | लोकल स्टोरेजमध्ये संग्रहित व्हेरिएबल्स वापरून API कॉल करण्यासाठी तुमच्या ब्राउझर विस्ताराचे JavaScript घटक तयार करा                       |      [API, फॉर्म आणि स्थानिक कथा](/5-browser-extension/2-forms-browsers-local-storage/translations/README.hi.md)      |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   ✅   |       जेन        |
|  14   |    [ग्रीन ब्राउजर इक्स्टेन्शन](/5-browser-extension/solution/README.md)    |               ब्राउझर, वेब डिस्प्ले मधील पार्श्वभूमी प्रक्रिया                | विस्ताराचे चिन्ह व्यवस्थापित करण्यासाठी ब्राउझरच्या पार्श्वभूमी प्रक्रिया वापरा; वेब कार्यप्रदर्शन तयार करण्यासाठी काही ऑप्टिमायझेशनबद्दल जाणून घ्या आणि            |      [पार्श्वभूमी कार्ये आणि कार्यप्रदर्शन](/5-browser-extension/3-background-tasks-and-performance/translations/README.hi.md)       |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   🛑   |       जेन        |
|  15   |             [स्पेस गेम](/6-space-game/solution/README.md)             |               JavaScript सह अधिक प्रगत गेम डेव्हलपमेंट                | गेम तयार करण्याच्या तयारीसाठी रचना आणि पब/सब पॅटर्न दोन्ही वापरून वर्ग आणि वारसा याविषयी जाणून घ्या                                 |                    [प्रगत गेम विकासाचा परिचय](/6-space-game/1-introduction/translations/README.hi.md)                     |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   🛑   |       क्रिस       |
|  16   |             [स्पेस गेम](/6-space-game/solution/README.md)             |                        कॅनव्हासवर काढा                        | कॅनव्हास API बद्दल जाणून घ्या, जो स्क्रीनवर घटक काढण्यासाठी वापरला जातो                                                     |                    [कॅनव्हासवर काढा](/6-space-game/2-drawing-to-canvas/translations/README.hi.md)                    |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   🛑   |       क्रिस       |
|  17   |             [स्पेस गेम](/6-space-game/solution/README.md)             |                    स्क्रीनभोवती हलणारे घटक                    | कॅनव्हास API वापरून कार्टेशियन निर्देशांक आणि घटक कसे मिळवायचे ते शोधा                                               |                 [हलणारे घटक](/6-space-game/3-moving-elements-around/translations/README.hi.md)                 |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   🛑   |       क्रिस       |
|  18   |             [स्पेस गेम](/6-space-game/solution/README.md)             |                          टक्कर शोध                         | की दाबून घटक एकमेकांना टक्कर द्या आणि प्रतिक्रिया द्या आणि गेम कार्यप्रदर्शन सुनिश्चित करण्यासाठी कूलडाउन फंक्शन प्रदान करा |                     [टक्कर शोध](/6-space-game/4-collision-detection/translations/README.hi.md)                     |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   🛑   |       क्रिस       |
|  19   |             [स्पेस गेम](/6-space-game/solution/README.md)             |                           स्कोअर ठेवा                            | खेळाची स्थिती आणि कामगिरीवर आधारित गणिताची गणना करा                                                                          |                         [स्कोअर ठेवा](/6-space-game/5-keeping-score/translations/README.hi.md)                          |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   🛑   |       क्रिस       |
|  20   |             [स्पेस गेम](/6-space-game/solution/README.md)             |                 गेम समाप्त करा आणि रीस्टार्ट करा                  | मालमत्ता साफ करणे आणि पुली मूल्ये रीसेट करणे यासह गेम कसा संपवायचा आणि रीस्टार्ट कसा करायचा ते जाणून घ्या                                       |                         [शेवटची स्थिती](/6-space-game/6-end-condition/translations/README.hi.md)                         |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   🛑   |       क्रिस       |
|  21   |            [बैंकिंग एप](/7-bank-project/solution/README.md)            |                 HTML टेम्पलेट्स आणि वेब अॅपमध्ये रूट करा                 | राउटिंग आणि एचटीएमएल टेम्पलेट्स वापरून मल्टीफेस वेबसाइटचे आर्किटेक्चर स्कॅफोल्ड करायला शिका                                               |                  [HTML टेम्पलेट आणि मार्ग](/7-bank-project/1-template-route/translations/README.hi.md)                  |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   ✅   |       योहन       |
|  22   |            [बैंकिंग एप](/7-bank-project/solution/README.md)            |                   लॉगिन आणि नोंदणी फॉर्म तयार करा                    | फॉर्म तयार करणे आणि प्रमाणीकरण दिनचर्या सुपूर्द करणे याबद्दल जाणून घ्या                                                                              |                              [फॉर्म्स](/7-bank-project/2-forms/translations/README.hi.md)                              |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   ✅   |       योहन       |
|  23   |            [बैंकिंग एप](/7-bank-project/solution/README.md)            |                   डेटा कसा आणायचा आणि वापरायचा                    | तुमच्या अॅपवर डेटा कसा प्रवाहित होतो, तो कसा आणायचा, तो कसा संग्रहित करायचा आणि त्याची विल्हेवाट कशी लावायची                                                  |                               [डाटा](/7-bank-project/3-data/translations/README.hi.md)                                |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |   ✅   |       योहन       |
|  24   |            [बैंकिंग एप](/7-bank-project/solution/README.md)            |                      राज्य व्यवस्थापनाच्या संकल्पना                      | तुमचे अ‍ॅप स्थिती कशी राखते आणि ते सेंद्रिय पद्धतीने कसे व्यवस्थापित करते ते जाणून घ्या                                              |                      [स्टेट प्रबंधन](/7-bank-project/4-state-management/translations/README.hi.md)                      |    ✅     |   🛑   |   ✅    |      ✅       |      ✅      |       |       योहन       |

## ऑफलाइन प्रवेश

तुम्ही [Docsify](https://docsify.js.org/#/) वापरून हा दस्तऐवज ऑफलाइन डाउनलोड करू शकता. तुमच्या स्थानिक मशीनवर या रेपोला फोर्क करा, [installed docsify](https://docsify.js.org/#/quickstart) आणि नंतर या रेपोच्या रूट फोल्डरमध्ये `docsify serve` टाइप करा. वेबसाइट तुमच्या लोकलहोस्ट: `localhost:3000` वर पोर्ट 3000 वर दिली जाईल.
