Alternatives to ExpressJS logo

Alternatives to ExpressJS

Koa, React, Flask, Django, and Golang are the most popular alternatives and competitors to ExpressJS.
27.1K
20.8K
+ 1
1.6K

What is ExpressJS and what are its top alternatives?

Express is a minimal and flexible node.js web application framework, providing a robust set of features for building single and multi-page, and hybrid web applications.
ExpressJS is a tool in the Microframeworks (Backend) category of a tech stack.
ExpressJS is an open source tool with GitHub stars and GitHub forks. Here’s a link to ExpressJS's open source repository on GitHub

Top Alternatives to ExpressJS

  • Koa
    Koa

    Koa aims to be a smaller, more expressive, and more robust foundation for web applications and APIs. Through leveraging generators Koa allows you to ditch callbacks and greatly increase error-handling. Koa does not bundle any middleware. ...

  • React
    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. ...

  • Flask
    Flask

    Flask is intended for getting started very quickly and was developed with best intentions in mind. ...

  • Django
    Django

    Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. ...

  • Golang
    Golang

    Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language. ...

  • NGINX
    NGINX

    nginx [engine x] is an HTTP and reverse proxy server, as well as a mail proxy server, written by Igor Sysoev. According to Netcraft nginx served or proxied 30.46% of the top million busiest sites in Jan 2018. ...

  • Laravel
    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. ...

  • hapi
    hapi

    hapi is a simple to use configuration-centric framework with built-in support for input validation, caching, authentication, and other essential facilities for building web applications and services. ...

ExpressJS alternatives & related posts

Koa logo

Koa

563
457
12
Next generation web framework for node.js
563
457
+ 1
12
PROS OF KOA
  • 6
    Async/Await
  • 5
    JavaScript
  • 1
    REST API
