Needs advice on code coverage tool in Node.js/ExpressJS with External API Testing Framework\n\n

Hello community,\n\n

I have a web application with the backend developed using Node.js and Express.js. The backend server is in one directory, and I have a separate API testing framework, made using SuperTest, Mocha, and Chai, in another directory. The testing framework pings the API, retrieves responses, and performs validations.\n\n

I'm currently looking for a code coverage tool that can accurately measure the code coverage of my backend code when triggered by the API testing framework. I've tried using Istanbul and NYC with instrumented code, but the results are not as expected.\n\n

Could you please recommend a reliable code coverage tool or suggest an approach to effectively measure the code coverage of my Node.js/Express.js backend code in this setup?","private":false,"viewCount":35189,"publishedAt":"2024-03-11T11:31:55Z","upvotesCount":44,"decisionType":"getAdvice","fromTools":[],"toTools":[],"subjectTools":[{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773939333405","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"}],"services":[{"type":"id","generated":false,"id":"Tool:101231774287464433","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774141209298","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773772085321","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775161680962","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"}],"topics":[],"__typename":"StackDecision"},"Tool:101231773939333405":{"id":"101231773939333405","name":"JavaScript","slug":"javascript","title":"Lightweight, interpreted, object-oriented language with first-class functions","verified":false,"imageUrl":"https://img.stackshare.io/service/1209/javascript.jpeg","canonicalUrl":"/javascript","path":"/javascript","votes":8069,"fans":312485,"stacks":360545,"followingTool":false,"followContext":null,"__typename":"Tool","thumbUrl":"https://img.stackshare.io/service/1209/thumb_javascript.jpeg","following":false},"Tool:101231773845103618":{"id":"101231773845103618","name":"Node.js","slug":"nodejs","title":"A platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications","verified":false,"imageUrl":"https://img.stackshare.io/service/1011/n1JRsFeB_400x400.png","canonicalUrl":"/nodejs","path":"/nodejs","votes":8537,"fans":182716,"stacks":188484,"followingTool":false,"followContext":null,"__typename":"Tool","thumbUrl":"https://img.stackshare.io/service/1011/thumb_n1JRsFeB_400x400.png","thumbRetinaUrl":"https://img.stackshare.io/service/1011/thumb_retina_n1JRsFeB_400x400.png","following":false},"Tool:101231774287464433":{"name":"Istanbul","path":"/istanbul","id":"101231774287464433","imageUrl":"https://img.stackshare.io/service/2105/default_78659c552327b8ff3592c2aa1694ea92c974a8d5.png","thumbUrl":"https://img.stackshare.io/service/2105/thumb_78659c552327b8ff3592c2aa1694ea92c974a8d5.png","stacks":377,"fans":170,"votes":0,"followingTool":false,"__typename":"Tool"},"Tool:101231774141209298":{"name":"Chai","path":"/chai","id":"101231774141209298","imageUrl":"https://img.stackshare.io/service/1725/chai.png","thumbUrl":"https://img.stackshare.io/service/1725/thumb_chai.png","stacks":3901,"fans":711,"votes":0,"followingTool":false,"__typename":"Tool"},"Tool:101231773772085321":{"name":"Mocha","path":"/mocha","id":"101231773772085321","imageUrl":"https://img.stackshare.io/service/832/mocha.png","thumbUrl":"https://img.stackshare.io/service/832/thumb_mocha.png","stacks":8709,"fans":4110,"votes":430,"followingTool":false,"__typename":"Tool","slug":"mocha","title":"Simple, flexible, fun javascript test framework for node.js & the browser","verified":false,"canonicalUrl":"/mocha","following":false,"followContext":null},"Tool:101231775161680962":{"name":"SuperTest","path":"/supertest","id":"101231775161680962","imageUrl":"https://img.stackshare.io/no-img-open-source.png","thumbUrl":"https://img.stackshare.io/service/3721/thumb_no-img-open-source.png","stacks":931,"fans":420,"votes":0,"followingTool":false,"__typename":"Tool"},"$Tool:101231773920953695.stackDecisions({\"first\":6}).edges.0":{"node":{"type":"id","generated":false,"id":"StackDecision:112076830501110596","typename":"StackDecision"},"__typename":"StackDecisionEdge"},"User:112025976704529064":{"id":"112025976704529064","username":"arhvnn","title":"","companyName":"","imageUrl":"https://img.stackshare.io/user/1612515/default_a24e6895002f62b974fa8fb2a941633026fc9225.jpeg","thumbUrl":"https://img.stackshare.io/user/1612515/thumb_a24e6895002f62b974fa8fb2a941633026fc9225.jpeg","displayName":"Abdussamad ARHUN","__typename":"User"},"StackDecision:112026051549348404":{"user":{"type":"id","generated":false,"id":"User:112025976704529064","typename":"User"},"company":null,"link":null,"publicId":"112026051549348404","id":"112026051549348404","htmlContent":"

Hello, I am building a website for a school that's used by students to find Zoom meeting links, view their marks, and check course materials. It is also used by the teachers to put the meeting links, students' marks, and course materials.\n\n

I created a similar website using HTML, CSS, PHP, and MySQL. Now I want to implement this project using some frameworks: Next.js, ExpressJS and use PostgreSQL instead of MYSQL\n\n

I want to have some advice on whether these are enough to implement my project","private":false,"viewCount":103414,"publishedAt":"2024-03-02T12:18:10Z","upvotesCount":11,"decisionType":"getAdvice","fromTools":[],"toTools":[],"subjectTools":[{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776411419473","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773853533403","typename":"Tool"}],"services":[{"type":"id","generated":false,"id":"Tool:101231773853533403","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776411419473","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773851859414","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773836410122","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776473814866","typename":"Tool"}],"topics":[],"__typename":"StackDecision"},"Tool:101231776411419473":{"id":"101231776411419473","name":"Next.js","slug":"next-js","title":"A small framework for server-rendered universal JavaScript apps ","verified":false,"imageUrl":"https://img.stackshare.io/service/5936/nextjs.png","canonicalUrl":"/next-js","path":"/next-js","votes":326,"fans":6515,"stacks":6757,"followingTool":false,"followContext":null,"__typename":"Tool","thumbUrl":"https://img.stackshare.io/service/5936/thumb_nextjs.png"},"Tool:101231773853533403":{"id":"101231773853533403","name":"PostgreSQL","slug":"postgresql","title":"A powerful, open source object-relational database system","verified":false,"imageUrl":"https://img.stackshare.io/service/1028/ASOhU5xJ.png","canonicalUrl":"/postgresql","path":"/postgresql","votes":3549,"fans":95414,"stacks":98197,"followingTool":false,"followContext":null,"__typename":"Tool","thumbUrl":"https://img.stackshare.io/service/1028/thumb_ASOhU5xJ.png","following":false},"Tool:101231773851859414":{"name":"MySQL","path":"/mysql","id":"101231773851859414","imageUrl":"https://img.stackshare.io/service/1025/logo-mysql-170x170.png","thumbUrl":"https://img.stackshare.io/service/1025/thumb_logo-mysql-170x170.png","stacks":125284,"fans":122575,"votes":3753,"followingTool":false,"__typename":"Tool"},"Tool:101231773836410122":{"name":"PHP","path":"/php","id":"101231773836410122","imageUrl":"https://img.stackshare.io/service/991/hwUcGZ41_400x400.jpg","thumbUrl":"https://img.stackshare.io/service/991/thumb_hwUcGZ41_400x400.jpg","stacks":144287,"fans":95258,"votes":4622,"followingTool":false,"__typename":"Tool"},"Tool:101231776473814866":{"name":"Zoom","path":"/zoom","id":"101231776473814866","imageUrl":"https://img.stackshare.io/service/6083/oD_oPSBP_400x400.jpg","thumbUrl":"https://img.stackshare.io/service/6083/thumb_oD_oPSBP_400x400.jpg","stacks":1738,"fans":2502,"votes":155,"followingTool":false,"__typename":"Tool"},"$Tool:101231773920953695.stackDecisions({\"first\":6}).edges.1":{"node":{"type":"id","generated":false,"id":"StackDecision:112026051549348404","typename":"StackDecision"},"__typename":"StackDecisionEdge"},"StackDecision:112027991408175020":{"user":{"type":"id","generated":false,"id":"User:112025976704529064","typename":"User"},"company":null,"link":null,"publicId":"112027991408175020","id":"112027991408175020","htmlContent":"

Hello, I am building a website for a school that's used by students to find Zoom meeting links, view their marks, and check course materials. It is also used by the teachers to put the meeting links, students' marks, and course materials.\n\n

I created a similar website using HTML, CSS, PHP, and MySQL. Now I want to implement this project using some frameworks: Next.js, ExpressJS and use PostgreSQL instead of MYSQL\n\n

I want to have some advice on whether these are enough to implement my project.","private":false,"viewCount":107135,"publishedAt":"2024-03-02T20:31:29Z","upvotesCount":14,"decisionType":"getAdvice","fromTools":[],"toTools":[],"subjectTools":[{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776411419473","typename":"Tool"}],"services":[{"type":"id","generated":false,"id":"Tool:101231773853533403","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776411419473","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773851859414","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773836410122","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776473814866","typename":"Tool"}],"topics":[],"__typename":"StackDecision"},"$Tool:101231773920953695.stackDecisions({\"first\":6}).edges.2":{"node":{"type":"id","generated":false,"id":"StackDecision:112027991408175020","typename":"StackDecision"},"__typename":"StackDecisionEdge"},"User:111980356106533501":{"id":"111980356106533501","username":"dagi19deb","title":"web developer","companyName":"","imageUrl":"https://img.stackshare.io/user/1609868/default_04b90a50fca59bf7f6ae9765fecd94a355c44813.jpg","thumbUrl":"https://img.stackshare.io/user/1609868/thumb_04b90a50fca59bf7f6ae9765fecd94a355c44813.jpg","displayName":"dagim debebe","__typename":"User"},"StackDecision:111980445837497667":{"user":{"type":"id","generated":false,"id":"User:111980356106533501","typename":"User"},"company":null,"link":null,"publicId":"111980445837497667","id":"111980445837497667","htmlContent":"

Hi, \n\n

I am a student and a junior developer who is a graduating candidate in comp sci major. I am about to start building my final year project which is a real-time messaging application for software developers to Enhance Knowledge Exchange and Problem Solving. It is mainly a chat application with more enhanced features. I am planning to use React and React Native for the frontend and cross-platform mobile apps, Node.js and ExpressJS for the backend, GraphQL for fetching and manipulating data from the backend and PostgreSQL for the database, and finally Socket.IO for the real-time chatting and communication. I would highly appreciate it if anyone here with experience in building similar apps to tell me if I made a good choice or suggest better tech stacks. \n\n

Thanks in advance.","private":false,"viewCount":98618,"publishedAt":"2024-02-23T11:00:02Z","upvotesCount":22,"decisionType":"getAdvice","fromTools":[],"toTools":[],"subjectTools":[{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773849098825","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774544144572","typename":"Tool"}],"services":[{"type":"id","generated":false,"id":"Tool:101231773920191005","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773853533403","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775212866992","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774544144572","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773849098825","typename":"Tool"}],"topics":[],"__typename":"StackDecision"},"Tool:101231774544144572":{"id":"101231774544144572","name":"React Native","slug":"react-native","title":"A framework for building native apps with React","verified":false,"imageUrl":"https://img.stackshare.io/service/2699/KoK6gHzp.jpg","canonicalUrl":"/react-native","path":"/react-native","votes":1153,"fans":34373,"stacks":33557,"followingTool":false,"followContext":null,"__typename":"Tool","thumbUrl":"https://img.stackshare.io/service/2699/thumb_KoK6gHzp.jpg"},"Tool:101231773920191005":{"name":"Socket.IO","path":"/socket-io","id":"101231773920191005","imageUrl":"https://img.stackshare.io/service/1161/vI0ZZlhZ_400x400.png","thumbUrl":"https://img.stackshare.io/service/1161/thumb_vI0ZZlhZ_400x400.png","stacks":13216,"fans":13397,"votes":776,"followingTool":false,"__typename":"Tool"},"Tool:101231775212866992":{"name":"GraphQL","path":"/graphql","id":"101231775212866992","imageUrl":"https://img.stackshare.io/service/3820/12972006.png","thumbUrl":"https://img.stackshare.io/service/3820/thumb_12972006.png","stacks":33737,"fans":33447,"votes":310,"followingTool":false,"__typename":"Tool"},"$Tool:101231773920953695.stackDecisions({\"first\":6}).edges.3":{"node":{"type":"id","generated":false,"id":"StackDecision:111980445837497667","typename":"StackDecision"},"__typename":"StackDecisionEdge"},"User:111414574936764533":{"id":"111414574936764533","username":"ic3cr34mp4yl04d","title":null,"companyName":null,"imageUrl":"https://img.stackshare.io/user/1577984/default_77728728a28f1003eaddf7669e3b9609de2ca6f8.jpeg","thumbUrl":"https://img.stackshare.io/user/1577984/thumb_77728728a28f1003eaddf7669e3b9609de2ca6f8.jpeg","displayName":"Ali Hussain Abid","__typename":"User"},"StackDecision:111698038434876315":{"user":{"type":"id","generated":false,"id":"User:111414574936764533","typename":"User"},"company":null,"link":null,"publicId":"111698038434876315","id":"111698038434876315","htmlContent":"

I'm interested in web back-ends. Currently, I spent some time learning MongoDB + ExpressJS + TypeScript for back-end. I can make a basic application that can Create Read Update and Delete user data (super basic with some authentication that requires you to sign-in to read and be a valid user to delete a user). My current situation is that I wish to have a job in this area as I loved creating this simple application, what are the ways I can get into the industry without having any Computer Science degree?","private":false,"viewCount":20788,"publishedAt":"2024-01-04T14:00:07Z","upvotesCount":17,"decisionType":"getAdvice","fromTools":[],"toTools":[],"subjectTools":[{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854388643","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774098455524","typename":"Tool"}],"services":[{"type":"id","generated":false,"id":"Tool:101231774098455524","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854388643","typename":"Tool"}],"topics":[],"__typename":"StackDecision"},"Tool:101231773854388643":{"id":"101231773854388643","name":"MongoDB","slug":"mongodb","title":"The database for giant ideas","verified":true,"imageUrl":"https://img.stackshare.io/service/1030/leaf-360x360.png","canonicalUrl":"/mongodb","path":"/mongodb","votes":4131,"fans":93748,"stacks":93496,"followingTool":false,"followContext":null,"__typename":"Tool","thumbUrl":"https://img.stackshare.io/service/1030/thumb_leaf-360x360.png","following":false},"Tool:101231774098455524":{"id":"101231774098455524","name":"TypeScript","slug":"typescript","title":"A superset of JavaScript that compiles to clean JavaScript output","verified":false,"imageUrl":"https://img.stackshare.io/service/1612/bynNY5dJ.jpg","canonicalUrl":"/typescript","path":"/typescript","votes":502,"fans":83619,"stacks":93957,"followingTool":false,"followContext":null,"__typename":"Tool","thumbUrl":"https://img.stackshare.io/service/1612/thumb_bynNY5dJ.jpg"},"$Tool:101231773920953695.stackDecisions({\"first\":6}).edges.4":{"node":{"type":"id","generated":false,"id":"StackDecision:111698038434876315","typename":"StackDecision"},"__typename":"StackDecisionEdge"},"User:110667750867442285":{"id":"110667750867442285","username":"digvijaysingh21","title":"","companyName":"","imageUrl":"https://img.stackshare.io/user/1527766/default_7bf4d3d129379ecb38b156bd570a97ce0a8045cb.jpeg","thumbUrl":"https://img.stackshare.io/user/1527766/thumb_7bf4d3d129379ecb38b156bd570a97ce0a8045cb.jpeg","displayName":"Digvijay Singh","__typename":"User"},"StackDecision:110667783190280628":{"user":{"type":"id","generated":false,"id":"User:110667750867442285","typename":"User"},"company":null,"link":null,"publicId":"110667783190280628","id":"110667783190280628","htmlContent":"

Hi guyz, I'm done with Front End Development (HTML, CSS, JavaScript) and learning MERN( MongoDB, ExpressJS, React, Node.js) so please share some good frontend projects","private":false,"viewCount":12746,"publishedAt":"2023-07-06T15:12:39Z","upvotesCount":2,"decisionType":"getAdvice","fromTools":[],"toTools":[],"subjectTools":[{"type":"id","generated":false,"id":"Tool:101231776819926470","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774472411723","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773939333405","typename":"Tool"}],"services":[{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773849098825","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854388643","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773939333405","typename":"Tool"}],"topics":[],"__typename":"StackDecision"},"Tool:101231776819926470":{"id":"101231776819926470","name":"CSS 3","slug":"css-3","title":"The latest evolution of the Cascading Style Sheets language","verified":false,"imageUrl":"https://img.stackshare.io/service/6727/css.png","canonicalUrl":"/css-3","path":"/css-3","votes":0,"fans":61806,"stacks":80151,"followingTool":false,"followContext":null,"__typename":"Tool"},"Tool:101231774472411723":{"id":"101231774472411723","name":"HTML5","slug":"html5","title":"5th major revision of the core language of the World Wide Web","verified":false,"imageUrl":"https://img.stackshare.io/service/2538/kEpgHiC9.png","canonicalUrl":"/html5","path":"/html5","votes":2236,"fans":145627,"stacks":148560,"followingTool":false,"followContext":null,"__typename":"Tool"},"$Tool:101231773920953695.stackDecisions({\"first\":6}).edges.5":{"node":{"type":"id","generated":false,"id":"StackDecision:110667783190280628","typename":"StackDecision"},"__typename":"StackDecisionEdge"},"$Tool:101231773920953695.allToolIntegrations({\"first\":9})":{"count":39,"pageInfo":{"type":"id","generated":true,"id":"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).pageInfo","typename":"PageInfo"},"edges":[{"type":"id","generated":true,"id":"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.0","typename":"ToolEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.1","typename":"ToolEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.2","typename":"ToolEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.3","typename":"ToolEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.4","typename":"ToolEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.5","typename":"ToolEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.6","typename":"ToolEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.7","typename":"ToolEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.8","typename":"ToolEdge"}],"__typename":"ToolConnection"},"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).pageInfo":{"hasNextPage":true,"endCursor":"OQ","__typename":"PageInfo"},"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.0":{"node":{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"},"__typename":"ToolEdge"},"Tool:101231773501596063":{"imageUrl":"https://img.stackshare.io/service/191/default_9262326592c97828a2a4299dec085a3674dd05f4.png","thumbUrl":"https://img.stackshare.io/service/191/thumb_9262326592c97828a2a4299dec085a3674dd05f4.png","thumbRetinaUrl":"https://img.stackshare.io/service/191/thumb_retina_9262326592c97828a2a4299dec085a3674dd05f4.png","name":"Sentry","id":"101231773501596063","slug":"sentry","path":"/sentry","__typename":"Tool","title":"See performance issues, fix errors faster, and optimize code health. ","verified":true,"canonicalUrl":"/sentry","votes":863,"fans":12097,"stacks":14420,"following":false,"followContext":null},"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.1":{"node":{"type":"id","generated":false,"id":"Tool:101231773501596063","typename":"Tool"},"__typename":"ToolEdge"},"Tool:101231773703014119":{"imageUrl":"https://img.stackshare.io/service/669/default_34b3b9b42d07c33ac47ecdff75dd6f4f82aa70ee.jpg","thumbUrl":"https://img.stackshare.io/service/669/thumb_34b3b9b42d07c33ac47ecdff75dd6f4f82aa70ee.jpg","thumbRetinaUrl":"https://img.stackshare.io/service/669/thumb_retina_34b3b9b42d07c33ac47ecdff75dd6f4f82aa70ee.jpg","name":"Datadog","id":"101231773703014119","slug":"datadog","path":"/datadog","__typename":"Tool","title":"Unify logs, metrics, and traces from across your distributed infrastructure.","verified":true,"canonicalUrl":"/datadog","votes":860,"fans":9933,"stacks":9391,"following":false,"followContext":null},"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.2":{"node":{"type":"id","generated":false,"id":"Tool:101231773703014119","typename":"Tool"},"__typename":"ToolEdge"},"Tool:101231776207334635":{"imageUrl":"https://img.stackshare.io/service/5577/preview.png","thumbUrl":"https://img.stackshare.io/service/5577/thumb_preview.png","thumbRetinaUrl":"https://img.stackshare.io/service/5577/thumb_retina_preview.png","name":"nodemon","id":"101231776207334635","slug":"nodemon","path":"/nodemon","__typename":"Tool"},"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.3":{"node":{"type":"id","generated":false,"id":"Tool:101231776207334635","typename":"Tool"},"__typename":"ToolEdge"},"Tool:101231773480426879":{"imageUrl":"https://img.stackshare.io/service/150/square-logo-small-midnight.png","thumbUrl":"https://img.stackshare.io/service/150/thumb_square-logo-small-midnight.png","thumbRetinaUrl":"https://img.stackshare.io/service/150/thumb_retina_square-logo-small-midnight.png","name":"Bugsnag","id":"101231773480426879","slug":"bugsnag","path":"/bugsnag","__typename":"Tool"},"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.4":{"node":{"type":"id","generated":false,"id":"Tool:101231773480426879","typename":"Tool"},"__typename":"ToolEdge"},"Tool:101231773922511591":{"imageUrl":"https://img.stackshare.io/service/1167/mean.png","thumbUrl":"https://img.stackshare.io/service/1167/thumb_mean.png","thumbRetinaUrl":"https://img.stackshare.io/service/1167/thumb_retina_mean.png","name":"MEAN","id":"101231773922511591","slug":"mean","path":"/mean","__typename":"Tool"},"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.5":{"node":{"type":"id","generated":false,"id":"Tool:101231773922511591","typename":"Tool"},"__typename":"ToolEdge"},"Tool:101231773921760520":{"imageUrl":"https://img.stackshare.io/service/1165/3bf33a82d4b1624f6b94da4d9fe1eaeb.png","thumbUrl":"https://img.stackshare.io/service/1165/thumb_3bf33a82d4b1624f6b94da4d9fe1eaeb.png","thumbRetinaUrl":"https://img.stackshare.io/service/1165/thumb_retina_3bf33a82d4b1624f6b94da4d9fe1eaeb.png","name":"Sails.js","id":"101231773921760520","slug":"sailsjs","path":"/sailsjs","__typename":"Tool"},"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.6":{"node":{"type":"id","generated":false,"id":"Tool:101231773921760520","typename":"Tool"},"__typename":"ToolEdge"},"Tool:101231775090514116":{"imageUrl":"https://ucarecdn.com/8f3cac0e-b146-4f0f-878c-680a6671d804/","thumbUrl":"https://img.stackshare.io/service/3603/thumb_DMrPoJtc_400x400.png","thumbRetinaUrl":"https://img.stackshare.io/service/3603/thumb_retina_DMrPoJtc_400x400.png","name":"Passport","id":"101231775090514116","slug":"passport","path":"/passport","__typename":"Tool"},"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.7":{"node":{"type":"id","generated":false,"id":"Tool:101231775090514116","typename":"Tool"},"__typename":"ToolEdge"},"Tool:101231774559088350":{"imageUrl":"https://img.stackshare.io/service/2727/default_634685dfedc4df3d35d7eaa25d9d4cdd0be4c7b9.jpg","thumbUrl":"https://img.stackshare.io/service/2727/thumb_634685dfedc4df3d35d7eaa25d9d4cdd0be4c7b9.jpg","thumbRetinaUrl":"https://img.stackshare.io/service/2727/thumb_retina_634685dfedc4df3d35d7eaa25d9d4cdd0be4c7b9.jpg","name":"LoopBack","id":"101231774559088350","slug":"loopback","path":"/loopback","__typename":"Tool"},"$Tool:101231773920953695.allToolIntegrations({\"first\":9}).edges.8":{"node":{"type":"id","generated":false,"id":"Tool:101231774559088350","typename":"Tool"},"__typename":"ToolEdge"},"$Tool:101231773920953695.userStacksUsing({\"first\":9})":{"count":25441,"pageInfo":{"type":"id","generated":true,"id":"$Tool:101231773920953695.userStacksUsing({\"first\":9}).pageInfo","typename":"PageInfo"},"edges":[{"type":"id","generated":true,"id":"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.0","typename":"StackEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.1","typename":"StackEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.2","typename":"StackEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.3","typename":"StackEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.4","typename":"StackEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.5","typename":"StackEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.6","typename":"StackEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.7","typename":"StackEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.8","typename":"StackEdge"}],"__typename":"StackConnection"},"$Tool:101231773920953695.userStacksUsing({\"first\":9}).pageInfo":{"hasNextPage":true,"endCursor":"OQ","__typename":"PageInfo"},"Stack:101231778744121328":{"name":"MEAN","imageUrl":"https://img.stackshare.io/stack/690/default_777c4d775d8ec4af0c765ed352ac443f5c916983.png","thumbUrl":"https://img.stackshare.io/stack/690/thumb_777c4d775d8ec4af0c765ed352ac443f5c916983.png","thumbRetinaUrl":"https://img.stackshare.io/stack/690/thumb_retina_777c4d775d8ec4af0c765ed352ac443f5c916983.png","identifier":"gdi2290/mean","id":"101231778744121328","__typename":"Stack"},"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.0":{"node":{"type":"id","generated":false,"id":"Stack:101231778744121328","typename":"Stack"},"__typename":"StackEdge"},"Stack:101231779498138544":{"name":"Cesar Gomez","imageUrl":"https://img.stackshare.io/stack/2499/default_2549f06ec4caf8f6609583aa0906cabf56c46ecc.jpeg","thumbUrl":"https://img.stackshare.io/stack/2499/thumb_2549f06ec4caf8f6609583aa0906cabf56c46ecc.jpeg","thumbRetinaUrl":"https://img.stackshare.io/stack/2499/thumb_retina_2549f06ec4caf8f6609583aa0906cabf56c46ecc.jpeg","identifier":"cesargomez89/cesar-gomez","id":"101231779498138544","__typename":"Stack"},"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.1":{"node":{"type":"id","generated":false,"id":"Stack:101231779498138544","typename":"Stack"},"__typename":"StackEdge"},"Stack:101231782736219981":{"name":"Clan Of The Cloud","imageUrl":"https://img.stackshare.io/stack/9807/default_cc273d64402a93318e2ee573f3592c56e4bddb42.png","thumbUrl":"https://img.stackshare.io/stack/9807/thumb_cc273d64402a93318e2ee573f3592c56e4bddb42.png","thumbRetinaUrl":"https://img.stackshare.io/stack/9807/thumb_retina_cc273d64402a93318e2ee573f3592c56e4bddb42.png","identifier":"chrisDeFouRire/clan-of-the-cloud","id":"101231782736219981","__typename":"Stack"},"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.2":{"node":{"type":"id","generated":false,"id":"Stack:101231782736219981","typename":"Stack"},"__typename":"StackEdge"},"Stack:101231780199373954":{"name":"SaaS","imageUrl":"https://img.stackshare.io/stack/4275/default_5154ce269051a660086a7c4d9c5dc60972f7b812.jpg","thumbUrl":"https://img.stackshare.io/stack/4275/thumb_5154ce269051a660086a7c4d9c5dc60972f7b812.jpg","thumbRetinaUrl":"https://img.stackshare.io/stack/4275/thumb_retina_5154ce269051a660086a7c4d9c5dc60972f7b812.jpg","identifier":"zharikovpro/saas","id":"101231780199373954","__typename":"Stack"},"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.3":{"node":{"type":"id","generated":false,"id":"Stack:101231780199373954","typename":"Stack"},"__typename":"StackEdge"},"Stack:101231779046855363":{"name":"Lubert","imageUrl":"https://img.stackshare.io/stack/1390/default_8523dd9da5c7f8258a5f7bc1b173c33ef914f67c.jpeg","thumbUrl":"https://img.stackshare.io/stack/1390/thumb_8523dd9da5c7f8258a5f7bc1b173c33ef914f67c.jpeg","thumbRetinaUrl":"https://img.stackshare.io/stack/1390/thumb_retina_8523dd9da5c7f8258a5f7bc1b173c33ef914f67c.jpeg","identifier":"trepafi/lubert","id":"101231779046855363","__typename":"Stack"},"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.4":{"node":{"type":"id","generated":false,"id":"Stack:101231779046855363","typename":"Stack"},"__typename":"StackEdge"},"Stack:101231778648827712":{"name":"Personal","imageUrl":"https://img.stackshare.io/stack/467/default_f7cfe4e06367784332e656bba50892adebeb4135.jpg","thumbUrl":"https://img.stackshare.io/stack/467/thumb_f7cfe4e06367784332e656bba50892adebeb4135.jpg","thumbRetinaUrl":"https://img.stackshare.io/stack/467/thumb_retina_f7cfe4e06367784332e656bba50892adebeb4135.jpg","identifier":"mhaidarh/personal","id":"101231778648827712","__typename":"Stack"},"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.5":{"node":{"type":"id","generated":false,"id":"Stack:101231778648827712","typename":"Stack"},"__typename":"StackEdge"},"Stack:101231779899658381":{"name":"Hitalo Silva","imageUrl":"https://img.stackshare.io/stack/3524/default_400a09b4c8f7326dd7ead8471ff3c9f0bc9f5762.jpeg","thumbUrl":"https://img.stackshare.io/stack/3524/thumb_400a09b4c8f7326dd7ead8471ff3c9f0bc9f5762.jpeg","thumbRetinaUrl":"https://img.stackshare.io/stack/3524/thumb_retina_400a09b4c8f7326dd7ead8471ff3c9f0bc9f5762.jpeg","identifier":"hitalos/hitalo-silva","id":"101231779899658381","__typename":"Stack"},"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.6":{"node":{"type":"id","generated":false,"id":"Stack:101231779899658381","typename":"Stack"},"__typename":"StackEdge"},"Stack:101231778967391834":{"name":"Thomas Davis","imageUrl":"https://img.stackshare.io/stack/1198/default_337878a054ceda2946230d466e3b1bab9a283a4b.jpeg","thumbUrl":"https://img.stackshare.io/stack/1198/thumb_337878a054ceda2946230d466e3b1bab9a283a4b.jpeg","thumbRetinaUrl":"https://img.stackshare.io/stack/1198/thumb_retina_337878a054ceda2946230d466e3b1bab9a283a4b.jpeg","identifier":"thomasdavis/thomas-davis","id":"101231778967391834","__typename":"Stack"},"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.7":{"node":{"type":"id","generated":false,"id":"Stack:101231778967391834","typename":"Stack"},"__typename":"StackEdge"},"Stack:101231782307899350":{"name":"Codibook","imageUrl":"https://img.stackshare.io/stack/8730/default_370289c18a882c542c00daa3dcc94e648cf7b086.png","thumbUrl":"https://img.stackshare.io/stack/8730/thumb_370289c18a882c542c00daa3dcc94e648cf7b086.png","thumbRetinaUrl":"https://img.stackshare.io/stack/8730/thumb_retina_370289c18a882c542c00daa3dcc94e648cf7b086.png","identifier":"ydea-2/codibook","id":"101231782307899350","__typename":"Stack"},"$Tool:101231773920953695.userStacksUsing({\"first\":9}).edges.8":{"node":{"type":"id","generated":false,"id":"Stack:101231782307899350","typename":"Stack"},"__typename":"StackEdge"},"$Tool:101231773920953695.featuredPosts({\"first\":8})":{"count":4,"pageInfo":{"type":"id","generated":true,"id":"$Tool:101231773920953695.featuredPosts({\"first\":8}).pageInfo","typename":"PageInfo"},"edges":[{"type":"id","generated":true,"id":"$Tool:101231773920953695.featuredPosts({\"first\":8}).edges.0","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.featuredPosts({\"first\":8}).edges.1","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.featuredPosts({\"first\":8}).edges.2","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.featuredPosts({\"first\":8}).edges.3","typename":"FeaturedPostEdge"}],"__typename":"FeaturedPostConnection"},"$Tool:101231773920953695.featuredPosts({\"first\":8}).pageInfo":{"hasNextPage":false,"endCursor":"NA","__typename":"PageInfo"},"FeaturedPost:102732034457071663":{"id":"102732034457071663","views":1483,"title":"Monitoring Node.js Applications on OpenShift with Prometheus","imageUrl":"https://img.stackshare.io/stack/507090/default_e94e73bad17f314c3162b92e0cfc3dd2e4b724e9.png","publishedAt":"2019-09-04T03:07:23Z","canonicalUrl":"/red-hat-inc/monitoring-node-js-applications-on-openshift-with-prometheus","previewImageUrl":"https://img.stackshare.io/stack/507090/9096ef73f6232a93c957fe5549f8ab38f550242e.png","company":{"type":"id","generated":true,"id":"$FeaturedPost:102732034457071663.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773895058604","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774206661614","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774455039874","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773504918534","typename":"Tool"}],"favoriteStacksCount":1,"__typename":"FeaturedPost"},"$FeaturedPost:102732034457071663.company":{"name":"Red Hat, Inc.","__typename":"Company"},"Tool:101231773895058604":{"id":"101231773895058604","name":"npm","slug":"npm","title":"The package manager for JavaScript.","verified":true,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","canonicalUrl":"/npm","path":"/npm","votes":1634,"fans":95627,"stacks":124494,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774206661614":{"id":"101231774206661614","name":"Kubernetes","slug":"kubernetes","title":"Manage a cluster of Linux containers as a single system to accelerate Dev and simplify Ops","verified":false,"imageUrl":"https://img.stackshare.io/service/1885/21_d3cvM.png","canonicalUrl":"/kubernetes","path":"/kubernetes","votes":681,"fans":60221,"stacks":59829,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774455039874":{"id":"101231774455039874","name":"Prometheus","slug":"prometheus","title":"An open-source service monitoring system and time series database, developed by SoundCloud","verified":false,"imageUrl":"https://img.stackshare.io/service/2501/default_3cf1b307194b26782be5cb209d30360580ae5b3c.png","canonicalUrl":"/prometheus","path":"/prometheus","votes":239,"fans":4880,"stacks":4268,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773504918534":{"id":"101231773504918534","name":"Red Hat OpenShift","slug":"red-hat-openshift","title":"Red Hat's free Platform as a Service (PaaS) for hosting Java, PHP, Ruby, Python, Node.js, and Perl apps","verified":true,"imageUrl":"https://img.stackshare.io/service/197/default_d69814fad86744595b3b0b30ef84c36c09c70902.jpg","canonicalUrl":"/red-hat-openshift","path":"/red-hat-openshift","votes":517,"fans":1811,"stacks":1474,"following":false,"followContext":null,"__typename":"Tool"},"$Tool:101231773920953695.featuredPosts({\"first\":8}).edges.0":{"node":{"type":"id","generated":false,"id":"FeaturedPost:102732034457071663","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101231816776527215":{"id":"101231816776527215","views":13629,"title":"How Stream Built a Modern RSS Reader With JavaScript","imageUrl":"https://img.stackshare.io/stack/324567/default_6173bfb55612718a9834547806d0275503812d65.png","publishedAt":"2018-06-19T03:02:34Z","canonicalUrl":"/stream/how-stream-built-a-modern-rss-reader-with-javascript","previewImageUrl":"https://img.stackshare.io/stack/324567/67158d60bd5e62c7a575d3906bef5bf1012d7c97.png","company":{"type":"id","generated":true,"id":"$FeaturedPost:101231816776527215.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773939333405","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773410696721","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773849098825","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854388643","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775376642511","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854768982","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773409399220","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775357043443","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776364087566","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774565594919","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773403188549","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774519122717","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773501596063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774492574471","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774678060123","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773772085321","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773951552081","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773623413723","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773671105654","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776176987604","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776297440807","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774337384939","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773860768398","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773813299908","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774327775574","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231778007196699","typename":"Tool"}],"favoriteStacksCount":14,"__typename":"FeaturedPost"},"$FeaturedPost:101231816776527215.company":{"name":"Stream","__typename":"Company"},"Tool:101231773410696721":{"id":"101231773410696721","name":"GitHub","slug":"github","title":"Powerful collaboration, review, and code management for open source and private development projects","verified":true,"imageUrl":"https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg","canonicalUrl":"/github","path":"/github","votes":10341,"fans":283379,"stacks":285627,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775376642511":{"id":"101231775376642511","name":"ES6","slug":"es6","title":"The next version of JavaScript","verified":false,"imageUrl":"https://img.stackshare.io/service/4109/16407404782_8b9c57eab3.jpg","canonicalUrl":"/es6","path":"/es6","votes":165,"fans":70471,"stacks":71423,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773854768982":{"id":"101231773854768982","name":"Redis","slug":"redis","title":"Open source (BSD licensed), in-memory data structure store","verified":false,"imageUrl":"https://img.stackshare.io/service/1031/default_cbce472cd134adc6688572f999e9122b9657d4ba.png","canonicalUrl":"/redis","path":"/redis","votes":3943,"fans":54893,"stacks":59412,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773409399220":{"id":"101231773409399220","name":"Amazon S3","slug":"amazon-s3","title":"Store and retrieve any amount of data, at any time, from anywhere on the web","verified":false,"imageUrl":"https://img.stackshare.io/service/25/amazon-s3.png","canonicalUrl":"/amazon-s3","path":"/amazon-s3","votes":2041,"fans":47883,"stacks":53198,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773405612798":{"id":"101231773405612798","name":"Amazon EC2","slug":"amazon-ec2","title":"Scalable, pay-as-you-go compute capacity in the cloud","verified":false,"imageUrl":"https://img.stackshare.io/service/18/amazon-ec2.png","canonicalUrl":"/amazon-ec2","path":"/amazon-ec2","votes":2548,"fans":43239,"stacks":48222,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775357043443":{"id":"101231775357043443","name":"Redux","slug":"reduxjs","title":"Predictable state container for JavaScript apps","verified":false,"imageUrl":"https://img.stackshare.io/service/4074/13142323.png","canonicalUrl":"/reduxjs","path":"/reduxjs","votes":674,"fans":28468,"stacks":30535,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776364087566":{"id":"101231776364087566","name":"Yarn","slug":"yarn","title":"A new package manager for JavaScript","verified":false,"imageUrl":"https://img.stackshare.io/service/5848/44mC-kJ3.jpg","canonicalUrl":"/yarn","path":"/yarn","votes":151,"fans":17561,"stacks":24463,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774565594919":{"id":"101231774565594919","name":"Babel","slug":"babel","title":"Use next generation JavaScript, today.","verified":true,"imageUrl":"https://img.stackshare.io/service/2739/-1wfGjNw.png","canonicalUrl":"/babel","path":"/babel","votes":391,"fans":14649,"stacks":22287,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773403188549":{"id":"101231773403188549","name":"Amazon CloudFront","slug":"amazon-cloudfront","title":"Content delivery with low latency and high data transfer speeds","verified":false,"imageUrl":"https://img.stackshare.io/service/13/amazon-cloudfront.png","canonicalUrl":"/amazon-cloudfront","path":"/amazon-cloudfront","votes":935,"fans":13587,"stacks":21278,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774519122717":{"id":"101231774519122717","name":"Grafana","slug":"grafana","title":"Open source Graphite & InfluxDB Dashboard and Graph Editor","verified":false,"imageUrl":"https://img.stackshare.io/service/2645/default_8f9d552b144493679449b16c79647da5787e808b.jpg","canonicalUrl":"/grafana","path":"/grafana","votes":415,"fans":17505,"stacks":17919,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774492574471":{"id":"101231774492574471","name":"AWS Elastic Load Balancing (ELB)","slug":"aws-elastic-load-balancing","title":"Automatically distribute your incoming application traffic across multiple Amazon EC2 instances","verified":false,"imageUrl":"https://img.stackshare.io/service/2587/aws-elastic-load-balancing.png","canonicalUrl":"/aws-elastic-load-balancing","path":"/aws-elastic-load-balancing","votes":59,"fans":11237,"stacks":12600,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774678060123":{"id":"101231774678060123","name":"Electron","slug":"electron","title":"Build cross platform desktop apps with JavaScript, HTML, and CSS","verified":false,"imageUrl":"https://img.stackshare.io/service/2946/default_18a71b65e69d7aef5f218ae07f64eb6e1594c444.jpg","canonicalUrl":"/electron","path":"/electron","votes":148,"fans":12252,"stacks":11310,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773951552081":{"id":"101231773951552081","name":"Mongoose","slug":"mongoose","title":"MongoDB object modeling designed to work in an asynchronous environment","verified":false,"imageUrl":"https://img.stackshare.io/service/1231/0TXzZU7W_400x400.jpg","canonicalUrl":"/mongoose","path":"/mongoose","votes":56,"fans":2036,"stacks":2135,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773623413723":{"id":"101231773623413723","name":"AWS CloudFormation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","verified":false,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","canonicalUrl":"/aws-cloudformation","path":"/aws-cloudformation","votes":88,"fans":1710,"stacks":1543,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773671105654":{"id":"101231773671105654","name":"Algolia","slug":"algolia","title":"Developer-friendly API and complete set of tools for building search","verified":true,"imageUrl":"https://img.stackshare.io/service/589/default_452afb716f8f4b904f267638e5c6b9172f9fa06d.png","canonicalUrl":"/algolia","path":"/algolia","votes":699,"fans":1494,"stacks":1306,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776176987604":{"id":"101231776176987604","name":"Create React App","slug":"create-react-app","title":"Create React apps with no build configuration","verified":true,"imageUrl":"https://img.stackshare.io/service/5537/oi64YzXY.jpg","canonicalUrl":"/create-react-app","path":"/create-react-app","votes":4,"fans":1298,"stacks":1039,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776297440807":{"id":"101231776297440807","name":"MongoDB Atlas","slug":"mongodb-atlas","title":"Deploy and scale a MongoDB cluster in the cloud with just a few clicks","verified":true,"imageUrl":"https://img.stackshare.io/service/5739/atlas-360x360.png","canonicalUrl":"/mongodb-atlas","path":"/mongodb-atlas","votes":34,"fans":1151,"stacks":843,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774337384939":{"id":"101231774337384939","name":"PM2","slug":"pm2","title":"Ease-to-use Node.js process manager, like forever","verified":true,"imageUrl":"https://img.stackshare.io/service/2237/757747.png","canonicalUrl":"/pm2","path":"/pm2","votes":24,"fans":559,"stacks":486,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773860768398":{"id":"101231773860768398","name":"Graphite","slug":"graphite","title":"A highly scalable real-time graphing system","verified":false,"imageUrl":"https://img.stackshare.io/service/1050/graphite.png","canonicalUrl":"/graphite","path":"/graphite","votes":42,"fans":517,"stacks":390,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773813299908":{"id":"101231773813299908","name":"StatsD","slug":"statsd","title":"Simple daemon for easy stats aggregation","verified":false,"imageUrl":"https://img.stackshare.io/service/932/default_b8c7d49298132d46fbef113905bcba1896158113.png","canonicalUrl":"/statsd","path":"/statsd","votes":31,"fans":362,"stacks":305,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774327775574":{"id":"101231774327775574","name":"Stream","slug":"stream","title":"Build scalable feeds, activity streams & chat in a few hours instead of months.","verified":true,"imageUrl":"https://img.stackshare.io/service/2213/mBSAJI_h_400x400.jpg","canonicalUrl":"/stream","path":"/stream","votes":54,"fans":321,"stacks":227,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231778007196699":{"id":"101231778007196699","name":"Bull","slug":"bull","title":"Premium Queue package for handling jobs and messages in NodeJS","verified":false,"imageUrl":"https://img.stackshare.io/service/9146/bull-logo.png","canonicalUrl":"/bull","path":"/bull","votes":1,"fans":147,"stacks":75,"following":false,"followContext":null,"__typename":"Tool"},"$Tool:101231773920953695.featuredPosts({\"first\":8}).edges.1":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101231816776527215","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101231783395423508":{"id":"101231783395423508","views":16094,"title":"How Mashape Manages Over 15,000 APIs & Microservices","imageUrl":"https://img.stackshare.io/stack/11183/default_7bf03765b2aee30f2e922fa4baf4bf1e40f5145a.png","publishedAt":"2015-09-25T08:45:35Z","canonicalUrl":"/kong/how-mashape-manages-over-15000-apis-and-microservices","previewImageUrl":"https://img.stackshare.io/stack/11183/2267362ccc355136c4cfbdb2deee587b8215ca24.png","company":{"type":"id","generated":true,"id":"$FeaturedPost:101231783395423508.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773410696721","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773837179153","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773838011785","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773853533403","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773861864225","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854388643","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854768982","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773835511567","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773774313645","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773636491087","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773703014119","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773855147984","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774291224569","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773847891619","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773627798007","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774772759859","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774724522037","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773456856070","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773579158988","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773401272867","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773563555200","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773657526175","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773648351439","typename":"Tool"}],"favoriteStacksCount":29,"__typename":"FeaturedPost"},"$FeaturedPost:101231783395423508.company":{"name":"Kong","__typename":"Company"},"Tool:101231773837179153":{"id":"101231773837179153","name":"Python","slug":"python","title":"A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java.","verified":false,"imageUrl":"https://img.stackshare.io/service/993/pUBY5pVj.png","canonicalUrl":"/python","path":"/python","votes":6882,"fans":226544,"stacks":244722,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773838011785":{"id":"101231773838011785","name":"Java","slug":"java","title":"A concurrent, class-based, object-oriented, language specifically designed to have as few implementation dependencies as possible","verified":false,"imageUrl":"https://img.stackshare.io/service/995/K85ZWV2F.png","canonicalUrl":"/java","path":"/java","votes":3710,"fans":118387,"stacks":135122,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773835511567":{"id":"101231773835511567","name":"Ruby","slug":"ruby","title":"A dynamic, interpreted, open source programming language with a focus on simplicity and productivity","verified":false,"imageUrl":"https://img.stackshare.io/service/989/ruby.png","canonicalUrl":"/ruby","path":"/ruby","votes":3973,"fans":26471,"stacks":41806,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773774313645":{"id":"101231773774313645","name":"Elasticsearch","slug":"elasticsearch","title":"Open Source, Distributed, RESTful Search Engine","verified":true,"imageUrl":"https://img.stackshare.io/service/841/Image_2019-05-20_at_4.58.04_PM.png","canonicalUrl":"/elasticsearch","path":"/elasticsearch","votes":1648,"fans":32672,"stacks":34508,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773636491087":{"id":"101231773636491087","name":"Travis CI","slug":"travis-ci","title":"A hosted continuous integration service for open source and private projects","verified":true,"imageUrl":"https://img.stackshare.io/service/460/Lu6cGu0z_400x400.png","canonicalUrl":"/travis-ci","path":"/travis-ci","votes":1749,"fans":9386,"stacks":26378,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773855147984":{"id":"101231773855147984","name":"Cassandra","slug":"cassandra","title":"A partitioned row store. Rows are organized into tables with a required primary key.","verified":false,"imageUrl":"https://img.stackshare.io/service/1032/cassandra_small.png","canonicalUrl":"/cassandra","path":"/cassandra","votes":507,"fans":4300,"stacks":3575,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774291224569":{"id":"101231774291224569","name":"Lua","slug":"lua","title":"Powerful, fast, lightweight, embeddable scripting language","verified":false,"imageUrl":"https://img.stackshare.io/service/2118/128px-Lua-Logo.svg.png","canonicalUrl":"/lua","path":"/lua","votes":180,"fans":1455,"stacks":2339,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773847891619":{"id":"101231773847891619","name":"Ember.js","slug":"emberjs","title":"A JavaScript framework for creating ambitious web apps","verified":false,"imageUrl":"https://img.stackshare.io/service/1018/3s1seyc0csl75btyw1vl.png","canonicalUrl":"/emberjs","path":"/emberjs","votes":775,"fans":1147,"stacks":1506,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773627798007":{"id":"101231773627798007","name":"Chef","slug":"chef","title":"Build, destroy and rebuild servers on any public or private cloud","verified":false,"imageUrl":"https://img.stackshare.io/service/420/24f4ef5e7a67c0d720bf9ae69dd6de2a.png","canonicalUrl":"/chef","path":"/chef","votes":345,"fans":1325,"stacks":1265,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774772759859":{"id":"101231774772759859","name":"OpenResty","slug":"openresty","title":"Turning Nginx into a Full-fledged Web App Server","verified":false,"imageUrl":"https://img.stackshare.io/service/3118/default_194f546e1cde32e6a4a347f1d3198e62b5592f43.png","canonicalUrl":"/openresty","path":"/openresty","votes":0,"fans":288,"stacks":2318,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774724522037":{"id":"101231774724522037","name":"Kong","slug":"kong","title":"Open Source Microservice & API Management Layer","verified":true,"imageUrl":"https://ucarecdn.com/3cf09daa-4e1e-404e-a612-f8a91c661db2/","canonicalUrl":"/kong","path":"/kong","votes":139,"fans":1716,"stacks":641,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773456856070":{"id":"101231773456856070","name":"PagerDuty","slug":"pagerduty","title":"Incident management with powerful visibility, reliable alerting, and improved collaboration","verified":true,"imageUrl":"https://img.stackshare.io/service/107/GtwgsQj5_400x400.jpg","canonicalUrl":"/pagerduty","path":"/pagerduty","votes":119,"fans":928,"stacks":1014,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773579158988":{"id":"101231773579158988","name":"Code Climate","slug":"code-climate","title":"Automated Ruby Code Review","verified":true,"imageUrl":"https://img.stackshare.io/service/305/KFgYaUkK.png","canonicalUrl":"/code-climate","path":"/code-climate","votes":285,"fans":704,"stacks":665,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773401272867":{"id":"101231773401272867","name":"Chartio","slug":"chartio","title":"A powerful Business Intelligence tool anyone can use","verified":true,"imageUrl":"https://img.stackshare.io/service/9/TtrFaQ3j_400x400.png","canonicalUrl":"/chartio","path":"/chartio","votes":6,"fans":312,"stacks":447,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773563555200":{"id":"101231773563555200","name":"Splunk Cloud","slug":"splunk-cloud","title":"Easy and fast way to analyze valuable machine data with the convenience of software as a service (SaaS)","verified":true,"imageUrl":"https://img.stackshare.io/service/287/default_3ee4c34e118179464e491133fc4ac4f16e46771f.jpg","canonicalUrl":"/splunk-cloud","path":"/splunk-cloud","votes":15,"fans":463,"stacks":167,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773657526175":{"id":"101231773657526175","name":"Flowdock","slug":"flowdock","title":"Flowdock is your team's chat with a shared inbox. Teams using Flowdock react in seconds and never forget anything.","verified":true,"imageUrl":"https://img.stackshare.io/service/547/-vh2vDWG_400x400.jpg","canonicalUrl":"/flowdock","path":"/flowdock","votes":165,"fans":126,"stacks":101,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773648351439":{"id":"101231773648351439","name":"Mashape","slug":"mashape","title":"Open Source API Platform for a Cloud Native World","verified":true,"imageUrl":"https://ucarecdn.com/274d1d51-138b-432b-b50b-d61bef011d83/","canonicalUrl":"/mashape","path":"/mashape","votes":26,"fans":93,"stacks":40,"following":false,"followContext":null,"__typename":"Tool"},"$Tool:101231773920953695.featuredPosts({\"first\":8}).edges.2":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101231783395423508","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101231780387706513":{"id":"101231780387706513","views":2458,"title":"How ReadMe Documents 15,000 Projects","imageUrl":"https://img.stackshare.io/stack/4665/default_2d55c502ca0c2a42899a42158efa51355e248960.png","publishedAt":"2015-06-19T06:37:27Z","canonicalUrl":"/readme-io/how-readme-documents-15000-projects","previewImageUrl":null,"company":{"type":"id","generated":true,"id":"$FeaturedPost:101231780387706513.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773939333405","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773410696721","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773705712932","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854388643","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854768982","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773848354670","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773404113083","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773774313645","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773920953695","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773470689784","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773454477801","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773450178959","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773421693052","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773951552081","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773925695555","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773670764039","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773924483778","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773503355411","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773506325637","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774080733339","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773506791747","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774827607294","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773490387271","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773765219126","typename":"Tool"}],"favoriteStacksCount":12,"__typename":"FeaturedPost"},"$FeaturedPost:101231780387706513.company":{"name":"ReadMe.io","__typename":"Company"},"Tool:101231773705712932":{"id":"101231773705712932","name":"Slack","slug":"slack","title":"Bring all your communication together in one place","verified":false,"imageUrl":"https://img.stackshare.io/service/675/RNiSRYOF_400x400.jpg","canonicalUrl":"/slack","path":"/slack","votes":6023,"fans":113599,"stacks":119517,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773848354670":{"id":"101231773848354670","name":"AngularJS","slug":"angularjs","title":"Superheroic JavaScript MVW Framework","verified":false,"imageUrl":"https://img.stackshare.io/service/1019/square.png","canonicalUrl":"/angularjs","path":"/angularjs","votes":5283,"fans":55509,"stacks":60963,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773404113083":{"id":"101231773404113083","name":"CloudFlare","slug":"cloudflare","title":"The Web Performance & Security Company.","verified":true,"imageUrl":"https://img.stackshare.io/service/15/twitter-profile-400x400.png","canonicalUrl":"/cloudflare","path":"/cloudflare","votes":1772,"fans":27565,"stacks":76579,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773470689784":{"id":"101231773470689784","name":"Heroku","slug":"heroku","title":"Build, deliver, monitor and scale web apps and APIs with a trail blazing developer experience.","verified":true,"imageUrl":"https://img.stackshare.io/service/133/3wgIDj3j.png","canonicalUrl":"/heroku","path":"/heroku","votes":3208,"fans":25156,"stacks":25519,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773454477801":{"id":"101231773454477801","name":"New Relic","slug":"new-relic","title":"New Relic is the industry’s largest and most comprehensive cloud-based observability platform.","verified":true,"imageUrl":"https://img.stackshare.io/service/103/default_193410db3a7e419c7b436961bf41d733c7346b59.png","canonicalUrl":"/new-relic","path":"/new-relic","votes":1931,"fans":10972,"stacks":20815,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773450178959":{"id":"101231773450178959","name":"Stripe","slug":"stripe","title":"Payments for developers","verified":true,"imageUrl":"https://img.stackshare.io/service/97/eW6tXeq3.png","canonicalUrl":"/stripe","path":"/stripe","votes":1539,"fans":15561,"stacks":18834,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773421693052":{"id":"101231773421693052","name":"Mailgun","slug":"mailgun","title":"The Email Service for Developers.","verified":true,"imageUrl":"https://img.stackshare.io/service/44/ICON_MAILGUN_NOFX.png","canonicalUrl":"/mailgun","path":"/mailgun","votes":656,"fans":5628,"stacks":7858,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773925695555":{"id":"101231773925695555","name":"Pug","slug":"pug","title":"Robust, elegant, feature rich template engine for nodejs","verified":false,"imageUrl":"https://img.stackshare.io/service/1175/pug.png","canonicalUrl":"/pug","path":"/pug","votes":467,"fans":1519,"stacks":1229,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773670764039":{"id":"101231773670764039","name":"Heap","slug":"heap","title":"Automatically capture every user action in your app and measure it all","verified":true,"imageUrl":"https://img.stackshare.io/service/588/i5NnxX2V_400x400.jpg","canonicalUrl":"/heap","path":"/heap","votes":126,"fans":553,"stacks":685,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773924483778":{"id":"101231773924483778","name":"Stylus","slug":"stylus","title":"Expressive, robust, feature-rich CSS language built for nodejs","verified":false,"imageUrl":"https://img.stackshare.io/service/1172/stylus.png","canonicalUrl":"/stylus","path":"/stylus","votes":331,"fans":558,"stacks":442,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773503355411":{"id":"101231773503355411","name":"Airbrake","slug":"airbrake","title":"Airbrake captures and groups errors in Ruby, iOS, Django, PHP & more.","verified":true,"imageUrl":"https://img.stackshare.io/service/194/default_2e86c2914d7024c92debaced975586491c2fb0f1.jpg","canonicalUrl":"/airbrake","path":"/airbrake","votes":128,"fans":370,"stacks":265,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773506325637":{"id":"101231773506325637","name":"Logentries","slug":"logentries","title":"Real-time log management and analytics built for the cloud","verified":false,"imageUrl":"https://img.stackshare.io/service/200/mNYt_Nwl.png","canonicalUrl":"/logentries","path":"/logentries","votes":105,"fans":238,"stacks":284,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774080733339":{"id":"101231774080733339","name":"ReadMe.io","slug":"readme-io","title":"Create and manage beautiful, interactive documentation the easy way","verified":true,"imageUrl":"https://img.stackshare.io/service/1570/default_59f521d302264f440a1b600eed39d6d12474c575.jpg","canonicalUrl":"/readme-io","path":"/readme-io","votes":69,"fans":411,"stacks":119,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773506791747":{"id":"101231773506791747","name":"Compose","slug":"compose","title":"We host databases for busy devs: production-ready, cloud-hosted, open source.","verified":true,"imageUrl":"https://img.stackshare.io/service/201/reB72Lh4.png","canonicalUrl":"/compose","path":"/compose","votes":206,"fans":211,"stacks":224,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774827607294":{"id":"101231774827607294","name":"Clearbit","slug":"clearbit","title":"APIs for determining who's behind an email address","verified":true,"imageUrl":"https://img.stackshare.io/service/3227/boQMtD4j_400x400.jpg","canonicalUrl":"/clearbit","path":"/clearbit","votes":33,"fans":192,"stacks":99,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773490387271":{"id":"101231773490387271","name":"Filestack","slug":"filestack","title":"Easy, Powerful File Uploads","verified":true,"imageUrl":"https://img.stackshare.io/service/170/55_0wkQo.png","canonicalUrl":"/filestack","path":"/filestack","votes":4,"fans":132,"stacks":85,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773765219126":{"id":"101231773765219126","name":"Baremetrics","slug":"baremetrics","title":"Subscription analytics & insights","verified":true,"imageUrl":"https://img.stackshare.io/service/817/1WVJjXbT.png","canonicalUrl":"/baremetrics","path":"/baremetrics","votes":0,"fans":60,"stacks":49,"following":false,"followContext":null,"__typename":"Tool"},"$Tool:101231773920953695.featuredPosts({\"first\":8}).edges.3":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101231780387706513","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"$Tool:101231773920953695.followers({\"first\":10})":{"count":23648,"pageInfo":{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).pageInfo","typename":"PageInfo"},"edges":[{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).edges.0","typename":"UserEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).edges.1","typename":"UserEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).edges.2","typename":"UserEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).edges.3","typename":"UserEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).edges.4","typename":"UserEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).edges.5","typename":"UserEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).edges.6","typename":"UserEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).edges.7","typename":"UserEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).edges.8","typename":"UserEdge"},{"type":"id","generated":true,"id":"$Tool:101231773920953695.followers({\"first\":10}).edges.9","typename":"UserEdge"}],"__typename":"UserConnection"},"$Tool:101231773920953695.followers({\"first\":10}).pageInfo":{"hasNextPage":true,"endCursor":"MTA","__typename":"PageInfo"},"User:113533250065931040":{"id":"113533250065931040","displayName":"amidelest","username":"amidelest","imageUrl":"https://img.stackshare.io/user/1667126/default_40fe05e1a3fba3f888c45e16ea3319558b6f1516.jpg","title":null,"popularity":3,"path":"/amidelest","stacksCount":1,"favoritesCount":0,"votesCount":0,"__typename":"User"},"$Tool:101231773920953695.followers({\"first\":10}).edges.0":{"node":{"type":"id","generated":false,"id":"User:113533250065931040","typename":"User"},"__typename":"UserEdge"},"User:113516294058274619":{"id":"113516294058274619","displayName":"Artikate Studio","username":"artikate-studio","imageUrl":"https://img.stackshare.io/user/1666711/default_35062fef64530f862616d4ecd96aca6511dfb25b.png","title":"","popularity":3,"path":"/artikate-studio","stacksCount":2,"favoritesCount":0,"votesCount":0,"__typename":"User"},"$Tool:101231773920953695.followers({\"first\":10}).edges.1":{"node":{"type":"id","generated":false,"id":"User:113516294058274619","typename":"User"},"__typename":"UserEdge"},"User:113505244590019092":{"id":"113505244590019092","displayName":"Ariela Israel","username":"ariicodes","imageUrl":"https://img.stackshare.io/user/1666361/default_dd41c5746f3edb06c939b1fe59a9a95181ee15af.png","title":"Fullstack Developer","popularity":0,"path":"/ariicodes","stacksCount":1,"favoritesCount":0,"votesCount":0,"__typename":"User"},"$Tool:101231773920953695.followers({\"first\":10}).edges.2":{"node":{"type":"id","generated":false,"id":"User:113505244590019092","typename":"User"},"__typename":"UserEdge"},"User:113504926501740486":{"id":"113504926501740486","displayName":"apk-kernel","username":"apk-kernel","imageUrl":"https://img.stackshare.io/user/1666352/default_d5c72e1b6ae23255fe1239afcd54863ae5460b70.png","title":null,"popularity":3,"path":"/apk-kernel","stacksCount":1,"favoritesCount":0,"votesCount":0,"__typename":"User"},"$Tool:101231773920953695.followers({\"first\":10}).edges.3":{"node":{"type":"id","generated":false,"id":"User:113504926501740486","typename":"User"},"__typename":"UserEdge"},"User:113493460708469574":{"id":"113493460708469574","displayName":"w2011gordon","username":"w2011gordon","imageUrl":"https://img.stackshare.io/user/1666072/default_e71d54a459ded5f1fe96fb0e606c16fab0cf5796.png","title":"","popularity":3,"path":"/w2011gordon","stacksCount":1,"favoritesCount":0,"votesCount":0,"__typename":"User"},"$Tool:101231773920953695.followers({\"first\":10}).edges.4":{"node":{"type":"id","generated":false,"id":"User:113493460708469574","typename":"User"},"__typename":"UserEdge"},"User:113493171854453808":{"id":"113493171854453808","displayName":"vin777 fifaworldcup","username":"vin777fifaworldcup","imageUrl":"https://img.stackshare.io/user/1666064/default_6e8b9f5d05daf7ada3ca12cccbc305c60fd5bd46.png","title":"","popularity":3,"path":"/vin777fifaworldcup","stacksCount":1,"favoritesCount":0,"votesCount":0,"__typename":"User"},"$Tool:101231773920953695.followers({\"first\":10}).edges.5":{"node":{"type":"id","generated":false,"id":"User:113493171854453808","typename":"User"},"__typename":"UserEdge"},"User:113491174476894304":{"id":"113491174476894304","displayName":"Jaime O'Donnell","username":"duetinccom","imageUrl":"https://img.stackshare.io/user/1666006/default_3afd0d5cef439fc5f56561e113b47dc788a3e95c.jpg","title":"Cofounder & COO","popularity":3,"path":"/duetinccom","stacksCount":1,"favoritesCount":0,"votesCount":0,"__typename":"User"},"$Tool:101231773920953695.followers({\"first\":10}).edges.6":{"node":{"type":"id","generated":false,"id":"User:113491174476894304","typename":"User"},"__typename":"UserEdge"},"User:113489877102012359":{"id":"113489877102012359","displayName":"Daniel Santos","username":"danielsantos7br","imageUrl":"https://img.stackshare.io/user/1665982/default_e4ec54bbe2a5d284aff21d9e67fcec7e990bd876.jpg","title":"","popularity":3,"path":"/danielsantos7br","stacksCount":1,"favoritesCount":0,"votesCount":0,"__typename":"User"},"$Tool:101231773920953695.followers({\"first\":10}).edges.7":{"node":{"type":"id","generated":false,"id":"User:113489877102012359","typename":"User"},"__typename":"UserEdge"},"User:113484805569813017":{"id":"113484805569813017","displayName":"Justin Foreman","username":"jforeman","imageUrl":"https://img.stackshare.io/user/1665855/default_85d41bdb6d461e5f3c27842372b2c22a29e591ea.png","title":"Account Executive","popularity":3,"path":"/jforeman","stacksCount":1,"favoritesCount":0,"votesCount":0,"__typename":"User"},"$Tool:101231773920953695.followers({\"first\":10}).edges.8":{"node":{"type":"id","generated":false,"id":"User:113484805569813017","typename":"User"},"__typename":"UserEdge"},"User:113475555441504997":{"id":"113475555441504997","displayName":"Felix Heidecke","username":"felixheidecke","imageUrl":"https://img.stackshare.io/user/1665600/default_d154d4bc1fd88c28db3adc0515e25a61a8dd62c5.jpg","title":"Full-Stack-Web-Developer","popularity":3,"path":"/felixheidecke","stacksCount":1,"favoritesCount":0,"votesCount":0,"__typename":"User"},"$Tool:101231773920953695.followers({\"first\":10}).edges.9":{"node":{"type":"id","generated":false,"id":"User:113475555441504997","typename":"User"},"__typename":"UserEdge"}}

ExpressJS logo

ExpressJS

Sinatra inspired web development framework for node.js -- insanely fast, flexible, and simple
32K
23.6K
+ 1
1.6K

What is ExpressJS?

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

Who uses ExpressJS?

Companies
2038 companies reportedly use ExpressJS in their tech stacks, including Twitter, Accenture, and kevin..

Developers
25441 developers on StackShare have stated that they use ExpressJS.

ExpressJS Integrations

Node.js, Sentry, Datadog, nodemon, and Bugsnag are some of the popular tools that integrate with ExpressJS. Here's a list of all 39 tools that integrate with ExpressJS.
Pros of ExpressJS
381
Simple
336
Node.js
244
Javascript
193
High performance
152
Robust routing
73
Middlewares
72
Open source
59
Great community
37
Hybrid web applications
16
Well documented
9
Sinatra inspired
9
Rapid development
7
Isomorphic js.. superfast and easy
7
Socket connection
5
Light weight
4
Npm
4
Resource available for learning
3
Callbacks
3
Event loop
2
Data stream
1
Easy to use
Decisions about ExpressJS

Here are some stack decisions, common use cases and reviews by companies and developers who chose ExpressJS in their tech stack.

Anurag Maurya
Needs advice
on
ExpressJSExpressJSJavaScriptJavaScript
and
Node.jsNode.js

Needs advice on code coverage tool in Node.js/ExpressJS with External API Testing Framework

Hello community,

I have a web application with the backend developed using Node.js and Express.js. The backend server is in one directory, and I have a separate API testing framework, made using SuperTest, Mocha, and Chai, in another directory. The testing framework pings the API, retrieves responses, and performs validations.

I'm currently looking for a code coverage tool that can accurately measure the code coverage of my backend code when triggered by the API testing framework. I've tried using Istanbul and NYC with instrumented code, but the results are not as expected.

Could you please recommend a reliable code coverage tool or suggest an approach to effectively measure the code coverage of my Node.js/Express.js backend code in this setup?

See more
Needs advice
on
ExpressJSExpressJSNext.jsNext.js
and
PostgreSQLPostgreSQL

Hello, I am building a website for a school that's used by students to find Zoom meeting links, view their marks, and check course materials. It is also used by the teachers to put the meeting links, students' marks, and course materials.

I created a similar website using HTML, CSS, PHP, and MySQL. Now I want to implement this project using some frameworks: Next.js, ExpressJS and use PostgreSQL instead of MYSQL

I want to have some advice on whether these are enough to implement my project

See more
Needs advice
on
ExpressJSExpressJS
and
Next.jsNext.js

Hello, I am building a website for a school that's used by students to find Zoom meeting links, view their marks, and check course materials. It is also used by the teachers to put the meeting links, students' marks, and course materials.

I created a similar website using HTML, CSS, PHP, and MySQL. Now I want to implement this project using some frameworks: Next.js, ExpressJS and use PostgreSQL instead of MYSQL

I want to have some advice on whether these are enough to implement my project.

See more
dagim debebe
Needs advice
on
ExpressJSExpressJSReactReact
and
React NativeReact Native

Hi,

I am a student and a junior developer who is a graduating candidate in comp sci major. I am about to start building my final year project which is a real-time messaging application for software developers to Enhance Knowledge Exchange and Problem Solving. It is mainly a chat application with more enhanced features. I am planning to use React and React Native for the frontend and cross-platform mobile apps, Node.js and ExpressJS for the backend, GraphQL for fetching and manipulating data from the backend and PostgreSQL for the database, and finally Socket.IO for the real-time chatting and communication. I would highly appreciate it if anyone here with experience in building similar apps to tell me if I made a good choice or suggest better tech stacks.

Thanks in advance.

See more
Needs advice
on
ExpressJSExpressJSMongoDBMongoDB
and
TypeScriptTypeScript

I'm interested in web back-ends. Currently, I spent some time learning MongoDB + ExpressJS + TypeScript for back-end. I can make a basic application that can Create Read Update and Delete user data (super basic with some authentication that requires you to sign-in to read and be a valid user to delete a user). My current situation is that I wish to have a job in this area as I loved creating this simple application, what are the ways I can get into the industry without having any Computer Science degree?

See more
Needs advice
on
CSS 3CSS 3HTML5HTML5
and
JavaScriptJavaScript

Hi guyz, I'm done with Front End Development (HTML, CSS, JavaScript) and learning MERN( MongoDB, ExpressJS, React, Node.js) so please share some good frontend projects

See more

Blog Posts

Node.jsnpmKubernetes+6
1
1483
JavaScriptGitHubNode.js+29
14
13629
GitHubPythonNode.js+26
29
16094
Jun 19 2015 at 6:37AM

ReadMe.io

JavaScriptGitHubNode.js+25
12
2458

ExpressJS's Features

  • Robust routing
  • HTTP helpers (redirection, caching, etc)
  • View system supporting 14+ template engines
  • Content negotiation
  • Focus on high performance
  • Executable for generating applications quickly
  • High test coverage

ExpressJS Alternatives & Comparisons

What are some alternatives to ExpressJS?
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
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 is intended for getting started very quickly and was developed with best intentions in mind.
Django
Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.
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.
See all alternatives

ExpressJS's Followers
23648 developers follow ExpressJS to keep up with related blogs and decisions.