Alternatives to Semantic UI React logo

Alternatives to Semantic UI React

Material-UI, Semantic UI, Ant Design, Bootstrap, and reactstrap are the most popular alternatives and competitors to Semantic UI React.
227
381
+ 1
28

What is Semantic UI React and what are its top alternatives?

Semantic UI React is the official React integration for Semantic UI. jQuery Free, Declarative API, Shorthand Props, and more.
Semantic UI React is a tool in the Javascript UI Libraries category of a tech stack.
Semantic UI React is an open source tool with 13.3K GitHub stars and 4K GitHub forks. Here’s a link to Semantic UI React's open source repository on GitHub

Top Alternatives to Semantic UI React

  • Material-UI
    Material-UI

    Material UI is a library of React UI components that implements Google's Material Design. ...

  • Semantic UI
    Semantic UI

    Semantic empowers designers and developers by creating a shared vocabulary for UI. ...

  • Ant Design
    Ant Design

    An enterprise-class UI design language and React-based implementation. Graceful UI components out of the box, base on React Component. A npm + webpack + babel + dora + dva development framework. ...

  • Bootstrap
    Bootstrap

    Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web. ...

  • reactstrap
    reactstrap

    It provides prebuilt Bootstrap 4 components that allow a great deal of flexibility and prebuilt validation. This allows us to quickly build beautiful forms that are guaranteed to impress and provide an intuitive user experience. ...

  • jQuery
    jQuery

    jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML. ...

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

  • AngularJS
    AngularJS

    AngularJS lets you write client-side web applications as if you had a smarter browser. It lets you use good old HTML (or HAML, Jade and friends!) as your template language and lets you extend HTML’s syntax to express your application’s components clearly and succinctly. It automatically synchronizes data from your UI (view) with your JavaScript objects (model) through 2-way data binding. ...

Semantic UI React alternatives & related posts

Material-UI logo

Material-UI

2.3K
445
Material UI is a library of React UI components that implements Google's Material Design.
2.3K
445
PROS OF MATERIAL-UI
  • 141
    React
  • 82
    Material Design
  • 60
    Ui components
  • 30
    CSS framework
  • 26
    Component
  • 15
    Looks great
  • 13
    Responsive
  • 12
    Good documentation
  • 9
    LESS
  • 8
    Ui component
  • 7
    Open source
  • 6
    Flexible
  • 6
    Code examples
  • 5
    JSS
  • 3
    Supports old browsers out of the box
  • 3
    Interface
  • 3
    Angular
  • 3
    Very accessible
  • 3
    Fun
  • 2
    Typescript support
  • 2
    # of components
  • 2
    Designed for Server Side Rendering
  • 1
    Support for multiple styling systems
  • 1
    Accessibility
  • 1
    Easy to work with
  • 1
    Css
CONS OF MATERIAL-UI
  • 36
    Hard to learn. Bad documentation
  • 29
    Hard to customize
  • 22
    Hard to understand Docs
  • 9
    Bad performance
  • 7
    Extra library needed for date/time pickers
  • 7
    For editable table component need to use material-table
  • 2
    Typescript Support
  • 1
    # of components

related Material-UI posts

Adebayo Akinlaja
Engineering Manager at Andela · | 30 upvotes · 3.4M 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

I just finished tweaking styles details of my hobby project MovieGeeks (https://moviegeeks.co/): The minimalist Online Movie Catalog

This time I want to share my thoughts on the Tech-Stack I decided to use on the Frontend: React, React Router, Material-UI and React-Apollo:

  1. React is by far the Front-End "framework" with the biggest community. Some of the newest features like Suspense and Hooks makes it even more awesome and gives you even more power to write clean UI's

  2. Material UI is a very solid and stable set of react components that not only look good, but also are easy to use and customize. This was my first time using this library and I am very happy with the result

  3. React-Apollo in my opinion is the best GraphQL client for a React application. Easy to use and understand and it gives you awesome features out of the box like cache. With libraries like react-apollo-hooks you can even use it with the hooks api which makes the code cleaner and easier to follow.

Any feedback is much appreciated :)

