Development rules, code conventions, tools

###These tools or conventions apply only for the development on InvoicePlane 3 :exclamation:


Please share your ideas / wishes about the development itself, coding conventions, tools etc.

Reminder: JetBrains gave us a full license for PhpStorm every developer can use. Contact me at mail@invoiceplane.com for the license.

For developing:

  • CoffeeScript
  • SASS or LESS
  • PHPlint
  • Bower/npm (for things that aren’t in composer)
  • Grunt (can orchestrate those things: runs the local devserver, compiles CoffeeScript/SASS on the fly, does PHP linting, runs tests and other stuff if configured).
    Example Gruntfile: https://chrsm.org/2013/04/25/using-grunt-for-php/
    And we’re IDE independet with Grunt, wich is a big plus.

Yes, I’m a JavaScript guy. So some things might be too much for this project.

Coding Convention:
PSR-2 was once mentioned somewhere. Took a look at it, looks good.

And please don’t check in compiled stuff (e.g. minified JS) anymore, this is very annoying.

Laravel plugins we could use:

1 Like

jQuery / Javascript Plugins we could use:

Other tools we could use:

How about,
Symfony rest edition
Angularjs
wkhtmltopdf
angulargrid

Have a look at [Cryptophoto][1] for 2-factor Authentication.

I went through the developement and testing stage with these guys and currently use it for our intranet. We’ve had no problems with it so far.
[1]: http://cryptophoto.com

We already discussed the possibility to use Angular or another JS Framework but we are not sure about this at the moment because we don’t have an expert who can help us with the development and it’s easier for us not to implement Angular at the moment.

wkhtmltopdf is an interesting alternative to DomPDF, thanks for that!

It looks like that this Cryptophoto is proprietary, at least I couldn’t find any links to repositories.
And because of this it we will not use it. Only open source software with a completely open code.

Hi, I have quite a bit of experience with AngularJS, it is good.
One strategy to implement it is progressively, ie one control at a time.
I’m note sure how much time I will have to work on it, but I do need a platform just like this - just wish this one was in NodeJS and not PHP :slight_smile:
If I have the time I will create pull requests with some starter AngularJS implementations as I go along.

Hey,
Thanks for the hints about Angular but I don’t think that we will use it even if it could be implemented easily. I don’t see the advantages of using the library for InvoicePlane.

http://www.google.com/trends/explore#q=angularjs%2C%20%20ember.js%2C%20%20knockoutjs%2C%20%20backbonejs%2C%20%20node.js&date=8%2F2011%2025m&cmpt=q

Not sure if that helps.

No, not really. The thing is that I don’t just want to use a technology because everyone is using it.
If you know a feature that is outstanding and makes the app 100% better than without Angular we could think about implementing it.
But I don’t see the potential of using Angular.

I agree re: just because everyone is using
But as I say, I have quite a bit of experience using it personally and I would recommend it.
But I don’t know much about what is currently being used in InvoicePlane, so perhaps there is no big up side to using Angular here.

We can use Angular Js and Node JS for great performance.

Nodejs and angular are not available on all shared hosting environments, so i dont think is a good idea.
PHP is better supported

1 Like

As this is the thread for InvoicePlane v3 I will lock this thread for now as we have to take care of version 2 first.