What is Groovy?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
Sign up to add, upvote and see more consMake informed product decisions
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
- Most server-side scripts, all unit tests, all build tools, etc. were driven by NodeJS.
- ExpressJS served as the 'backend' server framework.
- MongoDB (which stores essential JSON) was the main database.
- MongooseJS was used as the main ORM for communicating with the database, with KnexJS used for certain edge cases.
- MochaJS, ChaiJS, and ExpectJS were used for unit testing.
- Frontend builds were done with Gulp and Webpack.
- Package management was done primarily with npm - with a few exceptions that required the use of Bower (also configured with JSON).
- The frontend was build primarily with ReactJS (as the View) and Redux (as the Controller / Store / frontend model).
- Configuration was done with json files.
The only notable exceptions were the use of SCSS (augmented by Compass) for styling, Bash for a few basic 'system chores' and CLI utilities required for development of the app (most notably git and heroku's CLI interface), and a bit of custom SQL for locations where the ORM extractions leaked (the app is DB-agnostic, but a bit of SQL was required to fill gaps in the ORMs when interfacing with Postgres).
We are now re-considering TypeScript because 1) the tooling has improved significantly, and 2) and the root cause of the majority of our front-end bugs are related to typing (despite having PropTypes).