See more
Semantic UI logo

Semantic UI

955
673
A UI Component library implemented using a set of specifications designed around natural language
955
673
PROS OF SEMANTIC UI
  • 157
    Easy to use and looks elegant
  • 92
    Variety of components
  • 64
    Themes
  • 61
    Has out-of-the-box widgets i would actually use
  • 57
    Semantic, duh
  • 44
    Its the future
  • 42
    Open source
  • 37
    Very active development
  • 31
    Far less complicated structure
  • 28
    Gulp
  • 9
    Already has more features than bootstrap
  • 8
    Just compare it to Bootstrap and you'll be hooked
  • 7
    Clean and consistent markup model
  • 7
    UI components
  • 6
    Responsiveness
  • 4
    Because it is semantic :-D
  • 4
    Elegant. clean. readable. maintainable
  • 4
    Good-Looking
  • 2
    Is big and look really great, nothing like this
  • 2
    Consistent
  • 2
    Great docs
  • 2
    Modular and scalable
  • 1
    Easy to use
  • 1
    Blends with reactjs
  • 1
    Jquery
CONS OF SEMANTIC UI
  • 5
    Outdated build tool (gulp 3))
  • 3
    Poor accessibility support
  • 3
    HTML is not semantic (see list component)
  • 2
    Javascript is tied to jquery

related Semantic UI posts

ReactQL is a React + GraphQL front-end starter kit. #JSX is a natural way to think about building UI, and it renders to pure #HTML in the browser and on the server, making it trivial to build server-rendered Single Page Apps. GraphQL via Apollo was chosen for the data layer; #GraphQL makes it simple to request just the data your app needs, and #Apollo takes care of communicating with your API (written in any language; doesn't have to be JavaScript!), caching, and rendering to #React.

ReactQL is written in TypeScript to provide full types/Intellisense, and pick up hard-to-diagnose goofs that might later show up at runtime. React makes heavy use of Webpack 4 to handle transforming your code to an optimised client-side bundle, and in throws back just enough code needed for the initial render, while seamlessly handling import statements asynchronously as needed, making the payload your user downloads ultimately much smaller than trying to do it by hand.

React Helmet was chosen to handle <head> content, because it works universally, making it easy to throw back the correct <title> and other tags on the initial render, as well as inject new tags for subsequent client-side views.

styled-components, Sass, Less and PostCSS were added to give developers a choice of whether to build styles purely in React / JavaScript, or whether to defer to a #css #preprocessor. This is especially useful for interop with UI frameworks like Bootstrap, Semantic UI, Foundation, etc - ReactQL lets you mix and match #css and renders to both a static .css file during bundling as well as generates per-page <style> tags when using #StyledComponents.

React Router handles routing, because it works both on the server and in the client. ReactQL customises it further by capturing non-200 responses on the server, redirecting or throwing back custom 404 pages as needed.

Koa is the web server that handles all incoming HTTP requests, because it's fast (TTFB < 5ms, even after fully rendering React), and its natively #async, making it easy to async/await inside routes and middleware.

See more
Hassan Mugabo
Software Developer at Codeparl Digital Services · | 3 upvotes · 78.8K views

Hi, I'm using Tailwind CSS for my project but I found Bootstrap and Semantic UI offering pre-built components like Model, Sidebars, and so forth. Is it possible to use Semantic UI or Bootstrap under Tailwind CSS?

See more
Ant Design logo

Ant Design

1.1K
224
A set of high-quality React components
1.1K
224
PROS OF ANT DESIGN
  • 48
    Lots of components
  • 33
    Polished and enterprisey look and feel
  • 21
    TypeScript
  • 21
    Easy to integrate
  • 18
    Es6 support
  • 17
    Typescript support
  • 17
    Beautiful and solid
  • 16
    Beautifully Animated Components
  • 15
    Quick Release rhythm
  • 14
    Great documentation
  • 2
    Easy to customize Forms
  • 2
    Opensource and free of cost
