Getting started a project what should i do for future?

agiradam's picture

In summary: Getting started with a very large project you need to pay attention what? and should i start a base theme or from scratch?

i am starting a very big project with drupal 7. It will be a social media website and contain a lot of data like users info, pages, groups, live feed etc. I will do the design and css myself from scratch.

Getting started this kind of website for good performance in the future what kinds of things I need to pay attention to?

And a specific question: In these conditions should i start a base theme (if so which theme?) or should i create a theme from scratch and do everything myself? How will effect the performance of my website in the future?

Thanks for answers and resources/links about these things you will give..

Comments

I'd recommend taking a look

dalin's picture

I'd recommend taking a look at Drupal Commons. From what you describe it should get you at least 50% of the way there out of the box.

Also I think using a base theme is SOP for all projects these days.

--
Dave Hansen-Lange
Technical Manager
Advomatic LLC
Great White North Office
Canada

Thanks for your answer.. I

agiradam's picture

Thanks for your answer..
I know Drupal Commons, i used previous version in a project..
I look at the new version its beatiful and yes it is very close my project..
But if there are a lot of unneccessary code in it for me and i dont want that..
Nevertheless for development process i inspect that a lot for features i want, thanks..

Yep.

brad.curnow's picture

Also try and keep the modules to a minimum, if not for performance then for ease of maintenance. Besides, there isn't much you can't do with a mixture of Views, Rules, and Flag (and a few others) :)

As well as that if you can keep caching in mind as you develop that will be a big help. I'm no expert so have a look at some documentation on caching best practices - which are different for anon. and authenticated users.

But in terms of performance the more you can cache, the better! I would think all your static pages can be cached and many of the blocks, views etc as well.

Also, picking the right server is very important. If you can afford it I would suggest going with Acquia or Pantheon (if most of your traffic is logged in users, probably Pantheon, but each has their pros and cons) and let them worry about keeping your site up :)

Drupal has special needs sometimes so it's good to go with a host who specialize in this.

I had a look at self managed cloud etc.... too much trouble for people like us who have our hands full designing and building the site!

Thanks for your answer, its

agiradam's picture

Thanks for your answer, its really helpful..

I agree with you on many points.. i will use only neccesary modules and try to get maximum efficiency from them.. and caching very important for this project.. i will spend a lot of time to learn what the most suitable way for my project..

I have a dedicated server and nost myself.. this could be cause a lot of headache but for now in this way has to be..

This is really a front-end

mherchel's picture

This is really a front-end development question, so most of the answers aren't going to be Drupal specific.

  1. If you use a base theme, go minimal with Aurora, or Omega 4
  2. Many people do create themes from scratch. I have a starter theme hosted on github that I use
  3. If this is a very large project, make sure you're using OOCSS principles and you'll also probably want to use a CSS preprocessor like sass
  4. For single pages that contain a lot of data, you'll want to pay special attention to layout performance. keep the amount of wrapper divs to a minimum (a base or starter theme, in addition to the fences module, semantic views, and the magic module)
  5. Make sure your JS loading is deferred or move it to the bottom of the page. I believe the magic module can do this, or you can edit your html.tpl.php
  6. Always keep your HTTP requests as low as possible. Use CSS sprites, inline-images, to minimize these.

Remember, 80% of the performance lag is typically on the front-end.

Thanks for your answer, i

agiradam's picture

Thanks for your answer, i will keep that in mind during the development process..

I study a lot of different language but orignally i am a front-end developer.. And you can be sure i will be very carefull front-end side..

Thank you all for your

agiradam's picture

Thank you all for your answers..

I decided to start from scratch.. i examine all of the populer base themes and get help from them but i will do all work myself..

Social Networking Website

Triumphent's picture

Take a look at this social networking website developed with Drupal 7.
http://zastey.com
It will give you ideas.

Some questions and some input

baronvoninternet's picture

I'm in the same situation. I have a number of sites out there and I am kind fond of Corporate clean, simply because of its' flexibility in the layout arena. I have also played around with one, I can't remember the name, but I think it was wine country. It has a wine theme to it, but modifying it takes abit more work. that, and it is more suited for a business or product info site.

right now, I am mucking around with a dating site using corp clean and have run into some issues.

1 - using OG, I managed to get the member list to show up... sort of. it shows a nice preview of all the members who posted a status update, and allows you to pull up the members full profile by clicking on the image.
problems I have:

  • The full profile does not show up. as in all the extra questions I put into the profile when they registered.

on another topic / feature-

  • I want to award members with a higher user level based on their site activity. I'm sick of members crying about how empty the chat room is, and how nobody is talking in the forums.... well neither are they. So the site will still be free, but members need to prove they want to be part of the community before they can have access to cherry non page load heavy features. Page loads = money. Sitting in a chat room wanking for hours does not give me anything for my time :)

    I think the way to go about this is by using Rules. I do understand logic programming, as I own a security alarm / integration company and I install alot of home automation systems. The problem I have is understanding what all the conditions and actions mean and how they relate to when a user reaches a certain point level. If there is a better and easier way, I would love to hear it :)

Cheers

Heinz

Awarding members based on site activity

rgristroph's picture

If you are interested in awarding points to users based on activity, you should probably check out these modules before simply configuring roles from scratch:

https://www.drupal.org/project/userpoints

https://www.drupal.org/project/userpoints_contrib

It sounds from your description of having members, OG, and now wanting userpoints that you might have a good case for using the commons distribution: https://www.drupal.org/project/commons

I would install it separately, and evaluate how much of your needs can be met bu just turning on and off Features in Commons. If it involves less customization, maybe start thinking about how to migrate your current users and content into it.

rules

sander-martijn's picture

rules is a very powerful and rather poorly documented system. However there are many great video tutorials on it which you can find easily by google video and searching for "drupal rules tutorials" - look for some of the ones that have whole series starting with the basics and taking you through all the possibilities. It will take some time to get through them but will be more than worth it in the long run.

As for the theme comments I have no experience with the particular ones mentioned, in my experience your best bet is to either build your own from scratch or create a subtheme based on one of the generic responsive ones - my favorite right now being Zen + Zen grids + SASS + Compass. For e-commerce sites I've had good luck using Acquia Prosper as it comes with a good basis for all the ubercart components, but outside of that I am not a huge fan of the Acquia themes, just my personal experience. I only use other baked themes for very low budget projects where I can find a theme that's 95%+ there and all I'm doing is changing some fonts/colors.