Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Open Discussion - Symfony - what do you do to start your projects quicker?

Tags:

symfony1

When you start a new project (whether it's personal or professional) what do you have at hand to quickly start developing the project?

For example, when I start a new project at work, I have the following already setup from a custom sandbox:

  1. Two different authentication classes, LDAP and CAS which I can change via app.yml
  2. Custom form widgets which I use across most applications
  3. Capistrano deployment script for deploying the project to staging or production servers.
  4. A mail template class which uses an XML file for the templates to send emails
  5. Mail server, ldap etc. settings all configured.
  6. Bunch of icons and the same CSS (which with some exceptions is always the same for each project)
  7. custom error pages, layouts, login layout etc.
  8. static pages such as about, contact us etc.
  9. Useful plugins such as sfFormExtraPlugin, twig etc.
  10. jquery and jQuery UI libraries
  11. Basic local ACL and translation model classes and some other default models.
  12. Tasks - send email task and build translations.
  13. custom tools class for doing some custom stuff
  14. custom factories and some default routes
  15. helpers which I will most probably use are enabled by default (i18n, partial etc.)

And some other things :-)

I'm just wondering what you do to make your development quicker and more efficient when starting a new project. Hopefully I'll learn some new things from what you do.

Thanks folks!

like image 345
Flukey Avatar asked Dec 06 '10 17:12

Flukey


2 Answers

Great question and great list. Here's some more:

  1. As a general practice, whenever we develop a feature that could be used across projects, we develop it as a plugin so it can be easily dropped into other projects.
  2. Custom form formatter that uses our own widget/validators in place of the default Symfony ones.
  3. Custom mailer with support for sending processing templates as emails and better HTML email support.
  4. Plugin for minimizing/combining CSS and JS assets.
  5. Symlink from web/sf to lib/vendor/symfony/data/web. Better than an alias in apache.
  6. Custom admin generator templates.
like image 104
Jeremy Kauffman Avatar answered Oct 21 '22 19:10

Jeremy Kauffman


  1. Quick setup script that takes commandline options or read a config file to create full local dev env (init the project, setup a vhost, modify etc/hosts, import to svn, create svn externals for Symfony and key plugins like sfDoctrineGuard)
  2. Custom Project skeleton
  3. Custom Javascript helper based on Apostrophes new a_js_*() helper functions
like image 29
prodigitalson Avatar answered Oct 21 '22 19:10

prodigitalson