What is CodeIgniter and what are its top alternatives?
Top Alternatives to CodeIgniter
- Laravel
It is a web application framework with expressive, elegant syntax. It attempts to take the pain out of development by easing common tasks used in the majority of web projects, such as authentication, routing, sessions, and caching. ...
- WordPress
The core software is built by hundreds of community volunteers, and when you’re ready for more there are thousands of plugins and themes available to transform your site into almost anything you can imagine. Over 60 million people have chosen WordPress to power the place on the web they call “home” — we’d love you to join the family. ...
- Yii
Yii comes with: MVC, DAO/ActiveRecord, I18N/L10N, caching, authentication and role-based access control, scaffolding, testing, etc. It can reduce your development time significantly. ...
- Symfony
It is written with speed and flexibility in mind. It allows developers to build better and easy to maintain websites with PHP.. ...
- Kohana
Kohana is an elegant, open source, and object oriented HMVC framework built using PHP5, by a team of volunteers. It aims to be swift, secure, and small. ...
- CakePHP
It makes building web applications simpler, faster, while requiring less code. A modern PHP 7 framework offering a flexible database access layer and a powerful scaffolding system. ...
- Django
Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. ...
- React
Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project. ...
CodeIgniter alternatives & related posts
- Clean architecture554
- Growing community392
- Composer friendly370
- Open source344
- The only framework to consider for php325
- Mvc220
- Quickly develop210
- Dependency injection168
- Application architecture156
- Embraces good community packages143
- Write less, do more73
- Orm (eloquent)71
- Restful routing66
- Database migrations & seeds57
- Artisan scaffolding and migrations55
- Great documentation41
- Awesome40
- Awsome, Powerfull, Fast and Rapid30
- Build Apps faster, easier and better29
- Eloquent ORM28
- Promotes elegant coding26
- JSON friendly26
- Modern PHP26
- Most easy for me25
- Easy to learn, scalability24
- Beautiful23
- Blade Template22
- Test-Driven21
- Security15
- Based on SOLID15
- Cool13
- Clean Documentation13
- Easy to attach Middleware13
- Simple12
- Convention over Configuration12
- Easy Request Validatin11
- Simpler10
- Easy to use10
- Fast10
- Get going quickly straight out of the box. BYOKDM9
- Its just wow9
- Laravel + Cassandra = Killer Framework8
- Simplistic , easy and faster8
- Friendly API8
- Less dependencies7
- Super easy and powerful7
- Great customer support6
- Its beautiful to code in6
- Speed5
- Eloquent5
- Composer5
- Minimum system requirements5
- Laravel Mix5
- Easy5
- The only "cons" is wrong! No static method just Facades5
- Fast and Clarify framework5
- Active Record5
- Php75
- Ease of use4
- Laragon4
- Laravel casher4
- Easy views handling and great ORM4
- Laravel Forge and Envoy4
- Cashier with Braintree and Stripe4
- Laravel Passport3
- Laravel Spark3
- Intuitive usage3
- Laravel Horizon and Telescope3
- Laravel Nova3
- Rapid development3
- Laravel Vite2
- Scout2
- Deployment2
- Succint sintax1
- PHP54
- Too many dependency33
- Slower than the other two23
- A lot of static method calls for convenience17
- Too many include15
- Heavy13
- Bloated9
- Laravel8
- Confusing7
- Too underrated5
- Not fast with MongoDB4
- Slow and too much big1
- Not using SOLID principles1
- Difficult to learn1
related Laravel posts
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.
Coming from a non-web development environment background, I was a bit lost a first and bewildered by all the varying tools and platforms, and spent much too long evaluating before eventualy deciding on Laravel as the main core of my development.
But as I started development with Laravel that lead me into discovering Vue.js for creating beautiful front-end components that were easy to configure and extend, so I decided to standardise on Vue.js for most of my front-end development.
During my search for additional Vue.js components, a chance comment in a @laravel forum , led me to discover Quasar Framework initially for it's wide range of in-built components ... but once, I realised that Quasar Framework allowed me to use the same codebase to create apps for SPA, PWA, iOS, Android, and Electron then I was hooked.
So, I'm now using mainly just Quasar Framework for all the front-end, with Laravel providing a backend API service to the Front-end apps.
I'm deploying this all to DigitalOcean droplets via service called Moss.sh which deploys my private GitHub repositories directly to DigitalOcean in realtime.
WordPress
- Customizable416
- Easy to manage367
- Plugins & themes354
- Non-tech colleagues can update website content259
- Really powerful247
- Rapid website development145
- Best documentation78
- Codex51
- Product feature set44
- Custom/internal social network35
- Open source18
- Great for all types of websites8
- Huge install and user base7
- I like it like I like a kick in the groin5
- It's simple and easy to use by any novice5
- Perfect example of user collaboration5
- Open Source Community5
- Most websites make use of it5
- Best5
- API-based CMS4
- Community4
- Easy To use3
- <a href="https://secure.wphackedhel">Easy Beginner</a>2
- Hard to keep up-to-date if you customize things13
- Plugins are of mixed quality13
- Not best backend UI10
- Complex Organization2
- Do not cover all the basics in the core1
- Great Security1
related WordPress posts
I've heard that I have the ability to write well, at times. When it flows, it flows. I decided to start blogging in 2013 on Blogger. I started a company and joined BizPark with the Microsoft Azure allotment. I created a WordPress blog and did a migration at some point. A lot happened in the time after that migration but I stopped coding and changed cities during tumultuous times that taught me many lessons concerning mental health and productivity. I eventually graduated from BizSpark and outgrew the credit allotment. That killed the WordPress blog.
I blogged about writing again on the existing Blogger blog but it didn't feel right. I looked at a few options where I wouldn't have to worry about hosting cost indefinitely and Jekyll stood out with GitHub Pages. The Importer was fairly straightforward for the existing blog posts.
Todo * Set up redirects for all posts on blogger. The URI format is different so a complete redirect wouldn't work. Although, there may be something in Jekyll that could manage the redirects. I did notice the old URLs were stored in the front matter. I'm working on a command-line Ruby gem for the current plan. * I did find some of the lost WordPress posts on archive.org that I downloaded with the waybackmachinedownloader. I think I might write an importer for that. * I still have a few Disqus comment threads to map
hello guys, I need your help. I created a website, I've been using Elementor forever, but yesterday I bought a template after I made the purchase I knew I made a mistake, cause the template was in HTML, can anyone please show me how to put this HTML template in my WordPress so it will be the face of my website, thank you in advance.
- Open source42
- Code generator33
- Simple33
- Active record29
- Full featured26
- Documentation21
- High performance21
- Rapid development20
- Flexible16
- Mvc11
- Not bloated10
- Stable Release8
- Community8
- Amazing8
- View Helpers7
- Modular architecture6
- Long Term Support6
- Easy setup, easy develop5
- Easy1
- Unnatural love of arrays2
- Promotes spagetti code1
- Too Opinionated1
- Promotes bad practice1
related Yii posts
Of all PHP frameworks, my best and only choice is Yii . Think of this: you have a MySQL database, it contains several tables. Now you want to setup a PHP-MVC site, firstly, you must create Models, Yii have a very handy tool called Gii, you can easily create model with Gii just by one click, Gii will read your database table columns and create PHP models automatically for you. Now you need Controller, still with Gii, it will automatically create all 4 php files for you with Insert/Delete/Update/Select even with Search function.
Well, now the most modern way is to have a RESTful API, that's even easier with Yii, you even don't need to care about all the columns, just 4 lines of code you can expose your database table as RESTful API with all GET/POST/PUT/DELETE support, even you change your database table columns, you don't need to change any PHP code.
For security, Yii have embedded authentication and RBAC support. For multi language, Yii have embedded i18n support, all with out-of-box. Just play with it, I bet you will love it.
I'm about to start a new project to build a REST API, and I got to this point: Yii2 Vs Lumen Vs Slim, I used Yii 1.1 a while a go and it was awesome, really easy to work with, as a developer you don't have to worry about almost anything, just setup the framework, get your php extensions, and start coding your app.
But, I was told about performance and someone recomended Lumen or Slim to work with a micro framework and a less bloated framework, what worries me is the lack of advantages that Yii2 offers, ACF and RBAC as a native tool on the framework, gii, the model validations and all the security props already in it.
Is it worth it? Is the performance so great on those frameworks to leave aside the advantages of a framework like Yii2?
How do you suggest to make the test to prove wich one is better?
PHP Lumen Yii Slim
- Open source177
- Php149
- Community130
- Dependency injection129
- Professional122
- Doctrine80
- Organized75
- Modular architecture71
- Smart programming47
- Solid45
- Documentation20
- LTS releases16
- Decoupled framework components10
- Robust10
- Easy to Learn10
- Good practices guideline8
- Service container8
- Bundle8
- Powerful7
- Simple7
- Flexible6
- Too many dependency10
- Lot of config files8
- YMAL4
- Feature creep3
- Bloated1
related Symfony posts
I really love Django because it is really fast to create a web application from scratch and it has a lot a facilities like the ORM or the Admin module ! The Python language is really easy to read and powerful, that's why I prefer Django over Symfony.
I use Django at work to make tools for the technicians but I also use it for me to build my personal website which I host on PythonAnywhere, and with a domain name bought on Namecheap.
We needed our e-commerce platform (built using WooCommerce) to be able to keep products in sync with our #pim (provided by #akeneo) which is built in Symfony . We hooked into the kernel.event_listener to send RabbitMQ messages to a WordPress API endpoint that triggers the updated product to rebuild with fresh data.
- Open source4
- Efficient and lightweight3
- Cascading filesystem3
- Easy to understand PHP framework2
- Extensible2
- A business opportunity1
related Kohana posts
- Open source35
- Really rapid framework25
- Good code organization19
- Flexibility13
- Security best practices10
- Clean architecture7
- ORM5
- Less code5
- Composer friendly4
- Convention Over Configuration4
- CakePhp Book2
- Cake Bake2
- Built-in Validation2
- Ctp view File extension1
- CakePhp inflector1
- Quickly develop1
- Rest Full Apis1
- Robust Baking Tool1
- Follows Good Programming Practices1
related CakePHP posts
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?
- Rapid development673
- Open source487
- Great community425
- Easy to learn379
- Mvc277
- Beautiful code232
- Elegant223
- Free207
- Great packages203
- Great libraries194
- Comes with auth and crud admin panel80
- Restful79
- Powerful78
- Great documentation76
- Great for web72
- Python57
- Great orm43
- Great for api41
- All included32
- Fast29
- Web Apps25
- Clean23
- Easy setup23
- Used by top startups21
- Sexy19
- ORM19
- The Django community15
- Allows for very rapid development with great libraries14
- Convention over configuration14
- King of backend world11
- Full stack10
- Great MVC and templating engine10
- Mvt8
- Fast prototyping8
- Its elegant and practical7
- Easy to develop end to end AI Models7
- Batteries included7
- Have not found anything that it can't do6
- Very quick to get something up and running6
- Cross-Platform6
- Zero code burden to change databases5
- Great peformance5
- Python community5
- Easy Structure , useful inbuilt library5
- Easy to use4
- Map4
- Easy to change database manager4
- Full-Text Search4
- Just the right level of abstraction4
- Many libraries4
- Modular4
- Easy4
- Scaffold3
- Node js1
- Built in common security1
- Great default admin panel1
- Scalable1
- Cons1
- Gigante ta1
- Fastapi1
- Rails0
- Underpowered templating26
- Autoreload restarts whole server22
- Underpowered ORM22
- URL dispatcher ignores HTTP method15
- Internal subcomponents coupling10
- Not nodejs8
- Configuration hell8
- Admin7
- Not as clean and nice documentation like Laravel5
- Python4
- Not typed3
- Bloated admin panel included3
- Overwhelming folder structure2
- InEffective Multithreading2
- Not type safe1
related Django posts
Simple controls over complex technologies, as we put it, wouldn't be possible without neat UIs for our user areas including start page, dashboard, settings, and docs.
Initially, there was Django. Back in 2011, considering our Python-centric approach, that was the best choice. Later, we realized we needed to iterate on our website more quickly. And this led us to detaching Django from our front end. That was when we decided to build an SPA.
For building user interfaces, we're currently using React as it provided the fastest rendering back when we were building our toolkit. It’s worth mentioning Uploadcare is not a front-end-focused SPA: we aren’t running at high levels of complexity. If it were, we’d go with Ember.js.
However, there's a chance we will shift to the faster Preact, with its motto of using as little code as possible, and because it makes more use of browser APIs. One of our future tasks for our front end is to configure our Webpack bundler to split up the code for different site sections. For styles, we use PostCSS along with its plugins such as cssnano which minifies all the code.
All that allows us to provide a great user experience and quickly implement changes where they are needed with as little code as possible.
Hey, so I developed a basic application with Python. But to use it, you need a python interpreter. I want to add a GUI to make it more appealing. What should I choose to develop a GUI? I have very basic skills in front end development (CSS, JavaScript). I am fluent in python. I'm looking for a tool that is easy to use and doesn't require too much code knowledge. I have recently tried out Flask, but it is kinda complicated. Should I stick with it, move to Django, or is there another nice framework to use?
- Components834
- Virtual dom673
- Performance578
- Simplicity508
- Composable442
- Data flow186
- Declarative166
- Isn't an mvc framework128
- Reactive updates120
- Explicit app state115
- JSX50
- Learn once, write everywhere29
- Easy to Use22
- Uni-directional data flow21
- Works great with Flux Architecture17
- Great perfomance11
- Javascript10
- Built by Facebook9
- TypeScript support8
- Speed6
- Server Side Rendering6
- Scalable6
- Props5
- Excellent Documentation5
- Functional5
- Easy as Lego5
- Closer to standard JavaScript and HTML than others5
- Cross-platform5
- Feels like the 90s5
- Easy to start5
- Hooks5
- Awesome5
- Scales super well4
- Allows creating single page applications4
- Server side views4
- Sdfsdfsdf4
- Start simple4
- Strong Community4
- Fancy third party tools4
- Super easy4
- Has arrow functions3
- Very gentle learning curve3
- Beautiful and Neat Component Management3
- Just the View of MVC3
- Simple, easy to reason about and makes you productive3
- Fast evolving3
- SSR3
- Great migration pathway for older systems3
- Rich ecosystem3
- Simple3
- Has functional components3
- Every decision architecture wise makes sense3
- HTML-like2
- Image upload2
- Sharable2
- Recharts2
- Split your UI into components with one true state2
- Permissively-licensed2
- Fragments2
- Datatables1
- React hooks1
- Requires discipline to keep architecture organized41
- No predefined way to structure your app30
- Need to be familiar with lots of third party packages29
- JSX13
- Not enterprise friendly10
- One-way binding only6
- State consistency with backend neglected3
- Bad Documentation3
- Error boundary is needed2
- Paradigms change too fast2
related React posts
I was building a personal project that I needed to store items in a real time database. I am more comfortable with my Frontend skills than my backend so I didn't want to spend time building out anything in Ruby or Go.
I stumbled on Firebase by #Google, and it was really all I needed. It had realtime data, an area for storing file uploads and best of all for the amount of data I needed it was free!
I built out my application using tools I was familiar with, React for the framework, Redux.js to manage my state across components, and styled-components for the styling.
Now as this was a project I was just working on in my free time for fun I didn't really want to pay for hosting. I did some research and I found Netlify. I had actually seen them at #ReactRally the year before and deployed a Gatsby site to Netlify already.
Netlify was very easy to setup and link to my GitHub account you select a repo and pretty much with very little configuration you have a live site that will deploy every time you push to master.
With the selection of these tools I was able to build out my application, connect it to a realtime database, and deploy to a live environment all with $0 spent.
If you're looking to build out a small app I suggest giving these tools a go as you can get your idea out into the real world for absolutely no cost.
Your tech stack is solid for building a real-time messaging project.
React and React Native are excellent choices for the frontend, especially if you want to have both web and mobile versions of your application share code.
ExpressJS is an unopinionated framework that affords you the flexibility to use it's features at your term, which is a good start. However, I would recommend you explore Sails.js as well. Sails.js is built on top of Express.js and it provides additional features out of the box, especially the Websocket integration that your project requires.
Don't forget to set up Graphql codegen, this would improve your dev experience (Add Typescript, if you can too).
I don't know much about databases but you might want to consider using NO-SQL. I used Firebase real-time db and aws dynamo db on a few of my personal projects and I love they're easy to work with and offer more flexibility for a chat application.