Need advice about which tool to choose?Ask the StackShare community!
CodeIgniter vs Symfony: What are the differences?
Developers describe CodeIgniter as "A Fully Baked PHP Framework". CodeIgniter is a proven, agile & open PHP web application framework with a small footprint. It is powering the next generation of web apps. On the other hand, Symfony is detailed as "A PHP full-stack web framework". Symfony is written with speed and flexibility in mind. It allows developers to build better and easy to maintain websites with PHP. Symfony can be used to develop all kind of websites, from your personal blog to high traffic ones like Dailymotion or Yahoo! Answers.
CodeIgniter and Symfony can be categorized as "Frameworks (Full Stack)" tools.
"Mvc", "Easy setup" and "Open source" are the key factors why developers consider CodeIgniter; whereas "Open source", "Php" and "Community" are the primary reasons why Symfony is favored.
CodeIgniter and Symfony are both open source tools. Symfony with 21.1K GitHub stars and 7.01K forks on GitHub appears to be more popular than CodeIgniter with 17.4K GitHub stars and 7.72K GitHub forks.
According to the StackShare community, Symfony has a broader approval, being mentioned in 374 company stacks & 277 developers stacks; compared to CodeIgniter, which is listed in 261 company stacks and 105 developer stacks.
Hi all, I need to create a simple IoT interface application that connects the end device API with a GeoTab API. I am considering using Bubble due to its simple interface and configuration tools, but I fear it's too simple. We will want to add features and new devices as we grow - I was thinking of using CodeIgniter or CakePHP on a hosted site for the application. Must support JCOM encoding between the two APIs and there is no need for a separate interface as GeoTab already has one; we are just connecting and pushing data. Thoughts?
Hi Brian,
Dom here, co-founder of Five, a low-code company.
The first question I'd ask is this: do you want to continue using Google Sheets or Microsoft Excel as your database? If yes, then indeed Retool is a great choice because it connects to Google Sheets and lets you build a front end on top of it. An alternative could be AppSheet, which belongs to Google and does the same.
My advice, however, would be not to use a spreadsheet as a database. I won't go into all the reasons for this. But a spreadsheet is not designed to support web applications. At some point, it will either become very slow or you will struggle with data integrity, especially if you have ten users reading & writing data concurrently. That's why I'd look for an online database application builder.
Now, this is where I'm biased, given my role at Five, but here's what Five lets you do:
You can create your own MySQL database straight inside Five. So instead of storing data in a spreadsheet, you store it in a web-hosted MySQL database.
You can import CSV files into your database, so your existing data won't be lost.
You can then build the front end on top of the MySQL database.
The advantages: you get something that is scalable and won't break in the future. And MySQL is open-source, so even if at some point in the future, you won't go elsewhere with your application, your data is portable.
Lastly, Five costs you less. Our website is https://www.five.co
Hope this helps and as I said, think about the right back end for your application first. :)
Dom
Hi everyone! I'm starting a personal project that I've been postponing for a little while and I need a bit of advice. I thought that it will be a bit of a challenge but I figure the best way to learn is by doing!
The plan is to build an app with loads of automation build in for reporting which would make it very easy to perform tasks, The plan is to build something similar to an HR app using microservice architecture, separating services e.g. employee data, payroll (including calculations based on easily entered info like tax %), employee services (vacation, sick day allowance booking and tabulation) and automated reporting on a pre-defined schedule (bi-weekly, monthly).
I am considering Django (as I currently know a bit of Python) and Symfony (as a friend who is a developer recommended it) but I am well aware there are other (and probably better) tools out there for the job (like maybe ExpressJS/Node.js for the backend and React/Vue.js for the front).
Background:
I have got knowledge as a DevOps, Site Reliability and Cloud engineer so once the app is built I'm very comfortable taking it to deployment.
Thank you all for your help and responses.
Hi. I guess it all depends on what your goal is. If you wanna make fast prototyping Django or ExpressJNodeJS might be really good candidates. You can write your services quickly and easily by using anyone of them. Maybe we can also put Laravel in the same category.
Symfony is also another application framework that comes with many reusable components. It provides great flexibility with the configuration and dependency management solutions. So that you can inject or override anything, anytime without doing something hack-ish. You don't have to depend on any components that come with the framework and, replace them with whatever you prefer unless encounter any integration issues. I can say that Laravel also provides most of the Symfony futures as it uses its components under the hood. However, my personal experience with Laravel was not so good because it made me feel like I use a modernized version of Codeigniter. But anyway. :) So if I have to choose one of them, I would choose Symfony.
From the backend perspective, all of those have some pros and cons. For example, If strict type declaration is important for you and you don't like code magics like monkey patching etc., maybe Python and NodeJS might not be good candidates and maybe you could choose Symfony/php. However, in this case, you'll be missed out on the most powerful future of NodeJS which is non-blocking io. if you plan to do IO-intensive works, I think it would be a big loss.
So, maybe I can recommend you to have a look at typescript + NestJS also. https://nestjs.com/ The futures that NestJS provides might be a good balance between the strengths of Symfony and NodeJS.
As I'm backend dev., I haven't work too many frontend projects but from my personal experience, I loved ReactJS more than Vue although Vue was simpler. Maybe a front-end developer can give us more helpful details about those.
Hope it helps.
I need to build a web application plus android and IOS apps for an enterprise, like an e-commerce portal. It will have intensive use of MySQL to display thousands (40-50k) of live product information in an interactive table (searchable, filterable), live delivery tracking. It has to be secure, as it will handle information on customers, sales, inventory. Here is the technology stack: Backend: Laravel 7 Frondend: Vue.js, React or AngularJS?
Need help deciding technology stack. Thanks.
It's better to use Laravel with Vue.js and also laravel is very lightweight and speed performance.

