-
Notifications
You must be signed in to change notification settings - Fork 72
New Technologies
A fsg
generated project is geared towards education and has a Just Enough™ philosophy; the goal is to create an understandable foundation, not to provide pre-baked solutions to every problem that may arise.
Despite this aspiration for leanness, a generated project will include and encourage the use of some technologies that are not officially taught in the Fullstack curriculum. This document aims to list these technologies and provide resources for self-learning.
Gulp is used to manage and run a number of development-time and on-deploy tasks.
Included in the Gulp process:
A code quality tool that gives you hints about code quality e.g. unexpected globals, missing syntax, inefficient loops. When using the Gulp process, this will run on save for both front- and back-end code.
An ES6 transpiler, allowing for the authoring of ES6 code. This is used for front-end code to be written in ES6. Writing ES6 is optional; ES5 code is simply transpiled to itself.
Socket can be used in order to allow for real-time messaging between the server process and connected browsers.
http://socket.io/get-started/chat/
The Gulp process facilitates automated testing for both server and browser code. Included in the initial scaffolding are examples of unit test files: a server-side test for the user model (tests/server/models/user-test.js
) and browser tests for the fsaPreBuilt
functionality (tests/browser/fsa-prebuilt/*
).
Notable technologies being used for this testing workflow:
A library for creating spies, stubs, etc., useful for creating isolated unit tests.
A utility technology for instantiating a mock browser and environment in order to test front-end code. Configuration for this environment can be found at tests/browser/karma.conf.js
.