CONS OF ANT DESIGN
  • 24
    Less
  • 10
    Large File Size
  • 4
    Poor accessibility support
  • 3
    Dangerous to use as a base in component libraries

related Ant Design posts

Sarmad Chaudhary
Founder & CEO at Ebiz Ltd. · | 9 upvotes · 1.3M views

Hi there!

I just want to have a simple poll/vote...

If you guys need a UI/Component Library for React, Vue.js, or AngularJS, which type of library would you prefer between:

1 ) A single maintained cross-framework library that is 100% compatible and can be integrated with any popular framework like Vue, React, Angular 2, Svelte, etc.

2) A native framework-specific library developed to work only on target framework like ElementUI for Vue, Ant Design for React.

Your advice would help a lot! Thanks in advance :)

See more

Hello, A question to frontend developers. I am a beginner on frontend.

I am building a UI for my company to replace old legacy one with React and this question is about choosing how to apply design to it.

I have Tailwind CSS on one hand and Ant Design on the other (I didnt like mui and Bootstrap doesn't seem to have enterprise components as ant) As far as I understand, tailwind is great. It allows me to literally build an application without touching the css but I have to build my own react components with it. Ant design or mantine has ready to use components which I can use and rapidly build my application.

My question is, is it the right approach to: - Use a component framework for now and replace legacy app. - Introduce tailwind later when I have a frontend resource in hand and then build own component library

Thank you.

See more
Bootstrap logo

Bootstrap

55.5K
7.7K
Simple and flexible HTML, CSS, and JS for popular UI components and interactions
55.5K
7.7K
PROS OF BOOTSTRAP
  • 1.6K
    Responsiveness
  • 1.2K
    UI components
  • 943
    Consistent
  • 779
    Great docs
  • 677
    Flexible
  • 472
    HTML, CSS, and JS framework
  • 411
    Open source
  • 375
    Widely used
  • 368
    Customizable
  • 242
    HTML framework
  • 77
    Easy setup
  • 77
    Popular
  • 77
    Mobile first
  • 58
    Great grid system
  • 52
    Great community
  • 38
    Future compatibility
  • 34
    Integration
  • 28
    Very powerful foundational front-end framework
  • 24
    Standard
  • 23
    Javascript plugins
  • 19
    Build faster prototypes
  • 18
    Preprocessors
  • 14
    Grids
  • 9
    Good for a person who hates CSS
  • 8
    Clean
  • 4
    Easy to setup and learn
  • 4
    Love it
  • 4
    Rapid development
  • 3
    Great and easy to use
  • 2
    Easy to use
  • 2
    Devin schumacher rules
  • 2
    Boostrap
  • 2
    Community
  • 2
    Provide angular wrapper
  • 2
    Great and easy
  • 2
    Powerful grid system, Rapid development, Customization
  • 2
    Great customer support
  • 2
    Popularity
  • 2
    Clean and quick frontend development
  • 2
    Great and easy to make a responsive website
  • 2
    Sprzedam opla
  • 1
    Painless front end development
  • 1
    Love the classes?
  • 1
    Responsive design
  • 1
    Poop
  • 1
    So clean and simple
  • 1
    Design Agnostic
  • 1
    Numerous components
  • 1
    Material-ui
  • 1
    Recognizable
  • 1
    Intuitive
  • 1
    Vue
  • 1
    Felxible, comfortable, user-friendly
  • 1
    Pre-Defined components
  • 1
    It's fast
  • 1
    Geo
  • 1
    Not tied to jQuery
  • 1
    The fame
  • 1
    Easy setup2
CONS OF BOOTSTRAP
  • 26
    Javascript is tied to jquery
  • 16
    Every site uses the defaults
  • 15
    Grid system break points aren't ideal
  • 14
    Too much heavy decoration in default look
  • 8
    Verbose styles
  • 1
    Super heavy

related Bootstrap posts

Ganesa Vijayakumar
Full Stack Coder | Technical Architect · | 19 upvotes · 5.6M views

I'm planning to create a web application and also a mobile application to provide a very good shopping experience to the end customers. Shortly, my application will be aggregate the product details from difference sources and giving a clear picture to the user that when and where to buy that product with best in Quality and cost.

I have planned to develop this in many milestones for adding N number of features and I have picked my first part to complete the core part (aggregate the product details from different sources).

As per my work experience and knowledge, I have chosen the followings stacks to this mission.

UI: I would like to develop this application using React, React Router and React Native since I'm a little bit familiar on this and also most importantly these will help on developing both web and mobile apps. In addition, I'm gonna use the stacks JavaScript, jQuery, jQuery UI, jQuery Mobile, Bootstrap wherever required.

Service: I have planned to use Java as the main business layer language as I have 7+ years of experience on this I believe I can do better work using Java than other languages. In addition, I'm thinking to use the stacks Node.js.

Database and ORM: I'm gonna pick MySQL as DB and Hibernate as ORM since I have a piece of good knowledge and also work experience on this combination.

Search Engine: I need to deal with a large amount of product data and it's in-detailed info to provide enough details to end user at the same time I need to focus on the performance area too. so I have decided to use Solr as a search engine for product search and suggestions. In addition, I'm thinking to replace Solr by Elasticsearch once explored/reviewed enough about Elasticsearch.

Host: As of now, my plan to complete the application with decent features first and deploy it in a free hosting environment like Docker and Heroku and then once it is stable then I have planned to use the AWS products Amazon S3, EC2, Amazon RDS and Amazon Route 53. I'm not sure about Microsoft Azure that what is the specialty in it than Heroku and Amazon EC2 Container Service. Anyhow, I will do explore these once again and pick the best suite one for my requirement once I reached this level.

Build and Repositories: I have decided to choose Apache Maven and Git as these are my favorites and also so popular on respectively build and repositories.

Additional Utilities :) - I would like to choose Codacy for code review as their Startup plan will be very helpful to this application. I'm already experienced with Google CheckStyle and SonarQube even I'm looking something on Codacy.

