What is API Platform and what are its top alternatives?
Top Alternatives to API Platform
- 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. ...
- Symfony
It is written with speed and flexibility in mind. It allows developers to build better and easy to maintain websites with PHP.. ...
- Lumen
Laravel Lumen is a stunningly fast PHP micro-framework for building web applications with expressive, elegant syntax. We believe development must be an enjoyable, creative experience to be truly fulfilling. Lumen attempts to take the pain out of development by easing common tasks used in the majority of web projects, such as routing, database abstraction, queueing, and caching. ...
- Slim
Slim is easy to use for both beginners and professionals. Slim favors cleanliness over terseness and common cases over edge cases. Its interface is simple, intuitive, and extensively documented — both online and in the code itself. ...
- Node.js
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices. ...
- Django
Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. ...
- ASP.NET
.NET is a developer platform made up of tools, programming languages, and libraries for building many different types of applications. ...
- Android SDK
Android provides a rich application framework that allows you to build innovative apps and games for mobile devices in a Java language environment. ...
API Platform alternatives & related posts
- Clean architecture543
- Growing community386
- Composer friendly364
- Open source336
- The only framework to consider for php314
- Mvc216
- Quickly develop207
- Dependency injection165
- Application architecture154
- Embraces good community packages142
- Write less, do more70
- Orm (eloquent)65
- Restful routing64
- Database migrations & seeds54
- Artisan scaffolding and migrations52
- Awesome39
- Great documentation38
- Awsome, Powerfull, Fast and Rapid29
- Build Apps faster, easier and better27
- Promotes elegant coding26
- Modern PHP25
- Eloquent ORM25
- JSON friendly24
- Easy to learn, scalability23
- Beautiful22
- Blade Template22
- Most easy for me22
- Test-Driven21
- Security15
- Based on SOLID15
- Clean Documentation13
- Easy to attach Middleware13
- Cool13
- Convention over Configuration12
- Simple12
- Easy Request Validatin11
- Easy to use10
- Simpler10
- Fast10
- Get going quickly straight out of the box. BYOKDM9
- Its just wow9
- Friendly API8
- Laravel + Cassandra = Killer Framework8
- Simplistic , easy and faster8
- Less dependencies7
- Super easy and powerful7
- Great customer support6
- Its beautiful to code in6
- The only "cons" is wrong! No static method just Facades5
- Easy5
- Composer5
- Eloquent5
- Minimum system requirements5
- Laravel Mix5
- Speed5
- Active Record5
- Php75
- Fast and Clarify framework5
- Ease of use4
- Laravel Forge and Envoy4
- Cashier with Braintree and Stripe4
- Laravel casher4
- Laragon4
- Easy views handling and great ORM4
- Laravel Spark3
- Laravel Passport3
- Laravel Nova3
- Laravel Horizon and Telescope3
- Intuitive usage3
- Laravel Vite2
- Rapid development2
- Scout2
- Deployment2
- Succint sintax1
- Lovely1
- PHP48
- Too many dependency31
- 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 MongoDB3
- 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.
Back at the start of 2017, we decided to create a web-based tool for the SEO OnPage analysis of our clients' websites. We had over 2.000 websites to analyze, so we had to perform thousands of requests to get every single page from those websites, process the information and save the big amounts of data somewhere.
Very soon we realized that the initial chosen script language and database, PHP, Laravel and MySQL, was not going to be able to cope efficiently with such a task.
By that time, we were doing some experiments for other projects with a language we had recently get to know, Go , so we decided to get a try and code the crawler using it. It was fantastic, we could process much more data with way less CPU power and in less time. By using the concurrency abilites that the language has to offers, we could also do more Http requests in less time.
Unfortunately, I have no comparison numbers to show about the performance differences between Go and PHP since the difference was so clear from the beginning and that we didn't feel the need to do further comparison tests nor document it. We just switched fully to Go.
There was still a problem: despite the big amount of Data we were generating, MySQL was performing very well, but as we were adding more and more features to the software and with those features more and more different type of data to save, it was a nightmare for the database architects to structure everything correctly on the database, so it was clear what we had to do next: switch to a NoSQL database. So we switched to MongoDB, and it was also fantastic: we were expending almost zero time in thinking how to structure the Database and the performance also seemed to be better, but again, I have no comparison numbers to show due to the lack of time.
We also decided to switch the website from PHP and Laravel to JavaScript and Node.js and ExpressJS since working with the JSON Data that we were saving now in the Database would be easier.
As of now, we don't only use the tool intern but we also opened it for everyone to use for free: https://tool-seo.com
- Open source176
- Php148
- Community129
- Dependency injection128
- Professional121
- Doctrine79
- Organized74
- Modular architecture70
- Smart programming46
- Solid44
- Documentation20
- LTS releases15
- Easy to Learn10
- Decoupled framework components9
- Robust9
- Service container8
- Bundle8
- Good practices guideline8
- Simple7
- Powerful7
- Flexible6
- Too many dependency9
- Lot of config files7
- YMAL4
- Feature creep2
- 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.
- API38
- Microframework26
- MVC19
- PHP16
- Open source12
- Eloquent11
- Restful & fast framework10
- Composer8
- Illuminate support7
- Brother of laravel and fast4
- Easy to learn4
- Fast4
- Not fast3
- PHP2
- Not fast with MongoDB1
related Lumen posts
This is my stack in Application & Data
JavaScript PHP HTML5 jQuery Redis Amazon EC2 Ubuntu Sass Vue.js Firebase Laravel Lumen Amazon RDS GraphQL MariaDB
My Utilities Tools
Google Analytics Postman Elasticsearch
My Devops Tools
Git GitHub GitLab npm Visual Studio Code Kibana Sentry BrowserStack
My Business Tools
Slack
Hello everyone,
I have a final-study project, and I'm responsible for making decisions for what frameworks to use (both front-end and back-end) and the software architecture to adapt.
The project is a web application for a concrete company. The main goal is to calculate what is called OEE (Overall Equipment Effectiveness), meaning simply the efficiency of the machine. The calculation and display of OEE will be in real-time, meaning that this rate will be updated every two minutes, and it will appear in a graph. Also, we have the state of the machines to display whether the machines are working just fine or there is some problem.
This will be done using IoT, meaning that important data will be sent from the machine to the web application that I will create via the API (someone else will be responsible for this matter). Of course, the application will include employees, factories, as well as machines, ... etc.
The most important thing in the application is real-time performance monitoring of machines and the OEE.
A real example of what we want to do => https://evocon.com/
I choose to use Laravel because : - This type of applications could be implemented by Laravel - Me and my colleague have some knowledge and practice with this framework (choosing other technologies like Node.js means a huge learning curve) - Easy documentation and abandon tutorials
The only reason why I choose Vue.js because It goes well with Laravel (from what I have learned).
The second important question, which software architecture should I adapt ? should I use Microservice Architecture or the normal and well-known Monolithic Architecture? I know the benefits and disadvantages of the first and second methods, but I do not want to make a wrong decision.
If I choose microservice for this project, I will use Lumen (PHP Micro-Framework By Laravel).
Should I use micro-frontend as well? Like VuMS, or it's not necessary for this project?
I don't think that the reasons to choose Laravel are enough, so I want to understand the obstacles that I may face during the development.
In the end, I decided to ask and take expert opinions.
NOTE: this web application will be used by other companies, like in the case of evocon.
If there are tips and things that I must know to accomplish this project, please mention them.
Thank you very much.
- Microframework32
- API27
- Open source21
- Php20
- Fast11
- Restful & fast framework8
- Easy Setup, Great Documentation7
- Clear and straightforward5
- Good document to upgrade from previous version5
- Modular4
- Easy to learn2
- Dependency injection2
- Composer2
related Slim posts
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
Node.js
- Npm1.4K
- Javascript1.3K
- Great libraries1.1K
- High-performance1K
- Open source802
- Great for apis485
- Asynchronous475
- Great community421
- Great for realtime apps390
- Great for command line utilities296
- Websockets82
- Node Modules82
- Uber Simple69
- Great modularity59
- Allows us to reuse code in the frontend58
- Easy to start42
- Great for Data Streaming35
- Realtime32
- Awesome28
- Non blocking IO25
- Can be used as a proxy18
- High performance, open source, scalable17
- Non-blocking and modular16
- Easy and Fun15
- Easy and powerful14
- Future of BackEnd13
- Same lang as AngularJS13
- Fullstack12
- Fast11
- Scalability10
- Cross platform10
- Simple9
- Mean Stack8
- Great for webapps7
- Easy concurrency7
- React6
- Fast, simple code and async6
- Friendly6
- Typescript6
- Fast development5
- Its amazingly fast and scalable5
- Easy to use and fast and goes well with JSONdb's5
- Scalable5
- Great speed5
- Control everything5
- Easy to use4
- It's fast4
- Isomorphic coolness4
- Easy3
- Easy to learn3
- Great community3
- Not Python3
- Sooper easy for the Backend connectivity3
- TypeScript Support3
- Scales, fast, simple, great community, npm, express3
- One language, end-to-end3
- Less boilerplate code3
- Performant and fast prototyping3
- Blazing fast3
- Npm i ape-updating2
- Event Driven2
- Lovely2
- Creat for apis1
- Node0
- Bound to a single CPU46
- New framework every day44
- Lots of terrible examples on the internet38
- Asynchronous programming is the worst31
- Callback23
- Javascript18
- Dependency based on GitHub11
- Dependency hell11
- Low computational power10
- Very very Slow7
- Can block whole server easily7
- Callback functions may not fire on expected sequence6
- Unneeded over complication3
- Unstable3
- Breaking updates3
- No standard approach2
- Bad transitive dependency management1
- Can't read server session1
related Node.js posts
When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?
So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.
React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.
Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.
How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:
Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.
Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:
https://eng.uber.com/distributed-tracing/
(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)
Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark
- Rapid development660
- Open source480
- Great community416
- Easy to learn371
- Mvc271
- Beautiful code225
- Elegant217
- Free201
- Great packages198
- Great libraries186
- Restful74
- Comes with auth and crud admin panel73
- Powerful72
- Great documentation69
- Great for web65
- Python52
- Great orm39
- Great for api37
- All included28
- Fast25
- Web Apps23
- Clean21
- Used by top startups20
- Easy setup19
- Sexy18
- ORM14
- Convention over configuration14
- Allows for very rapid development with great libraries13
- The Django community12
- Great MVC and templating engine10
- King of backend world10
- Full stack8
- Its elegant and practical7
- Batteries included7
- Cross-Platform6
- Very quick to get something up and running6
- Have not found anything that it can't do6
- Fast prototyping6
- Mvt6
- Easy Structure , useful inbuilt library5
- Zero code burden to change databases5
- Easy to develop end to end AI Models5
- Map4
- Python community4
- Easy to use4
- Easy to change database manager4
- Modular4
- Great peformance4
- Easy4
- Many libraries4
- Full-Text Search3
- Just the right level of abstraction3
- Scaffold3
- Scalable1
- Node js1
- Rails0
- Fastapi0
- 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
- Python3
- 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?
ASP.NET
- Great mvc20
- Easy to learn12
- C#5
- C#1
- Entity framework is very slow1
- Not highly flexible for advance Developers1
related ASP.NET posts
Finding the most effective dev stack for a solo developer. Over the past year, I've been looking at many tech stacks that would be 'best' for me, as a solo, indie, developer to deliver a desktop app (Windows & Mac) plus mobile - iOS mainly. Initially, Xamarin started to stand-out. Using .NET Core as the run-time, Xamarin as the native API provider and Xamarin Forms for the UI seemed to solve all issues. But, the cracks soon started to appear. Xamarin Forms is mobile only; the Windows incarnation is different. There is no Mac UI solution (you have to code it natively in Mac OS Storyboard. I was also worried how Xamarin Forms , if I was to use it, was going to cope, in future, with Apple's new SwiftUI and Google's new Fuchsia.
This plethora of techs for the UI-layer made me reach for the safer waters of using Web-techs for the UI. Lovely! Consistency everywhere (well, mostly). But that consistency evaporates when platform issues are addressed. There are so many web frameworks!
But, I made a simple decision. It's just me...I am clever, but there is no army of coders here. And I have big plans for a business app. How could just 1 developer go-on to deploy a decent app to Windows, iPhone, iPad & Mac OS? I remembered earlier days when I've used Microsoft's ASP.NET to scaffold - generate - loads of Code for a web-app that I needed for several charities that I worked with. What 'generators' exist that do a lot of the platform-specific rubbish, allow the necessary customisation of such platform integration and provide a decent UI?
I've placed my colours to the Quasar Framework mast. Oh dear, that means Electron desktop apps doesn't it? Well, Ive had enough of loads of Developers saying that "the menus won't look native" or "it uses too much RAM" and so on. I've been using non-native UI-wrapped apps for ages - the date picker in Outlook on iOS is way better than the native date-picker and I'd been using it for years without getting hot under the collar about it. Developers do get so hung-up on things that busy Users hardly notice; don't you think?. As to the RAM usage issue; that's a bit true. But Users only really notice when an app uses so much RAM that the machine starts to page-out. Electron contributes towards that horizon but does not cause it. My Users will be business-users after all. Somewhat decent machines.
Looking forward to all that lovely Vue.js around my TypeScript and all those really, really, b e a u t I f u l UI controls of Quasar Framework . Still not sure that 1 dev can deliver all that... but I'm up for trying...
I am looking for a new framework to learn and achieve more efficient development. I come mainly from Laravel, which greatly simplifies development, but is somewhat slow for the volumes of data that I usually handle (although very stable) and it falls far behind in terms of simultaneous connections.
I'm looking for something that responds well to high concurrency, adapts well to server resources (cores) without the need to be concerned about consciously multi-threading or similar things, has a good ORM and friendly integration with PostgreSQL, request validation, And of course, it is scalable.
The main use would be for API development and behind the scenes processing of large volumes of data (50M on average, although this goes hand in hand with the database and server capacity)..
The last framework I would include but couldn't is ASP.NET MVC.
Android SDK
- Android development288
- Necessary for android155
- Android studio128
- Mobile framework86
- Backed by google82
- Platform-tools27
- Eclipse + adt plugin21
- Powerful, simple, one stop environment5
- Free3
- Больно3
related Android SDK posts
We are using React Native in #SmartHome to share the business logic between Android and iOS team and approach users with a unique brand experience. The drawback is that we require lots of native Android SDK and Objective-C modules, so a good part of the invested time is there. The gain for a app that relies less on native communication, sensors and OS tools should be even higher.
Also it helps us set different testing stages: we use Travis CI for the javascript (business logic), Bitrise to run build tests and @Detox for #end2end automated user tests.
We use a microservices structure on top of Zeit's @now that read from firebase. We use JWT auth to authenticate requests among services and from users, following GitHub philosophy of using the same infrastructure than its API consumers. Firebase is used mainly as a key-value store between services and as a backup database for users. We also use its authentication mechanisms.
You can be super locked-in if you also rely on it's analytics, but we use Amplitude for that, which offers us great insights. Intercom for communications with end-user and Mailjet for marketing.
I've recently switched to using Expo for initializing and developing my React Native apps. Compared to React Native CLI, it's so much easier to get set up and going. Setting up and maintaining Android Studio, Android SDK, and virtual devices used to be such a headache. Thanks to Expo, I can now test my apps directly on my Android phone, just by installing the Expo app. I still use Xcode Simulator for iOS testing, since I don't have an iPhone, but that's easy anyway. The big win for me with Expo is ease of Android testing.
The Expo SDK also provides convenient features like Facebook login, MapView
, push notifications, and many others. https://docs.expo.io/versions/v31.0.0/sdk/