{"id":1635,"date":"2026-09-13T06:29:30","date_gmt":"2026-09-13T06:29:30","guid":{"rendered":"https:\/\/nayananimsara.online\/?p=1635"},"modified":"2026-09-13T06:37:47","modified_gmt":"2026-09-13T06:37:47","slug":"how-to-create-first-django-project","status":"publish","type":"post","link":"https:\/\/nayananimsara.online\/how-to-create-first-django-project\/","title":{"rendered":"How to Create Your First Django Project in 2026 (7 Easy Steps)"},"content":{"rendered":"\n<h1 id=\"how-to-create-your-first-django-project-in-2026-7-easy-steps\" class=\"wp-block-heading\">How to Create Your First Django Project in 2026 (7 Easy Steps)<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">how to create first Django project, I still remember the first time I opened my terminal and typed <code>django-admin startproject<\/code>. I had no idea what half the files meant, and honestly, I broke my project twice before I got a page to load. So if you&#8217;re sitting there right now, confused about how to create your first Django project, I want you to know \u2014 that confusion is completely normal, and by the end of this post, you&#8217;ll have your own working project running on your local server.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I&#8217;m writing this the way I wish someone had explained it to me. No jargon dump, no assuming you already know what a virtual environment is. Just a straight walkthrough.<\/p>\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><h2>Table of Contents<\/h2><nav><ul><li><a href=\"#how-to-create-your-first-django-project-in-2026-7-easy-steps\">How to Create Your First Django Project in 2026 (7 Easy Steps)<\/a><ul><li><a href=\"#why-django-is-a-great-place-to-start\">Why Django Is a Great Place to Start<\/a><\/li><li><a href=\"#step-1-install-python-and-check-your-version\">Step 1: Install Python and Check Your Version<\/a><\/li><li><a href=\"#step-2-create-a-virtual-environment\">Step 2: Create a Virtual Environment<\/a><\/li><li><a href=\"#step-3-install-django\">Step 3: Install Django<\/a><\/li><li><a href=\"#step-4-create-your-first-django-project\">Step 4: Create Your First Django Project<\/a><\/li><li><a href=\"#step-5-run-the-development-server\">Step 5: Run the Development Server<\/a><\/li><li><a href=\"#step-6-create-your-first-app\">Step 6: Create Your First App<\/a><\/li><li><a href=\"#step-7-make-your-first-migration\">Step 7: Make Your First Migration<\/a><\/li><li><a href=\"#a-few-things-i-wish-i-knew-earlier\">A Few Things I Wish I Knew Earlier<\/a><\/li><li><a href=\"#final-thoughts\">Final Thoughts<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n\n\n\n<h2 id=\"why-django-is-a-great-place-to-start\" class=\"wp-block-heading\">Why Django Is a Great Place to Start<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Before I show you how to create your first Django project, let me quickly tell you why I still recommend Django to almost every beginner I mentor at Nima Academy. It&#8217;s a Python framework, which means if you already know a bit of Python, you&#8217;re not starting from zero. It also comes with a ton of built-in tools \u2014 an admin panel, authentication, and a solid folder structure \u2014 so you&#8217;re not reinventing the wheel every time you build something.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I&#8217;ve tried Flask, FastAPI, and a couple of Node frameworks too, but Django is what I always come back to when I want to build something real, fast.<\/p>\n\n\n\n<h2 id=\"step-1-install-python-and-check-your-version\" class=\"wp-block-heading\">Step 1: Install Python and Check Your Version<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You need Python installed first. Open your terminal and type:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python --version<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If you see something like Python 3.11 or higher, you&#8217;re good. If not, grab it from <a href=\"https:\/\/www.python.org\/downloads\/\" target=\"_blank\" rel=\"noopener\">python.org<\/a> and install it before moving forward.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If Your Are Using Mac OS please Specify Python Version As A Python 3<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"820\" height=\"118\" src=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image.png\" alt=\"how to create first Django project tutorial screenshot\" class=\"wp-image-1636\" srcset=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image.png 820w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-300x43.png 300w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-764x110.png 764w\" sizes=\"(max-width: 820px) 100vw, 820px\" \/><\/figure>\n\n\n\n<h2 id=\"step-2-create-a-virtual-environment\" class=\"wp-block-heading\">Step 2: Create a Virtual Environment<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This step trips up a lot of beginners, but it&#8217;s just about keeping your project&#8217;s packages separate from everything else on your computer. I never skip this, even for tiny practice projects.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python -m venv env #First Command\nvirtualenv env #Secound Command<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img decoding=\"async\" width=\"1794\" height=\"1080\" src=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-1.png\" alt=\"Django project setup for beginners\" class=\"wp-image-1637\" srcset=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-1.png 1794w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-1-300x181.png 300w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-1-767x462.png 767w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-1-1024x616.png 1024w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-1-1536x925.png 1536w\" sizes=\"(max-width: 1794px) 100vw, 1794px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Then activate it:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Windows: <code>env\\Scripts\\activate<\/code><\/li>\n\n\n\n<li>Mac\/Linux: <code>sourceenv\/bin\/activate<\/code><\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img decoding=\"async\" width=\"1024\" height=\"158\" src=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-2-1024x158.png\" alt=\"\" class=\"wp-image-1638\" srcset=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-2-1024x158.png 1024w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-2-300x46.png 300w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-2-766x118.png 766w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-2.png 1026w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">You&#8217;ll know it worked when you see <code>(myenv)<\/code> show up at the start of your terminal line.<\/p>\n\n\n\n<h2 id=\"step-3-install-django\" class=\"wp-block-heading\">Step 3: Install Django<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">With your virtual environment active, run:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>pip install django<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"511\" src=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-3-1024x511.png\" alt=\"\" class=\"wp-image-1639\" srcset=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-3-1024x511.png 1024w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-3-300x150.png 300w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-3-767x383.png 767w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-3.png 1082w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">I usually check the version right after, just to be safe:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>django-admin --version<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"968\" height=\"100\" src=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-4.png\" alt=\"\" class=\"wp-image-1640\" srcset=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-4.png 968w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-4-300x31.png 300w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-4-765x79.png 765w\" sizes=\"(max-width: 968px) 100vw, 968px\" \/><\/figure>\n\n\n\n<h2 id=\"step-4-create-your-first-django-project\" class=\"wp-block-heading\">Step 4: Create Your First Django Project<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Here&#8217;s the actual moment you&#8217;ve been waiting for. Run this command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>django-admin startproject myfirstproject<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Move into that folder:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd myfirstproject<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If you open the folder now, you&#8217;ll see a few files \u2014 <code>manage.py<\/code>, and a subfolder with the same project name containing <code>settings.py<\/code>, <code>urls.py<\/code>, and a couple of others. Don&#8217;t worry about understanding every file today. I didn&#8217;t either, and it clicked over time.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If You Need Create Your Django Project In Your Root Folder Please Follow Bellow Command Im Using Generally That Secound Method <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>django-admin startproject myfirstproject .<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"222\" src=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-5-1024x222.png\" alt=\"\" class=\"wp-image-1641\" srcset=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-5-1024x222.png 1024w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-5-300x65.png 300w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-5-766x166.png 766w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-5-1536x333.png 1536w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-5-2048x444.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">In This Method You No Need To Open FolderProject Folder Manage.py create in your root Project DIR , you&#8217;ll see a few files \u2014 <code>manage.py<\/code>, and a subfolder with the same project name containing <code>settings.py<\/code>, <code>urls.py<\/code>, and a couple of others. Don&#8217;t worry about understanding every file today. I didn&#8217;t either, and it clicked over time.<\/p>\n\n\n\n<h2 id=\"step-5-run-the-development-server\" class=\"wp-block-heading\">Step 5: Run the Development Server<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This is the part that makes it feel real. Type:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python manage.py runserver<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Now open your browser and go to <code>http:\/\/127.0.0.1:8000\/<\/code>. If you see Django&#8217;s welcome rocket page, congratulations \u2014 you just created and ran your first Django project. I still get a little kick out of seeing that page, even now.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"416\" src=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-6-1024x416.png\" alt=\"\" class=\"wp-image-1642\" srcset=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-6-1024x416.png 1024w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-6-300x122.png 300w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-6-768x312.png 768w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-6-1536x624.png 1536w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-6.png 1678w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"612\" src=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-7-1024x612.png\" alt=\"\" class=\"wp-image-1644\" srcset=\"https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-7-1024x612.png 1024w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-7-767x458.png 767w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-7-300x179.png 300w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-7-1536x917.png 1536w, https:\/\/nayananimsara.online\/wp-content\/uploads\/2026\/09\/image-7-2048x1223-1.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 id=\"step-6-create-your-first-app\" class=\"wp-block-heading\">Step 6: Create Your First App<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A Django <em>project<\/em> can contain multiple <em>apps<\/em>. Think of an app as one feature of your website \u2014 like a blog, a store, or a contact form. Let&#8217;s create one:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python manage.py startapp blog<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Then open <code>settings.py<\/code> and add <code>'blog'<\/code> to your <code>INSTALLED_APPS<\/code> list. This tells Django to actually use the app you just built.<\/p>\n\n\n\n<h2 id=\"step-7-make-your-first-migration\" class=\"wp-block-heading\">Step 7: Make Your First Migration<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Django uses something called migrations to set up your database tables. Run these two commands:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python manage.py makemigrations\npython manage.py migrate<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">You&#8217;ll see a bunch of lines confirming tables were created. That&#8217;s Django quietly setting up a SQLite database for you in the background \u2014 no manual database setup required, which honestly saved me hours when I was learning.<\/p>\n\n\n\n<h2 id=\"a-few-things-i-wish-i-knew-earlier\" class=\"wp-block-heading\">A Few Things I Wish I Knew Earlier<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Always activate your virtual environment before running any Django command, or you&#8217;ll get confusing errors.<\/li>\n\n\n\n<li>Keep <code>manage.py<\/code> in the root folder \u2014 don&#8217;t move it, I learned this the hard way.<\/li>\n\n\n\n<li>Use <code>python manage.py createsuperuser<\/code> early on so you can explore Django&#8217;s built-in admin panel. It&#8217;s one of the most underrated parts of the framework.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If you want to go deeper into how virtual environments actually work under the hood, I&#8217;ve written a separate breakdown of that on Nima Academy \u2014 worth a read once you&#8217;re comfortable with the basics here. And for anything official, the <a href=\"https:\/\/docs.djangoproject.com\/\" target=\"_blank\" rel=\"noopener\">Django documentation<\/a> is genuinely well written and worth bookmarking.<\/p>\n\n\n\n<h2 id=\"final-thoughts\" class=\"wp-block-heading\">Final Thoughts<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Creating your first Django project isn&#8217;t complicated once you break it into small steps. The commands look intimidating the first time, but after you&#8217;ve typed <code>startproject<\/code> and <code>runserver<\/code> a few times, it becomes muscle memory. I&#8217;d rather you build five small broken projects than watch ten tutorials without touching your keyboard.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So open your terminal, run through these steps again on your own, and see what you can break \u2014 and then fix. That&#8217;s genuinely how I learned, and it&#8217;s how most developers I know learned too.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you get stuck anywhere, drop a comment below. I read every one of them.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/nayananimsara.online\/course\/django-for-beginners-learn-python-web-development-from-scratch\/\" target=\"_blank\" data-type=\"link\" data-id=\"https:\/\/nayananimsara.online\/course\/django-for-beginners-learn-python-web-development-from-scratch\/\" rel=\"noreferrer noopener\">FULL FREE COUUSE<\/a><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"tg-oembed-container\"><iframe title=\"WebHD 720p 3\" width=\"640\" height=\"360\" src=\"https:\/\/www.youtube.com\/embed\/WKuvACE7dPE?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>How to Create Your First Django Project in 2026 (7 Easy Steps) how to create first Django project, I still remember the first time I opened my terminal and typed django-admin startproject. I had no idea what half the files meant, and honestly, I broke my project twice before I got a page to load. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1646,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"elearning_container_layout":"tg-site-layout--default","elearning_sidebar_layout":"tg-site-layout--default","elearning_remove_content_margin":false,"elearning_sidebar":"default","elearning_transparent_header":"customizer","elearning_logo":0,"elearning_header_style":"default","elearning_menu_item_color":"","elearning_menu_item_hover_color":"","elearning_menu_item_active_color":"","elearning_menu_item_active_style":"","elearning_page_header":true,"footnotes":""},"categories":[64],"tags":[],"class_list":["post-1635","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-django"],"_links":{"self":[{"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/posts\/1635","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/comments?post=1635"}],"version-history":[{"count":2,"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/posts\/1635\/revisions"}],"predecessor-version":[{"id":1645,"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/posts\/1635\/revisions\/1645"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/media\/1646"}],"wp:attachment":[{"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/media?parent=1635"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/categories?post=1635"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nayananimsara.online\/wp-json\/wp\/v2\/tags?post=1635"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}