Happy Coding! Suggestions are welcome! :)

Thanks, Ganesa

See more
Francisco Quintero
Tech Lead at Dev As Pros · | 13 upvotes · 1.8M views

For Etom, a side project. We wanted to test an idea for a future and bigger project.

What Etom does is searching places. Right now, it leverages the Google Maps API. For that, we found a React component that makes this integration easy because using Google Maps API is not possible via normal API requests.

You kind of need a map to work as a proxy between the software and Google Maps API.

We hate configuration(coming from Rails world) so also decided to use Create React App because setting up a React app, with all the toys, it's a hard job.

Thanks to all the people behind Create React App it's easier to start any React application.

We also chose a module called Reactstrap which is Bootstrap UI in React components.

An important thing in this side project(and in the bigger project plan) is to measure visitor through out the app. For that we researched and found that Keen was a good choice(very good free tier limits) and also it is very simple to setup and real simple to send data to

Slack and Trello are our defaults tools to comunicate ideas and discuss topics, so, no brainer using them as well for this project.

See more
reactstrap logo

reactstrap

176
4
Easy to use React Bootstrap 4 components compatible with React
176
4
PROS OF REACTSTRAP
  • 4
    Prebuilt Bootstrap 4 components
CONS OF REACTSTRAP
    Be the first to leave a con

    related reactstrap posts

    My React website is a simple 5-pager that attaches to a database to store and display registrations and other data. The user (small user base) can change any form elements, but I don't need theme-ing, though that would be fun for the user. reactstrap/react-bootstrap built on Bootstrap 4 sounds dated. I am familiar with reactstrap, but a friend said to try Material-UI. The thought of learning it is interesting, but somehow I think it might be overkill. So... reactstrap, react-bootstrap, or Material UI, which should I use?

    See more
    Shared insights
    on
    Material-UIMaterial-UIreactstrapreactstrap

    I need to create a footer. Can I use reactstrap and Material-UI, or is it one or the other? If it's only one, what is the best way to create a footer with MaterialUI?

    See more
    jQuery logo

    jQuery

    192.5K
    6.6K
    The Write Less, Do More, JavaScript Library.
    192.5K
    6.6K
    PROS OF JQUERY
    • 1.3K
      Cross-browser
    • 957
      Dom manipulation
    • 809
      Power
    • 660
      Open source
    • 610
      Plugins
    • 459
      Easy
    • 395
      Popular
    • 350
      Feature-rich
    • 281
      Html5
    • 227
      Light weight
    • 93
      Simple
    • 84
      Great community
    • 79
      CSS3 Compliant
    • 69
      Mobile friendly
    • 67
      Fast
    • 43
      Intuitive
    • 42
      Swiss Army knife for webdev
    • 35
      Huge Community
    • 11
      Easy to learn
    • 4
      Clean code
    • 3
      Because of Ajax request :)
    • 2
      Powerful
    • 2
      Nice
    • 2
      Just awesome
    • 2
      Used everywhere
    • 1
      Improves productivity
    • 1
      Javascript
    • 1
      Easy Setup
    • 1
      Open Source, Simple, Easy Setup
    • 1
      It Just Works
    • 1
      Industry acceptance
    • 1
      Allows great manipulation of HTML and CSS
    • 1
      Widely Used
    • 1
      I love jQuery
    CONS OF JQUERY
    • 6
      Large size
    • 5
      Sometimes inconsistent API
    • 5
      Encourages DOM as primary data source
    • 2
      Live events is overly complex feature

    related jQuery posts

    Kir Shatrov
    Engineering Lead at Shopify · | 22 upvotes · 2.5M views

    The client-side stack of Shopify Admin has been a long journey. It started with HTML templates, jQuery and Prototype. We moved to Batman.js, our in-house Single-Page-Application framework (SPA), in 2013. Then, we re-evaluated our approach and moved back to statically rendered HTML and vanilla JavaScript. As the front-end ecosystem matured, we felt that it was time to rethink our approach again. Last year, we started working on moving Shopify Admin to React and TypeScript.

    Many things have changed since the days of jQuery and Batman. JavaScript execution is much faster. We can easily render our apps on the server to do less work on the client, and the resources and tooling for developers are substantially better with React than we ever had with Batman.

    #FrameworksFullStack #Languages

    See more
    Ganesa Vijayakumar
    Full Stack Coder | Technical Architect · | 19 upvotes · 5.6M views

    I'm planning to create a web application and also a mobile application to provide a very good shopping experience to the end customers. Shortly, my application will be aggregate the product details from difference sources and giving a clear picture to the user that when and where to buy that product with best in Quality and cost.

    I have planned to develop this in many milestones for adding N number of features and I have picked my first part to complete the core part (aggregate the product details from different sources).

    As per my work experience and knowledge, I have chosen the followings stacks to this mission.

    UI: I would like to develop this application using React, React Router and React Native since I'm a little bit familiar on this and also most importantly these will help on developing both web and mobile apps. In addition, I'm gonna use the stacks JavaScript, jQuery, jQuery UI, jQuery Mobile, Bootstrap wherever required.

    Service: I have planned to use Java as the main business layer language as I have 7+ years of experience on this I believe I can do better work using Java than other languages. In addition, I'm thinking to use the stacks Node.js.

    Database and ORM: I'm gonna pick MySQL as DB and Hibernate as ORM since I have a piece of good knowledge and also work experience on this combination.

    Search Engine: I need to deal with a large amount of product data and it's in-detailed info to provide enough details to end user at the same time I need to focus on the performance area too. so I have decided to use Solr as a search engine for product search and suggestions. In addition, I'm thinking to replace Solr by Elasticsearch once explored/reviewed enough about Elasticsearch.

    Host: As of now, my plan to complete the application with decent features first and deploy it in a free hosting environment like Docker and Heroku and then once it is stable then I have planned to use the AWS products Amazon S3, EC2, Amazon RDS and Amazon Route 53. I'm not sure about Microsoft Azure that what is the specialty in it than Heroku and Amazon EC2 Container Service. Anyhow, I will do explore these once again and pick the best suite one for my requirement once I reached this level.

    Build and Repositories: I have decided to choose Apache Maven and Git as these are my favorites and also so popular on respectively build and repositories.

    Additional Utilities :) - I would like to choose Codacy for code review as their Startup plan will be very helpful to this application. I'm already experienced with Google CheckStyle and SonarQube even I'm looking something on Codacy.

    Happy Coding! Suggestions are welcome! :)

    Thanks, Ganesa

    See more
    React logo

    React

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

    related React posts

    Johnny Bell

    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.

    See more
    Collins Ogbuzuru
    Front-end dev at Evolve credit · | 42 upvotes · 308.6K views

    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.

    See more
    AngularJS logo

    AngularJS

    61.2K
    5.3K
    Superheroic JavaScript MVW Framework
    61.2K
    5.3K
    PROS OF ANGULARJS
    • 889
      Quick to develop
    • 589
      Great mvc
    • 573
      Powerful
    • 520
      Restful
    • 505
      Backed by google
    • 349
      Two-way data binding
    • 343
      Javascript
    • 329
      Open source
    • 307
      Dependency injection
    • 197
      Readable
    • 75
      Fast
    • 65
      Directives
    • 63
      Great community
    • 57
      Free
    • 38
      Extend html vocabulary
    • 29
      Components
    • 26
      Easy to test
    • 25
      Easy to learn
    • 24
      Easy to templates
    • 23
      Great documentation
    • 21
      Easy to start
    • 19
      Awesome
    • 18
      Light weight
    • 15
      Angular 2.0
    • 14
      Efficient
    • 14
      Javascript mvw framework
    • 14
      Great extensions
    • 11
      Easy to prototype with
    • 9
      High performance
    • 9
      Coffeescript
    • 8
      Two-way binding
    • 8
      Lots of community modules
    • 8
      Mvc
    • 7
      Easy to e2e
    • 7
      Clean and keeps code readable
    • 6
      One of the best frameworks
    • 6
      Easy for small applications
    • 5
      Works great with jquery
    • 5
      Fast development
    • 4
      I do not touch DOM
    • 4
      The two-way Data Binding is awesome
    • 3
      Hierarchical Data Structure
    • 3
      Be a developer, not a plumber.
    • 3
      Declarative programming
    • 3
      Typescript
    • 3
      Dart
    • 3
      Community
    • 2
      Fkin awesome
    • 2
      Opinionated in the right areas
    • 2
      Supports api , easy development
    • 2
      Common Place
    • 2
      Very very useful and fast framework for development
    • 2
      Linear learning curve
    • 2
      Great
    • 2
      Amazing community support
    • 2
      Readable code
    • 2
      Programming fun again
    • 2
      The powerful of binding, routing and controlling routes
    • 2
      Scopes
    • 2
      Consistency with backend architecture if using Nest
    • 1
      Fk react, all my homies hate react
    CONS OF ANGULARJS
    • 12
      Complex
    • 3
      Event Listener Overload
    • 3
      Dependency injection
    • 2
      Hard to learn
    • 2
      Learning Curve

    related AngularJS posts

    Simon Reymann
    Senior Fullstack Developer at QUANTUSflow Software GmbH · | 27 upvotes · 5.4M views

    Our whole Node.js backend stack consists of the following tools:

    • Lerna as a tool for multi package and multi repository management
    • npm as package manager
    • NestJS as Node.js framework
    • TypeScript as programming language
    • ExpressJS as web server
    • Swagger UI for visualizing and interacting with the API’s resources
    • Postman as a tool for API development
    • TypeORM as object relational mapping layer
    • JSON Web Token for access token management

    The main reason we have chosen Node.js over PHP is related to the following artifacts:

    • Made for the web and widely in use: Node.js is a software platform for developing server-side network services. Well-known projects that rely on Node.js include the blogging software Ghost, the project management tool Trello and the operating system WebOS. Node.js requires the JavaScript runtime environment V8, which was specially developed by Google for the popular Chrome browser. This guarantees a very resource-saving architecture, which qualifies Node.js especially for the operation of a web server. Ryan Dahl, the developer of Node.js, released the first stable version on May 27, 2009. He developed Node.js out of dissatisfaction with the possibilities that JavaScript offered at the time. The basic functionality of Node.js has been mapped with JavaScript since the first version, which can be expanded with a large number of different modules. The current package managers (npm or Yarn) for Node.js know more than 1,000,000 of these modules.
    • Fast server-side solutions: Node.js adopts the JavaScript "event-loop" to create non-blocking I/O applications that conveniently serve simultaneous events. With the standard available asynchronous processing within JavaScript/TypeScript, highly scalable, server-side solutions can be realized. The efficient use of the CPU and the RAM is maximized and more simultaneous requests can be processed than with conventional multi-thread servers.
    • A language along the entire stack: Widely used frameworks such as React or AngularJS or Vue.js, which we prefer, are written in JavaScript/TypeScript. If Node.js is now used on the server side, you can use all the advantages of a uniform script language throughout the entire application development. The same language in the back- and frontend simplifies the maintenance of the application and also the coordination within the development team.
    • Flexibility: Node.js sets very few strict dependencies, rules and guidelines and thus grants a high degree of flexibility in application development. There are no strict conventions so that the appropriate architecture, design structures, modules and features can be freely selected for the development.
    See more
    Simon Reymann
    Senior Fullstack Developer at QUANTUSflow Software GmbH · | 24 upvotes · 4.9M views

    Our whole Vue.js frontend stack (incl. SSR) consists of the following tools:

    • Nuxt.js consisting of Vue CLI, Vue Router, vuex, Webpack and Sass (Bundler for HTML5, CSS 3), Babel (Transpiler for JavaScript),
    • Vue Styleguidist as our style guide and pool of developed Vue.js components
    • Vuetify as Material Component Framework (for fast app development)
    • TypeScript as programming language
    • Apollo / GraphQL (incl. GraphiQL) for data access layer (https://apollo.vuejs.org/)
    • ESLint, TSLint and Prettier for coding style and code analyzes
    • Jest as testing framework
    • Google Fonts and Font Awesome for typography and icon toolkit
    • NativeScript-Vue for mobile development

    The main reason we have chosen Vue.js over React and AngularJS is related to the following artifacts:

    • Empowered HTML. Vue.js has many similar approaches with Angular. This helps to optimize HTML blocks handling with the use of different components.
    • Detailed documentation. Vue.js has very good documentation which can fasten learning curve for developers.
    • Adaptability. It provides a rapid switching period from other frameworks. It has similarities with Angular and React in terms of design and architecture.
    • Awesome integration. Vue.js can be used for both building single-page applications and more difficult web interfaces of apps. Smaller interactive parts can be easily integrated into the existing infrastructure with no negative effect on the entire system.
    • Large scaling. Vue.js can help to develop pretty large reusable templates.
    • Tiny size. Vue.js weights around 20KB keeping its speed and flexibility. It allows reaching much better performance in comparison to other frameworks.
    See more