CONS OF KOA
    Be the first to leave a con

    related Koa posts

    Antonio Kobashikawa
    Web developer | Blogger | Freelancer at Rulo Kobashikawa · | 6 upvotes · 218K views

    We are using Node.js and ExpressJS to build a REST services that is middleware of a legacy system. MongoDB as database. Vue.js helps us to make rapid UI to test use cases. Frontend is build for mobile with Ionic . We like using JavaScript and ES6 .

    I think next step could be to use Koa but I am not sure.

    See more
    Paul Whittemore
    Developer and Owner at Appurist Software · | 1 upvote · 187.9K views
    Shared insights
    on
    FastifyFastifyKoaKoaExpressJSExpressJS

    Will base most server-side APIs on Fastify . Smaller, faster, easier. Faster than Koa; and twice as fast as ExpressJS.

    See more
    React logo

    React

    146.8K
    121.4K
    4K
    A JavaScript library for building user interfaces
    146.8K
    121.4K
    + 1
    4K
    PROS OF REACT
    • 801
      Components
    • 663
      Virtual dom
    • 572
      Performance
    • 500
      Simplicity
    • 442
      Composable
    • 183
      Data flow
    • 165
      Declarative
    • 126
      Isn't an mvc framework
    • 116
      Reactive updates
    • 113
      Explicit app state
    • 44
      JSX
    • 27
      Learn once, write everywhere
    • 20
      Uni-directional data flow
    • 20
      Easy to Use
    • 16
      Works great with Flux Architecture
    • 11
      Great perfomance
    • 9
      Built by Facebook
    • 9
      Javascript
    • 7
      TypeScript support
    • 6
      Speed
    • 5
      Hooks
    • 5
      Excellent Documentation
    • 5
      Props
    • 5
      Functional
    • 5
      Easy as Lego
    • 5
      Closer to standard JavaScript and HTML than others
    • 5
      Cross-platform
    • 5
      Server Side Rendering
    • 5
      Feels like the 90s
    • 5
      Easy to start
    • 5
      Awesome
    • 5
      Scalable
    • 4
      Strong Community
    • 4
      Server side views
    • 4
      Fancy third party tools
    • 4
      Scales super well
    • 4
      Start simple
    • 4
      Super easy
    • 3
      Simple, easy to reason about and makes you productive
    • 3
      Fast evolving
    • 3
      SSR
    • 3
      Great migration pathway for older systems
    • 3
      Rich ecosystem
    • 3
      Simple
    • 3
      Has functional components
    • 3
      Allows creating single page applications
    • 3
      Has arrow functions
    • 3
      Very gentle learning curve
    • 3
      Sdfsdfsdf
    • 3
      Beautiful and Neat Component Management
    • 3
      Just the View of MVC
    • 2
      Split your UI into components with one true state
    • 2
      Fragments
    • 2
      Sharable
    • 2
      Every decision architecture wise makes sense
    • 2
      Permissively-licensed
    • 1
      Image upload
    • 1
      HTML-like
    • 1
      Recharts
    CONS OF REACT
    • 38
      Requires discipline to keep architecture organized
    • 27
      No predefined way to structure your app
    • 26
      Need to be familiar with lots of third party packages
    • 10
      JSX
    • 8
      Not enterprise friendly
    • 6
      One-way binding only
    • 3
      State consistency with backend neglected
    • 3
      Bad Documentation
    • 2
      Paradigms change too fast
    • 2
      Error boundary is needed

    related React posts

    Vaibhav Taunk
    Team Lead at Technovert · | 31 upvotes · 2.3M views

    I am starting to become a full-stack developer, by choosing and learning .NET Core for API Development, Angular CLI / React for UI Development, MongoDB for database, as it a NoSQL DB and Flutter / React Native for Mobile App Development. Using Postman, Markdown and Visual Studio Code for development.

    See more
    Adebayo Akinlaja
    Engineering Manager at Andela · | 29 upvotes · 1.6M views

    I picked up an idea to develop and it was no brainer I had to go with React for the frontend. I was faced with challenges when it came to what component framework to use. I had worked extensively with Material-UI but I needed something different that would offer me wider range of well customized components (I became pretty slow at styling). I brought in Evergreen after several sampling and reads online but again, after several prototype development against Evergreen—since I was using TypeScript and I had to import custom Type, it felt exhaustive. After I validated Evergreen with the designs of the idea I was developing, I also noticed I might have to do a lot of styling. I later stumbled on Material Kit, the one specifically made for React . It was promising with beautifully crafted components, most of which fits into the designs pages I had on ground.

    A major problem of Material Kit for me is it isn't written in TypeScript and there isn't any plans to support its TypeScript version. I rolled up my sleeve and started converting their components to TypeScript and if you'll ask me, I am still on it.

    In summary, I used the Create React App with TypeScript support and I am spending some time converting Material Kit to TypeScript before I start developing against it. All of these components are going to be hosted on Bit.

    If you feel I am crazy or I have gotten something wrong, I'll be willing to listen to your opinion. Also, if you want to have a share of whatever TypeScript version of Material Kit I end up coming up with, let me know.

    See more
    Flask logo

    Flask

    17.4K
    14.9K
    1.6K
    A microframework for Python based on Werkzeug, Jinja 2 and good intentions
    17.4K
    14.9K
    + 1
    1.6K
    PROS OF FLASK
    • 319
      Lightweight
    • 275
      Python
    • 217
      Minimal
    • 149
      Open source
    • 100
      Documentation
    • 69
      Easy to use
    • 55
      Well designed
    • 55
      Easy to setup and get it going
    • 51
      Easy to develop and maintain applications
    • 48
      Easy to get started
    • 22
      Beautiful code
    • 19
      Rapid development
    • 16
      Powerful
    • 15
      Expressive
    • 14
      Customizable
    • 14
      Flexibilty
    • 14
      Simple to use
    • 13
      Love it
    • 13
      Get started quickly
    • 13
      Awesome
    • 12
      Speed
    • 11
      Perfect for small to large projects with superb docs.
    • 11
      Easy to integrate
    • 10
      For it flexibility
    • 9
      Productive
    • 9
      Flexibilty and easy to use
    • 8
      Flask
    • 8
      Not JS
    • 7
      User friendly
    • 6
      Secured
    • 5
      Unopinionated
    • 3
      Orm
    • 2
      Secure
    CONS OF FLASK
    • 10
      Not JS
    • 7
      Context
    • 5
      Not fast
    • 1
      Don't has many module as in spring

    related Flask posts

    James Man
    Software Engineer at Pinterest · | 44 upvotes · 1.1M views
    Shared insights
    on
    FlaskFlaskReactReact
    at

    One of our top priorities at Pinterest is fostering a safe and trustworthy experience for all Pinners. As Pinterest’s user base and ads business grow, the review volume has been increasing exponentially, and more content types require moderation support. To solve greater engineering and operational challenges at scale, we needed a highly-reliable and performant system to detect, report, evaluate, and act on abusive content and users and so we created Pinqueue.

    Pinqueue-3.0 serves as a generic platform for content moderation and human labeling. Under the hood, Pinqueue3.0 is a Flask + React app powered by Pinterest’s very own Gestalt UI framework. On the backend, Pinqueue3.0 heavily relies on PinLater, a Pinterest-built reliable asynchronous job execution system, to handle the requests for enqueueing and action-taking. Using PinLater has significantly strengthened Pinqueue3.0’s overall infra with its capability of processing a massive load of events with configurable retry policies.

    Hundreds of millions of people around the world use Pinterest to discover and do what they love, and our job is to protect them from abusive and harmful content. We’re committed to providing an inspirational yet safe experience to all Pinners. Solving trust & safety problems is a joint effort requiring expertise across multiple domains. Pinqueue3.0 not only plays a critical role in responsively taking down unsafe content, it also has become an enabler for future ML/automation initiatives by providing high-quality human labels. Going forward, we will continue to improve the review experience, measure review quality and collaborate with our machine learning teams to solve content moderation beyond manual reviews at an even larger scale.

    See more

    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?

    See more
    Django logo

    Django

    33.3K
    30.1K
    4K
    The Web framework for perfectionists with deadlines
    33.3K
    30.1K
    + 1
    4K
    PROS OF DJANGO
    • 656
      Rapid development
    • 480
      Open source
    • 414
      Great community
    • 369
      Easy to learn
    • 270
      Mvc
    • 224
      Beautiful code
    • 216
      Elegant
    • 199
      Free
    • 196
      Great packages
    • 185
      Great libraries
    • 74
      Restful
    • 72
      Comes with auth and crud admin panel
    • 72
      Powerful
    • 69
      Great documentation
    • 64
      Great for web
    • 51
      Python
    • 39
      Great orm
    • 37
      Great for api
    • 28
      All included
    • 25
      Fast
    • 23
      Web Apps
    • 20
      Used by top startups
    • 20
      Clean
    • 19
      Easy setup
    • 17
      Sexy
    • 14
      Convention over configuration
    • 13
      Allows for very rapid development with great libraries
    • 13
      ORM
    • 12
      The Django community
    • 10
      King of backend world
    • 9
      Great MVC and templating engine
    • 8
      Full stack
    • 7
      Batteries included
    • 7
      Its elegant and practical
    • 6
      Have not found anything that it can't do
    • 6
      Very quick to get something up and running
    • 6
      Cross-Platform
    • 6
      Fast prototyping
    • 6
      Mvt
    • 5
      Zero code burden to change databases
    • 5
      Easy to develop end to end AI Models
    • 5
      Easy Structure , useful inbuilt library
    • 4
      Great peformance
    • 4
      Python community
    • 4
      Map
    • 4
      Easy
    • 4
      Many libraries
    • 4
      Modular
    • 4
      Easy to use
    • 4
      Easy to change database manager
    • 3
      Just the right level of abstraction
    • 3
      Scaffold
    • 3
      Full-Text Search
    • 1
      Scalable
    • 1
      Node js
    • 0
      Rails
    • 0
      Fastapi
    CONS OF DJANGO
    • 25
      Underpowered templating
    • 22
      Autoreload restarts whole server
    • 21
      Underpowered ORM
    • 15
      URL dispatcher ignores HTTP method
    • 10
      Internal subcomponents coupling
    • 8
      Not nodejs
    • 7
      Admin
    • 7
      Configuration hell
    • 5
      Not as clean and nice documentation like Laravel
    • 3
      Bloated admin panel included
    • 3
      Python
    • 3
      Not typed
    • 2
      InEffective Multithreading
    • 2
      Overwhelming folder structure

    related Django posts

    Dmitry Mukhin

    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.

    See more

    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?

    See more
    Golang logo

    Golang

    16.3K
    13.1K
    3.2K
    An open source programming language that makes it easy to build simple, reliable, and efficient software
    16.3K
    13.1K
    + 1
    3.2K
    PROS OF GOLANG
    • 536
      High-performance
    • 390
      Simple, minimal syntax
    • 357
      Fun to write
    • 298
      Easy concurrency support via goroutines
    • 270
      Fast compilation times
    • 192
      Goroutines
    • 179
      Statically linked binaries that are simple to deploy
    • 150
      Simple compile build/run procedures
    • 135
      Backed by google
    • 133
      Great community
    • 52
      Garbage collection built-in
    • 44
      Built-in Testing
    • 43
      Excellent tools - gofmt, godoc etc
    • 39
      Elegant and concise like Python, fast like C
    • 36
      Awesome to Develop
    • 26
      Used for Docker
    • 25
      Flexible interface system
    • 23
      Great concurrency pattern
    • 23
      Deploy as executable
    • 20
      Open-source Integration
    • 17
      Fun to write and so many feature out of the box
    • 16
      Easy to read
    • 16
      Go is God
    • 14
      Its Simple and Heavy duty
    • 14
      Powerful and simple
    • 14
      Easy to deploy
    • 13
      Best language for concurrency
    • 12
      Concurrency
    • 11
      Rich standard library
    • 11
      Safe GOTOs
    • 10
      Clean code, high performance
    • 10
      Easy setup
    • 9
      Simplicity, Concurrency, Performance
    • 9
      High performance
    • 8
      Single binary avoids library dependency issues
    • 8
      Hassle free deployment
    • 7
      Simple, powerful, and great performance
    • 7
      Cross compiling
    • 7
      Used by Giants of the industry
    • 6
      Gofmt
    • 6
      Garbage Collection
    • 5
      Very sophisticated syntax
    • 5
      WYSIWYG
    • 5
      Excellent tooling
    • 4
      Widely used
    • 4
      Keep it simple and stupid
    • 4
      Kubernetes written on Go
    • 2
      No generics
    • 1
      Operator goto
    CONS OF GOLANG
    • 41
      You waste time in plumbing code catching errors
    • 25
      Verbose
    • 23
      Packages and their path dependencies are braindead
    • 15
      Dependency management when working on multiple projects
    • 15
      Google's documentations aren't beginer friendly
    • 10
      Automatic garbage collection overheads
    • 8
      Uncommon syntax
    • 6
      Type system is lacking (no generics, etc)
    • 3
      Collection framework is lacking (list, set, map)
    • 2
      Best programming language

    related Golang posts

    Conor Myhrvold
    Tech Brand Mgr, Office of CTO at Uber · | 41 upvotes · 5.7M views

    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

    See more
    Nick Parsons
    Building cool things on the internet 🛠️ at Stream · | 35 upvotes · 1.8M views

    Winds 2.0 is an open source Podcast/RSS reader developed by Stream with a core goal to enable a wide range of developers to contribute.

    We chose JavaScript because nearly every developer knows or can, at the very least, read JavaScript. With ES6 and Node.js v10.x.x, it’s become a very capable language. Async/Await is powerful and easy to use (Async/Await vs Promises). Babel allows us to experiment with next-generation JavaScript (features that are not in the official JavaScript spec yet). Yarn allows us to consistently install packages quickly (and is filled with tons of new tricks)

    We’re using JavaScript for everything – both front and backend. Most of our team is experienced with Go and Python, so Node was not an obvious choice for this app.

    Sure... there will be haters who refuse to acknowledge that there is anything remotely positive about JavaScript (there are even rants on Hacker News about Node.js); however, without writing completely in JavaScript, we would not have seen the results we did.

    #FrameworksFullStack #Languages

    See more
    NGINX logo

    NGINX

    105.9K
    54.5K
    5.5K
    A high performance free open source web server powering busiest sites on the Internet.
    105.9K
    54.5K
    + 1
    5.5K
    PROS OF NGINX
    • 1.4K
      High-performance http server
    • 894
      Performance
    • 729
      Easy to configure
    • 607
      Open source
    • 530
      Load balancer
    • 288
      Free
    • 288
      Scalability
    • 224
      Web server
    • 175
      Simplicity
    • 136
      Easy setup
    • 30
      Content caching
    • 21
      Web Accelerator
    • 15
      Capability
    • 14
      Fast
    • 12
      High-latency
    • 12
      Predictability
    • 8
      Reverse Proxy
    • 7
      Supports http/2
    • 7
      The best of them
    • 5
      Great Community
    • 5
      Lots of Modules
    • 5
      Enterprise version
    • 4
      High perfomance proxy server
    • 3
      Reversy Proxy
    • 3
      Streaming media
    • 3
      Embedded Lua scripting
    • 3
      Streaming media delivery
    • 2
      Fast and easy to set up
    • 2
      saltstack
    • 2
      Slim
    • 2
      Blash
    • 2
      Lightweight
    • 1
      Ingress controller
    • 1
      Virtual hosting
    • 1
      Along with Redis Cache its the Most superior
    • 1
      GRPC-Web
    • 1
      Narrow focus. Easy to configure. Fast
    CONS OF NGINX
    • 8
      Advanced features require subscription

    related NGINX posts

    Recently I have been working on an open source stack to help people consolidate their personal health data in a single database so that AI and analytics apps can be run against it to find personalized treatments. We chose to go with a #containerized approach leveraging Docker #containers with a local development environment setup with Docker Compose and nginx for container routing. For the production environment we chose to pull code from GitHub and build/push images using Jenkins and using Kubernetes to deploy to Amazon EC2.

    We also implemented a dashboard app to handle user authentication/authorization, as well as a custom SSO server that runs on Heroku which allows experts to easily visit more than one instance without having to login repeatedly. The #Backend was implemented using my favorite #Stack which consists of FeathersJS on top of Node.js and ExpressJS with PostgreSQL as the main database. The #Frontend was implemented using React, Redux.js, Semantic UI React and the FeathersJS client. Though testing was light on this project, we chose to use AVA as well as ESLint to keep the codebase clean and consistent.

    See more
    Gabriel Pa
    Shared insights
    on
    TraefikTraefikNGINXNGINX
    at

    We switched to Traefik so we can use the REST API to dynamically configure subdomains and have the ability to redirect between multiple servers.

    We still use nginx with a docker-compose to expose the traffic from our APIs and TCP microservices, but for managing routing to the internet Traefik does a much better job

    The biggest win for naologic was the ability to set dynamic configurations without having to restart the server

    See more
    Laravel logo

    Laravel

    24.8K
    20.5K
    3.7K
    A PHP Framework For Web Artisans
    24.8K
    20.5K
    + 1
    3.7K
    PROS OF LARAVEL
    • 534
      Clean architecture
    • 382
      Growing community
    • 360
      Composer friendly
    • 331
      Open source
    • 311
      The only framework to consider for php
    • 214
      Mvc
    • 205
      Quickly develop
    • 164
      Dependency injection
    • 151
      Application architecture
    • 140
      Embraces good community packages
    • 69
      Write less, do more
    • 64
      Orm (eloquent)
    • 63
      Restful routing
    • 52
      Database migrations & seeds
    • 50
      Artisan scaffolding and migrations
    • 37
      Awesome
    • 37
      Great documentation
    • 28
      Awsome, Powerfull, Fast and Rapid
    • 26
      Build Apps faster, easier and better
    • 25
      Promotes elegant coding
    • 24
      Eloquent ORM
    • 23
      JSON friendly
    • 23
      Modern PHP
    • 22
      Easy to learn, scalability
    • 21
      Most easy for me
    • 21
      Blade Template
    • 21
      Beautiful
    • 20
      Test-Driven
    • 14
      Security
    • 14
      Based on SOLID
    • 12
      Easy to attach Middleware
    • 12
      Clean Documentation
    • 12
      Cool
    • 11
      Convention over Configuration
    • 11
      Simple
    • 10
      Easy Request Validatin
    • 9
      Easy to use
    • 9
      Fast
    • 9
      Simpler
    • 8
      Friendly API
    • 8
      Its just wow
    • 8
      Get going quickly straight out of the box. BYOKDM
    • 8
      Laravel + Cassandra = Killer Framework
    • 7
      Simplistic , easy and faster
    • 7
      Less dependencies
    • 7
      Super easy and powerful
    • 6
      Its beautiful to code in
    • 6
      Great customer support
    • 5
      Laravel Mix
    • 5
      Easy
    • 5
      The only "cons" is wrong! No static method just Facades
    • 5
      Fast and Clarify framework
    • 5
      Active Record
    • 5
      Php7
    • 5
      Speed
    • 5
      Minimum system requirements
    • 4
      Easy views handling and great ORM
    • 4
      Eloquent
    • 4
      Laragon
    • 4
      Composer
    • 3
      Laravel Passport
    • 3
      Intuitive usage
    • 3
      Ease of use
    • 3
      Cashier with Braintree and Stripe
    • 3
      Laravel Forge and Envoy
    • 3
      Laravel Horizon and Telescope
    • 3
      Laravel Spark
    • 3
      Laravel Nova
    • 3
      Laravel casher
    • 2
      Scout
    • 2
      Rapid development
    • 1
      Lovely
    • 1
      Deployment
    • 1
      Succint sintax
    CONS OF LARAVEL
    • 48
      PHP
    • 31
      Too many dependency
    • 22
      Slower than the other two
    • 17
      A lot of static method calls for convenience
    • 15
      Too many include
    • 12
      Heavy
    • 8
      Bloated
    • 7
      Laravel
    • 6
      Confusing
    • 5
      Too underrated
    • 3
      Not fast with MongoDB
    • 1
      Difficult to learn
    • 1
      Not using SOLID principles

    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.

    See more
    Antonio Sanchez

    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

    See more
    hapi logo

    hapi

    411
    431
    87
    Server Framework for Node.js
    411
    431
    + 1
    87
    PROS OF HAPI
    • 27
      Makes me Hapi making REST APIs
    • 14
      Simpler than other REST libraries
    • 14
      Configuration
    • 13
      Quality Driven Ecosystem
    • 13
      Modularization
    • 5
      Easy testability
    • 1
      Better validation
    • 0
      Restify
    CONS OF HAPI
      Be the first to leave a con

      related hapi posts

      What is the best way to increase your income as a freelancer in 2019? What frameworks should be the best to learn? React Node.js Docker Kubernetes Sequelize Mongoose MongoDB ExpressJS hapi Based on trends I've picked up a JS full stack. If you need to work under startups you may replace React with Vue.js . If you want to work in outsourcing Angular 2+ may be better.

      What is your opinion?

      See more