{"id":15209025,"url":"https://github.com/ashishalf/30daysofnodejs","last_synced_at":"2026-01-24T05:02:33.244Z","repository":{"id":252397615,"uuid":"840318239","full_name":"ashishalf/30DaysOfNodejs","owner":"ashishalf","description":"Welcome to the 30 Days of Node.js challenge! This journey will take you through the core concepts of Node.js, allowing you to build a solid foundation and develop powerful applications. Each day covers a specific topic or functionality, guiding you from the basics to more advanced concepts.","archived":false,"fork":false,"pushed_at":"2024-08-09T13:15:48.000Z","size":24,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-17T09:37:52.427Z","etag":null,"topics":["30dayscoding","30daysofnodejs","challenges","coding","coding-challenges","ejs","javascript","mongodb","nodejs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ashishalf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-09T12:43:27.000Z","updated_at":"2024-08-09T13:17:59.000Z","dependencies_parsed_at":"2024-08-09T14:36:31.185Z","dependency_job_id":null,"html_url":"https://github.com/ashishalf/30DaysOfNodejs","commit_stats":null,"previous_names":["ashishalf/30daysofnodejs"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ashishalf/30DaysOfNodejs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashishalf%2F30DaysOfNodejs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashishalf%2F30DaysOfNodejs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashishalf%2F30DaysOfNodejs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashishalf%2F30DaysOfNodejs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ashishalf","download_url":"https://codeload.github.com/ashishalf/30DaysOfNodejs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashishalf%2F30DaysOfNodejs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28712841,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-24T05:01:10.984Z","status":"ssl_error","status_checked_at":"2026-01-24T04:59:18.328Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["30dayscoding","30daysofnodejs","challenges","coding","coding-challenges","ejs","javascript","mongodb","nodejs"],"created_at":"2024-09-28T07:20:33.125Z","updated_at":"2026-01-24T05:02:33.212Z","avatar_url":"https://github.com/ashishalf.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 30 Days of Node.js\nWelcome to the 30 Days of Node.js challenge! This journey will take you through the core concepts of Node.js, allowing you to build a solid foundation and develop powerful applications. Each day covers a specific topic or functionality, guiding you from the basics to more advanced concepts.\n## Table of Contents\nDay 1: Hello World\nLearn how to create your first Node.js application that outputs \"Hello World\" to the console.\n\nDay 2: Read File\nDiscover how to read files using Node.js fs (File System) module.\n\nDay 3: Write File\nExplore how to write data to a file using the fs module in Node.js.\n\nDay 4: HTTP Server\nCreate a basic HTTP server using Node.js to serve web content.\n\nDay 5: Command Line Application\nBuild a simple command-line application using Node.js that takes user input and provides output.\n\nDay 6: Print All File Names\nWrite a script that prints the names of all files in a directory.\n\nDay 7: Simple Calculator\nDevelop a simple calculator that can add, subtract, multiply, and divide numbers.\n\nDay 8: Event Emitter\nUnderstand how to use Node.js's EventEmitter to create custom events and handle them.\n\nDay 9: JSON File Handling\nLearn to read from and write to JSON files using Node.js.\n\nDay 10: TCP Server\nSet up a TCP server in Node.js to handle data communication over TCP/IP.\n\nDay 11: Hello using Express\nGet started with Express.js by creating a simple \"Hello World\" application.\n\nDay 12: Route Parameters\nLearn how to handle route parameters in Express.js for dynamic URL handling.\n\nDay 13: Query Parameters\nUnderstand how to handle query parameters in Express.js.\n\nDay 14: Serve Static Files\nSet up an Express.js server to serve static files like HTML, CSS, and JavaScript.\n\nDay 15: Middleware\nDive into Express.js middleware to handle requests, responses, and perform additional processing.\n\nDay 16: JSON\nUnderstand how to work with JSON in Node.js for data exchange.\n\nDay 17: JSON Response\nCreate an Express.js server that responds with JSON data.\n\nDay 18: Error Handling\nLearn to handle errors gracefully in Node.js and Express.js applications.\n\nDay 19: CRUD Operations\nImplement Create, Read, Update, and Delete (CRUD) operations using Express.js and a database.\n\nDay 20: EJS Template Engine\nUse EJS (Embedded JavaScript) as a templating engine for building dynamic web pages.\n\nDay 21: Get Data from MongoDB\nLearn how to retrieve data from a MongoDB database using Node.js.\n\nDay 22: Insert Data using MongoDB\nInsert data into a MongoDB database using Node.js.\n\nDay 23: Update Data using MongoDB\nUpdate existing data in a MongoDB database using Node.js.\n\nDay 24: Delete Data using MongoDB\nDelete data from a MongoDB database using Node.js.\n\nDay 25: Create a Mongoose Schema\nDefine and use Mongoose schemas to model data in MongoDB.\n\nDay 26: Database Connection using Mongoose\nConnect to a MongoDB database using Mongoose and perform basic operations.\n\nDay 27: App using Mongoose\nBuild a complete application using Node.js, Express, and Mongoose to interact with MongoDB.\n\nDay 28: Final Project - Part 1\nStart building a comprehensive project that combines all the concepts learned.\n\nDay 29: Final Project - Part 2\nContinue developing the final project, focusing on implementing core functionalities.\n\nDay 30: Final Project - Part 3\nComplete and finalize the project, ensuring it is fully functional and well-documented.\n\n## Reference\nThis challenge is inspired by the Node.js tutorials from DropxOut's YouTube playlist: [Node.js Playlist](https://www.youtube.com/playlist?list=PLZWk1lAlHIsfB-CgWZfkEH6OhAj6axlOB)\n.\n\n## Get Started\nClone this repository and start your Node.js journey by following the day-wise challenges. Happy coding!\n```bash\ngit clone https://github.com/ashishalf/30DaysOfNodejs.git\ncd 30DaysOfNodejs\n```\nLet the challenge begin! 🚀\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashishalf%2F30daysofnodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fashishalf%2F30daysofnodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashishalf%2F30daysofnodejs/lists"}