Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Maximum number of projects in .net/VS solution

Maximum number of projects in .net/VS solution

Scheduled Pinned Locked Moved The Lounge
csharpvisual-studioquestion
22 Posts 11 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • E Offline
    E Offline
    Eytukan
    wrote on last edited by
    #1

    How many projects you could afford to keep on the same solution? Some blogs say it's 15-20. But this would be too little for large projects. If I have to keep separate solution for different groups of projects (for the same product) Then managing the dependency dlls breakage would be a nightmare. How this is usually handled? Lets say I have a Common.dll that's being used by 30 projects. This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?) (I had seen people copy the Common.dll project into their own solution just to ensure the build is going easy :|, but these are freshers) So I'm trying to heap the projects under single solution. And to keep the build process easy, I'm thinking to: 1. un-check the projects that are not involved in current build, in solution build settings. 2. Unload project itself if it's a POC, tester or something completely not needed for current build. Am I doing this right?

    Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

    C H G J Sander RosselS 8 Replies Last reply
    0
    • E Eytukan

      How many projects you could afford to keep on the same solution? Some blogs say it's 15-20. But this would be too little for large projects. If I have to keep separate solution for different groups of projects (for the same product) Then managing the dependency dlls breakage would be a nightmare. How this is usually handled? Lets say I have a Common.dll that's being used by 30 projects. This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?) (I had seen people copy the Common.dll project into their own solution just to ensure the build is going easy :|, but these are freshers) So I'm trying to heap the projects under single solution. And to keep the build process easy, I'm thinking to: 1. un-check the projects that are not involved in current build, in solution build settings. 2. Unload project itself if it's a POC, tester or something completely not needed for current build. Am I doing this right?

      Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

      C Offline
      C Offline
      CodeWraith
      wrote on last edited by
      #2

      I have a solution with about 50 - 60 projects in it. I have never explored the maximum, if there is one at all beyond reasonable memory limitations. The whole thing compiles to several executables, services and server components and many shared libraries for every tier/layer.

      I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

      S E 2 Replies Last reply
      0
      • E Eytukan

        How many projects you could afford to keep on the same solution? Some blogs say it's 15-20. But this would be too little for large projects. If I have to keep separate solution for different groups of projects (for the same product) Then managing the dependency dlls breakage would be a nightmare. How this is usually handled? Lets say I have a Common.dll that's being used by 30 projects. This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?) (I had seen people copy the Common.dll project into their own solution just to ensure the build is going easy :|, but these are freshers) So I'm trying to heap the projects under single solution. And to keep the build process easy, I'm thinking to: 1. un-check the projects that are not involved in current build, in solution build settings. 2. Unload project itself if it's a POC, tester or something completely not needed for current build. Am I doing this right?

        Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

        H Offline
        H Offline
        HobbyProggy
        wrote on last edited by
        #3

        Well i for my self separate as much as possible, my main project now counts 27 project in one solution. CUrrently Testing Projects are in there but i'll change that later on. Every time i use a .dll from this main project in another i copy it to the new solution / project because the software does something else but needs some basic .dll's. (by copy i mean integrate it from the main .dll folder and set local copy true) On the CI / deploy machine everything is linked therefore. Another benefit is, changes to your mainproject do not necessarily effect your other applications using the changed .dll. Sure you have to keep track of things and manage a bit but i'd say it's worth the effort on long term since if you have a CI server and you configure it correctly the magic just happens and it works fine. And it just looks awesome when builds run through their stages on the CI and you can just watch how it fluently goes through every section. :)

        Rules for the FOSW ![^]

        if(!string.IsNullOrWhiteSpace(_signature))
        {
        MessageBox.Show("This is my signature: " + Environment.NewLine + _signature);
        }
        else
        {
        MessageBox.Show("404-Signature not found");
        }

        E 1 Reply Last reply
        0
        • E Eytukan

          How many projects you could afford to keep on the same solution? Some blogs say it's 15-20. But this would be too little for large projects. If I have to keep separate solution for different groups of projects (for the same product) Then managing the dependency dlls breakage would be a nightmare. How this is usually handled? Lets say I have a Common.dll that's being used by 30 projects. This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?) (I had seen people copy the Common.dll project into their own solution just to ensure the build is going easy :|, but these are freshers) So I'm trying to heap the projects under single solution. And to keep the build process easy, I'm thinking to: 1. un-check the projects that are not involved in current build, in solution build settings. 2. Unload project itself if it's a POC, tester or something completely not needed for current build. Am I doing this right?

          Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

          G Offline
          G Offline
          GuyThiebaut
          wrote on last edited by
          #4

          Vunic wrote:

          How many projects you could afford to keep on the same solution?

          Probably only two - the application and the unit tests.

          Vunic wrote:

          If I have to keep separate solution for different groups of projects (for the same product) Then managing the dependency dlls breakage would be a nightmare.

          Perhaps only is you have a commit, unit testing and broken build fixing strategy that creates this nightmare.

          Vunic wrote:

          How this is usually handled?

          There seem to be a number of strategies.One is to go more towards microservices if you are developing web based and not desktop applications. You can also make use of nuget to ensure you have the most recent dlls. Also unit tests help detect issues early on. Add to this having an agreed on strategy to checking in changes among devs - so if you check in a new dll and you break the build it's your responsibility to fix the issue or roll back the checkin so that everything is green. You could also think about doing trunk based development, if you are currently on branch based development, so that the build breaks earlier rather than later.

          “That which can be asserted without evidence, can be dismissed without evidence.”

          ― Christopher Hitchens

          1 Reply Last reply
          0
          • E Eytukan

            How many projects you could afford to keep on the same solution? Some blogs say it's 15-20. But this would be too little for large projects. If I have to keep separate solution for different groups of projects (for the same product) Then managing the dependency dlls breakage would be a nightmare. How this is usually handled? Lets say I have a Common.dll that's being used by 30 projects. This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?) (I had seen people copy the Common.dll project into their own solution just to ensure the build is going easy :|, but these are freshers) So I'm trying to heap the projects under single solution. And to keep the build process easy, I'm thinking to: 1. un-check the projects that are not involved in current build, in solution build settings. 2. Unload project itself if it's a POC, tester or something completely not needed for current build. Am I doing this right?

            Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

            J Offline
            J Offline
            Johnny J
            wrote on last edited by
            #5

            My current solution has 74 projects in it. Not something that is either practical or recommended, but in my defense, I didn't create the project structure. Microsoft did, so that explains that! :doh:

            Anything that is unrelated to elephants is irrelephant
            Anonymous
            -----
            The problem with quotes on the internet is that you can never tell if they're genuine
            Winston Churchill, 1944
            -----
            Never argue with a fool. Onlookers may not be able to tell the difference.
            Mark Twain

            E 1 Reply Last reply
            0
            • E Eytukan

              How many projects you could afford to keep on the same solution? Some blogs say it's 15-20. But this would be too little for large projects. If I have to keep separate solution for different groups of projects (for the same product) Then managing the dependency dlls breakage would be a nightmare. How this is usually handled? Lets say I have a Common.dll that's being used by 30 projects. This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?) (I had seen people copy the Common.dll project into their own solution just to ensure the build is going easy :|, but these are freshers) So I'm trying to heap the projects under single solution. And to keep the build process easy, I'm thinking to: 1. un-check the projects that are not involved in current build, in solution build settings. 2. Unload project itself if it's a POC, tester or something completely not needed for current build. Am I doing this right?

              Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

              Sander RosselS Offline
              Sander RosselS Offline
              Sander Rossel
              wrote on last edited by
              #6

              I prefer to keep it as few as possible. Every application gets its own separate solution. Shared libraries get their own solution and go in a NuGet repository. The most projects in a single solution I currently have is like 10. Most I've ever had is probably more like 15-20, as you say. With microservices the number of projects in a single solution has gone down even further. The pros are, of course, faster loading and building times and smaller and faster pulls from source controls. The only downside I see is that it's sometimes difficult to develop multiple solutions at the same time, especially with microservices where one is dependent on the other.

              Best, Sander sanderrossel.com Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

              G S E 3 Replies Last reply
              0
              • Sander RosselS Sander Rossel

                I prefer to keep it as few as possible. Every application gets its own separate solution. Shared libraries get their own solution and go in a NuGet repository. The most projects in a single solution I currently have is like 10. Most I've ever had is probably more like 15-20, as you say. With microservices the number of projects in a single solution has gone down even further. The pros are, of course, faster loading and building times and smaller and faster pulls from source controls. The only downside I see is that it's sometimes difficult to develop multiple solutions at the same time, especially with microservices where one is dependent on the other.

                Best, Sander sanderrossel.com Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                G Offline
                G Offline
                GKP1992
                wrote on last edited by
                #7

                Sander Rossel wrote:

                The only downside I see is that it's sometimes difficult to develop multiple solutions at the same time

                To develop multiple solutions, what I do is add a temporary project in one solution change the reference to the temp dll and develop there. After the development is complete I just report the changes to the other solution and change the reference back to the original dll. 30 mins of extra work reduce a considerable amount of cuss words.

                Sander RosselS 1 Reply Last reply
                0
                • C CodeWraith

                  I have a solution with about 50 - 60 projects in it. I have never explored the maximum, if there is one at all beyond reasonable memory limitations. The whole thing compiles to several executables, services and server components and many shared libraries for every tier/layer.

                  I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                  S Offline
                  S Offline
                  Slacker007
                  wrote on last edited by
                  #8

                  CodeWraith wrote:

                  I have a solution with about 50 - 60 projects in it.

                  :wtf:

                  1 Reply Last reply
                  0
                  • Sander RosselS Sander Rossel

                    I prefer to keep it as few as possible. Every application gets its own separate solution. Shared libraries get their own solution and go in a NuGet repository. The most projects in a single solution I currently have is like 10. Most I've ever had is probably more like 15-20, as you say. With microservices the number of projects in a single solution has gone down even further. The pros are, of course, faster loading and building times and smaller and faster pulls from source controls. The only downside I see is that it's sometimes difficult to develop multiple solutions at the same time, especially with microservices where one is dependent on the other.

                    Best, Sander sanderrossel.com Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                    S Offline
                    S Offline
                    Slacker007
                    wrote on last edited by
                    #9

                    :thumbsup::thumbsup: Exactly.

                    1 Reply Last reply
                    0
                    • Sander RosselS Sander Rossel

                      I prefer to keep it as few as possible. Every application gets its own separate solution. Shared libraries get their own solution and go in a NuGet repository. The most projects in a single solution I currently have is like 10. Most I've ever had is probably more like 15-20, as you say. With microservices the number of projects in a single solution has gone down even further. The pros are, of course, faster loading and building times and smaller and faster pulls from source controls. The only downside I see is that it's sometimes difficult to develop multiple solutions at the same time, especially with microservices where one is dependent on the other.

                      Best, Sander sanderrossel.com Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                      E Offline
                      E Offline
                      Eytukan
                      wrote on last edited by
                      #10

                      :thumbsup: thank you for sharing this.

                      Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                      1 Reply Last reply
                      0
                      • C CodeWraith

                        I have a solution with about 50 - 60 projects in it. I have never explored the maximum, if there is one at all beyond reasonable memory limitations. The whole thing compiles to several executables, services and server components and many shared libraries for every tier/layer.

                        I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                        E Offline
                        E Offline
                        Eytukan
                        wrote on last edited by
                        #11

                        I guess Nuget would be a solution as said by Sander Rossel?

                        Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                        C 1 Reply Last reply
                        0
                        • H HobbyProggy

                          Well i for my self separate as much as possible, my main project now counts 27 project in one solution. CUrrently Testing Projects are in there but i'll change that later on. Every time i use a .dll from this main project in another i copy it to the new solution / project because the software does something else but needs some basic .dll's. (by copy i mean integrate it from the main .dll folder and set local copy true) On the CI / deploy machine everything is linked therefore. Another benefit is, changes to your mainproject do not necessarily effect your other applications using the changed .dll. Sure you have to keep track of things and manage a bit but i'd say it's worth the effort on long term since if you have a CI server and you configure it correctly the magic just happens and it works fine. And it just looks awesome when builds run through their stages on the CI and you can just watch how it fluently goes through every section. :)

                          Rules for the FOSW ![^]

                          if(!string.IsNullOrWhiteSpace(_signature))
                          {
                          MessageBox.Show("This is my signature: " + Environment.NewLine + _signature);
                          }
                          else
                          {
                          MessageBox.Show("404-Signature not found");
                          }

                          E Offline
                          E Offline
                          Eytukan
                          wrote on last edited by
                          #12

                          :thumbsup:

                          Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                          1 Reply Last reply
                          0
                          • J Johnny J

                            My current solution has 74 projects in it. Not something that is either practical or recommended, but in my defense, I didn't create the project structure. Microsoft did, so that explains that! :doh:

                            Anything that is unrelated to elephants is irrelephant
                            Anonymous
                            -----
                            The problem with quotes on the internet is that you can never tell if they're genuine
                            Winston Churchill, 1944
                            -----
                            Never argue with a fool. Onlookers may not be able to tell the difference.
                            Mark Twain

                            E Offline
                            E Offline
                            Eytukan
                            wrote on last edited by
                            #13

                            Johnny J. wrote:

                            74 projects

                            I'm not alone. Feels good :) haha

                            Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                            1 Reply Last reply
                            0
                            • E Eytukan

                              I guess Nuget would be a solution as said by Sander Rossel?

                              Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                              C Offline
                              C Offline
                              CodeWraith
                              wrote on last edited by
                              #14

                              Probably not. Except for the usual .Net framework stuff, there is only one single external library. The rest is my own code. Two applications, a graphics engine and a UI for the graphics engine, a web application for user management and login, six services, modules with entities, modules of application logic or data access 'behind' the services... It sums up very quickly, but some of the older stuff (like the webpages for the actual applications) are on their way out once everything has been ported to the clients.

                              I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                              E 1 Reply Last reply
                              0
                              • G GKP1992

                                Sander Rossel wrote:

                                The only downside I see is that it's sometimes difficult to develop multiple solutions at the same time

                                To develop multiple solutions, what I do is add a temporary project in one solution change the reference to the temp dll and develop there. After the development is complete I just report the changes to the other solution and change the reference back to the original dll. 30 mins of extra work reduce a considerable amount of cuss words.

                                Sander RosselS Offline
                                Sander RosselS Offline
                                Sander Rossel
                                wrote on last edited by
                                #15

                                Yeah, I do that too sometimes :thumbsup:

                                Best, Sander sanderrossel.com Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                                1 Reply Last reply
                                0
                                • E Eytukan

                                  How many projects you could afford to keep on the same solution? Some blogs say it's 15-20. But this would be too little for large projects. If I have to keep separate solution for different groups of projects (for the same product) Then managing the dependency dlls breakage would be a nightmare. How this is usually handled? Lets say I have a Common.dll that's being used by 30 projects. This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?) (I had seen people copy the Common.dll project into their own solution just to ensure the build is going easy :|, but these are freshers) So I'm trying to heap the projects under single solution. And to keep the build process easy, I'm thinking to: 1. un-check the projects that are not involved in current build, in solution build settings. 2. Unload project itself if it's a POC, tester or something completely not needed for current build. Am I doing this right?

                                  Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                                  Z Offline
                                  Z Offline
                                  ZurdoDev
                                  wrote on last edited by
                                  #16

                                  At my previous job we merged with another company and their solution had over 120 projects in it. And the plan was to merge their main product with our product. Needless to say I'm glad I'm not there anymore.

                                  Everyone is born right handed. Only the strongest overcome it. Fight for left-handed rights and hand equality.

                                  1 Reply Last reply
                                  0
                                  • E Eytukan

                                    How many projects you could afford to keep on the same solution? Some blogs say it's 15-20. But this would be too little for large projects. If I have to keep separate solution for different groups of projects (for the same product) Then managing the dependency dlls breakage would be a nightmare. How this is usually handled? Lets say I have a Common.dll that's being used by 30 projects. This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?) (I had seen people copy the Common.dll project into their own solution just to ensure the build is going easy :|, but these are freshers) So I'm trying to heap the projects under single solution. And to keep the build process easy, I'm thinking to: 1. un-check the projects that are not involved in current build, in solution build settings. 2. Unload project itself if it's a POC, tester or something completely not needed for current build. Am I doing this right?

                                    Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                                    D Offline
                                    D Offline
                                    dandy72
                                    wrote on last edited by
                                    #17

                                    I've spent years working (with others) on a product, with VS 2005 through the current 2017, that has grown to 80 projects so or. No instance of VS during that time has ever choked on it. It's not terribly fast, but it probably works as well as one can reasonably expect with something like this.

                                    E 1 Reply Last reply
                                    0
                                    • C CodeWraith

                                      Probably not. Except for the usual .Net framework stuff, there is only one single external library. The rest is my own code. Two applications, a graphics engine and a UI for the graphics engine, a web application for user management and login, six services, modules with entities, modules of application logic or data access 'behind' the services... It sums up very quickly, but some of the older stuff (like the webpages for the actual applications) are on their way out once everything has been ported to the clients.

                                      I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                                      E Offline
                                      E Offline
                                      Eytukan
                                      wrote on last edited by
                                      #18

                                      :thumbsup:

                                      Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                                      1 Reply Last reply
                                      0
                                      • E Eytukan

                                        How many projects you could afford to keep on the same solution? Some blogs say it's 15-20. But this would be too little for large projects. If I have to keep separate solution for different groups of projects (for the same product) Then managing the dependency dlls breakage would be a nightmare. How this is usually handled? Lets say I have a Common.dll that's being used by 30 projects. This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?) (I had seen people copy the Common.dll project into their own solution just to ensure the build is going easy :|, but these are freshers) So I'm trying to heap the projects under single solution. And to keep the build process easy, I'm thinking to: 1. un-check the projects that are not involved in current build, in solution build settings. 2. Unload project itself if it's a POC, tester or something completely not needed for current build. Am I doing this right?

                                        Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                                        M Offline
                                        M Offline
                                        Marc Clifton
                                        wrote on last edited by
                                        #19

                                        Vunic wrote:

                                        This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?)

                                        Ugh, no. Each of the 30 projects is its own solution with a reference to the Common project (note, the project, not the DLL). And use a build automation took to build all the different solutions. And hopefully you have some decent unit tests so that when you change something in Common, you know when you've broken something in the other projects.

                                        Latest Article - A Concise Overview of Threads Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                                        E 2 Replies Last reply
                                        0
                                        • M Marc Clifton

                                          Vunic wrote:

                                          This means, I would prefer to keep all the 30 projects under the same solution (this is a bad idea?)

                                          Ugh, no. Each of the 30 projects is its own solution with a reference to the Common project (note, the project, not the DLL). And use a build automation took to build all the different solutions. And hopefully you have some decent unit tests so that when you change something in Common, you know when you've broken something in the other projects.

                                          Latest Article - A Concise Overview of Threads Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                                          E Offline
                                          E Offline
                                          Eytukan
                                          wrote on last edited by
                                          #20

                                          Yes, I'm referencing the common dependencies as projects. But we can really reference a project directly in TFS? I'm yet to figure this out. Common Dep. projects used to live in their own solution folder in TFS directory, with their own unit testers. When two solutions utilize this dll, I have to down the 3 solutions separately (which means 3 VS instances), & manually ADD the common dll project to both the application solutions. I felt its a bit messy. When I do this, the solution files unnecessarily checks-out , assuming I'm going to add the Dll project into the solution. I cannot do it , as it becomes a duplicate in every application solution that's using this dll project. Some devs in team have mistakenly done this too. After referencing the Dll project, they accidentally checked it in along with the app solution, creating an independent copy. :| Ideally, if App solutions can add a shared dll project virtually, from the TFS & share across multiple solutions , it'd would be awesome. But that's where Nuget is doing it's job, but with binaries. In other words, Just like how Nuget is working for sharing binaries, if the same could be done for common projects, it'll be great. Please excuse me if I've typed something stupid. I'm still trying to figure things out with TFS & common projects mapping. :) By far, Private-Nuget repo sounds clear & usable.

                                          Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups