---
title: "Discussion on \"How I structure my Next JS Projects\" | Hashnode"
description: "Discussion on \"How I structure my Next JS Projects\". Hello folks! It's been a while since I published an article. So today I'm going to explain how I structure my NextJS projects.\n\n\nNote: There is no right or wrong way to structure a Next JS project, and this is highly opinionated.\n\nSo, the structure o..."
url: "https://hashnode.com/posts/how-i-structure-my-next-js-projects/6200c03f295d276006775ce8"
---

[Feed](https://hashnode.com/feed) /

Discussion

# [How I structure my Next JS Projects](https://anuragkr.hashnode.dev/how-i-structure-my-next-js-projects?utm_source=hashnode&utm_medium=feed)

Hello folks! It's been a while since I published an article. So today I'm going to explain how I structure my NextJS projects. Note: There is no right or wrong way to structure a Next JS project, and this is highly opinionated. So, the structure o...

Feb 7, 2022 · 4 min read · anuragkr.hashnode.dev  
Read the article

-   [#nextjs](https://hashnode.com/tag/nextjs)
-   [#reactjs](https://hashnode.com/tag/reactjs)
-   [#design-and-architecture](https://hashnode.com/tag/design-and-architecture)
-   [#software-architecture](https://hashnode.com/tag/software-architecture)

## Written by

[Anurag](https://hashnode.com/@imanuraglol)

@imanuraglol · India

  
[View profile](https://hashnode.com/@imanuraglol)

Front End Developer

Hey, I am a developer and I write about web development here.

## Responses 6

Markdown supported · ⌘↵ to post

[Yousef Medhat](https://hashnode.com/@yousefmedhat56)

[Oct 6, 2022](https://hashnode.com/posts/how-i-structure-my-next-js-projects/6200c03f295d276006775ce8/comment/633f22e46971ffceb981eae8)

Very helpful, thank you Anurag.  
I would like to know how to structure the styles files?

[Khoi Le](https://hashnode.com/@vjcspy)

[Mar 1, 2022](https://hashnode.com/posts/how-i-structure-my-next-js-projects/6200c03f295d276006775ce8/comment/621dc56ec90eb90683f66a9f)

Don't use this

```
- components/index.js

export * from "./Header.jsx";
export * from "./Hero.jsx";
export * from "./Footer";
```

It will increase size when bundle source. You should use lazy load for components

[Veeresh Raavipaati](https://hashnode.com/@Veeresh)

[Apr 9, 2022](https://hashnode.com/posts/how-i-structure-my-next-js-projects/6200c03f295d276006775ce8/comment/621dc56ec90eb90683f66a9f#reply-62518cda75dccb6f3431e0cb)

I guess next js wont bundle the whole file right? It just builds what it needs right?

I am not sure, please correct me.

[Joseph Chotard](https://hashnode.com/@josephc)

[Feb 8, 2022](https://hashnode.com/posts/how-i-structure-my-next-js-projects/6200c03f295d276006775ce8/comment/6201bdd03a8a6e5fe119a966)

I would include a `screens` folder to split up your pages into multiple parts like `Hero`, `CTA`, etc.

This allows the page files to delegate while keeping the component library free of components that might only ever be used in one page.

[Pedro Cruz](https://hashnode.com/@PedroCruz)

[Feb 7, 2022](https://hashnode.com/posts/how-i-structure-my-next-js-projects/6200c03f295d276006775ce8/comment/6201456f3a8a6e5fe1199e8a)

Great! Have you tried implementing atomic design for component folders?

[Karthik Pariti](https://hashnode.com/@Kardev07)

[Feb 7, 2022](https://hashnode.com/posts/how-i-structure-my-next-js-projects/6200c03f295d276006775ce8/comment/6200c42b295d276006775dbc)

gg's

[Posandu Mapa](https://hashnode.com/@posandu)

[Feb 7, 2022](https://hashnode.com/posts/how-i-structure-my-next-js-projects/6200c03f295d276006775ce8/comment/6200c1593a8a6e5fe1198ceb)

Great Article Anurag! Will use this method