Go for Laravel 8 (not 7, obviously because it's the latest version and has a lot of new features and bug fixes) when it comes to backend coding.
Go for Vue.js (if you don't have any preference) because it is having by default configuration setup in Laravel).
Pick MySQL or PostgreSQL both work fine.
If you know GCP, go for it, otherwise go for Heroku.
Avoid spending time on hosting setup - prefer PaaS based solutions.
In Laravel, try Laravel Breeze or Jetstream - these might make the development much faster - at least for the basic setup that is there.
40-50k should not be a problem at all for the database nor for any frontend/backend combo. Laravel works pretty well with Vue.js, for example; and you can include Elasticsearch in the combo if you really need fulltext search capabilites in your app. That will be much more decisive in the final product than the frontend stack chosen.
I don't know anything really about CodeIgniter, but I do know that microservices are a great choice for e-commerce, as they tend to have a lot of different moving (but not necessarily connected) parts. That being said, and if you have a choice, I'd recommend Go personally. But node isn't the worst option if Go isn't something you're comfortable with.
If you know typescript and want an entire framework to work with, go wth Angular. AngularJS, to my knowledge was deprecated. React is great, popular, and you'll find a ton of support.
I highly recomand using the Vue based Nuxt framework for the front end. It is not required to use the server render feature and the folder based routing and stores are really nice to work with. In addition it brings component auto import and lots of plugins neatly integrated (authentication, i18n, socket.io, etc.). If in the setup process you also chose Vuetify as a component library you will cover 98% of needed components.
As for Laravel vs CodeIginter I would chose Laravel as the safest bet. Sadly, CodeIgniter development slowed down after the main contributor's death. It is also worth mentioning, as others did, that the initial boost Vue got is from Laravel's creator and community. The simplicity and ease of use mindset is shared.

I can't speak to Angular since I haven't used it for at least 3 years (I wasn't a fan back then) but both React and Vue are great frameworks and will do the job just fine. Since you are using Laravel for the back end I'd recommend Vue. There's a lot of overlap between the communities and most Laravel developers I know do favor Vue over React.
If your customer is an enterprise, I'll strongly recommend leveraging Azure or AWS for building and hosting your backend. AWS API Gateway + AWS Lambda + AWS RDS would be a good combination. You might want to run everything in your VPC if security / privacy are your top concerns.

Laravel is the best tool in php and I know it also if i don't develop in php. Vue.js is the future. In combination with https://bootstrap-vue.org/ is THE solution.
Best regards
I'm about to begin working on an API, for which I plan to add GraphQL connectivity for processing data. The data processed will mainly be audio files being downloaded/uploaded with some user messaging & authentication.
I don't mind the difficulty in any service since I've used C++ (for data structures & algorithms at least) and would also say I am patient and can learn fairly quickly. My main concerns would be their performance, libraries/community, and job marketability.
Why I'm stuck between these three...
Symfony: I've programmed in PHP for back-end in a previous internship and may do so again in a few months.
Node.js: It's newer than PHP, and it's JavaScript where my front-end stack will be React and (likely) React Native.
Go: It's newer than PHP, I've heard of its good performance, and it would be nice to learn a new (growing) language.
Go with Node.js. There's something really satisfying about being able to use a single language across your entire tech stack. Especially once you integrate GraphQL, which is effectively JSON.
Your second best option is Go, but the ecosystem around Node.js is quite a bit stronger. This will play a big factor when you start building functionality like file management, messaging (especially in real-time), and authentication. The libraries and documentation are just stronger for Node.
Hi, We are thinking to rebuild a website and need your suggestion on which platform to choose from NodeJs, Laravel & CodeIgnitor. Since it's an education base website and there will be multiple functionalities like the use of graphics, video, animation and off-course forms for lead generation. Please advise us which tool to use to build the website considering load-time, server security, code vulnerability, etc.

Node.js is great but if I had a choice for something like this I would pick Elixir and Phoenix. They have LiveViews and channels which be one step up then the other 3 plateforms. It will also scale better and respond faster. Last will probably far less code as well.

Node.js is the perfect tech to real-time features like chats, forums, quizzes and polls. Additionally it has great support for objects storage like Mongodb and its important for file media management.

I would suggest you to pick the right stack for the right purpose. My suggestion would be to go for Microservices approach and break your app into smaller pieces according to the type of functionality like you mentioned above. E.g if you would be expecting the high traffic on you platform, then Node.js can be used as the endpoint there to handle that traffic. Normal form processing can be done in Laravel but I would not suggest codeigniter as managing code is difficult there.
So this way you can decide do architecture you app and can use the best of the feature from all the languages. Even it would be easier for you to manage your app based on the functionality and team who will be working on that. Hope you would like my suggestions.
For a full-stack app or just simple APIs I'd go 100% with Laravel. You get a clean architecture, beautiful documentation and friendly and always growing community: the project is yours, from A to Z. With their docs and resources like Laracast you can start from zero and build what you want, when you want. The learning curve is definitely smaller when compared to Symfony and, with the help of a bit of "magic" (Facades etc.) you get the same results in the half of the time with cleaner code.
Pros of CodeIgniter
- Mvc86
- Easy setup76
- Open source70
- Well documented62
- Community support36
- Easy to learn25
- Easy21
- Fast14
- HMVC11
- Language Suppert9
- "Fast","Easy","MVC"9
- Powerful7
- Open source, Easy to setup6
- I think it is best. we can make all types of project6
- Easy, fast and full functional6
- Customizable5
- Beginner friendly framework5
- Super Lightweight, Super Easy to Learn4
- CLI3
- Easily Extensible2
- Powerful1
Pros of Symfony
- Open source175
- Php147
- Community128
- Dependency injection127
- Professional120
- Doctrine78
- Organized73
- Modular architecture69
- Smart programming45
- Solid43
- Documentation19
- LTS releases15
- Easy to Learn10
- Decoupled framework components9
- Robust9
- Good practices guideline8
- Service container8
- Bundle8
- Powerful7
- Simple7
- Flexible5
Sign up to add or upvote prosMake informed product decisions
Cons of CodeIgniter
- No ORM6
- No CLI1
Cons of Symfony
- Too many dependency9
- Lot of config files7
- YMAL4
- Feature creep2
- Bloated1