Cristian Care is a FullStack Web JavaScript Software developed with Sails.js framework
If you want to mantains this software you should learn Sails.js first, but JavaScripts experts.
Basic instructions to get you acquainted with this technology (Click here)
To download from GitHub Repository Click here
During maintenance process you should find somethig like...
/**
* Route Mappings
* (sails.config.routes)
*
* Your routes tell Sails what to do each time it receives a request.
*
* For more information on configuring custom routes, check out:
* https://sailsjs.com/anatomy/config/routes-js
*/
module.exports.routes = {
// ╦ ╦╔═╗╔╗ ╔═╗╔═╗╔═╗╔═╗╔═╗
// ║║║║╣ ╠╩╗╠═╝╠═╣║ ╦║╣ ╚═╗
// ╚╩╝╚═╝╚═╝╩ ╩ ╩╚═╝╚═╝╚═╝
'GET /': { action: 'view-homepage-or-redirect' },
'GET /welcome/:unused?': { action: 'dashboard/view-welcome' },
'GET /faq': { action: 'view-faq' },
'GET /legal/terms': { action: 'legal/view-terms' },
'GET /legal/privacy': { action: 'legal/view-privacy' },
'GET /contact': { action: 'view-contact' },
'GET /signup': { action: 'entrance/view-signup' },
'GET /email/confirm': { action: 'entrance/confirm-email' },
'GET /email/confirmed': { action: 'entrance/view-confirmed-email' },
'GET /login?restricted=false': { action: 'entrance/view-login' },
'GET /password/forgot': { action: 'entrance/view-forgot-password' },
'GET /password/new': { action: 'entrance/view-new-password' },
'GET /account': { action: 'account/view-account-overview' },
'GET /account/password': { action: 'account/view-edit-password' },
'GET /account/profile': { action: 'account/view-edit-profile' },

The basic working on concepts about a Sails.js application you need to know (for while) is:
- The backend server have to be running, and you should know this server address and port
- The browser (i.e. Google Chrome) should be able to request a page from server/port
- So, browsers will request a page and backends will check if the given path (i.e. localhost:8080/faq) exists
- If does it exist, backend will check if there is a logged user and if there are routes to grant user access
- No authentication or policy restriction were find, so the 'api/controller/controller-name.js' (as router.js definitions) will be load
- If some data should be taken from datastore, the loaded controller will perform it and wait for answers
- After loading and running that controller, backend will return a data or a rendered EJS page to the browser.

So, to find where to start maintenance effort:
- Do find the backend path requested
- Locate it into config/routes.js file
- Look for restrictions at config/policies.js file
- Open and edit related controller file (i.e. /api/controllers/view-faq.js file).
If your research tells you should maintain a view (or *.ejs) file:
- Look at controller file and try to locate the view used by controller (i.e. viewTemplatePath: 'pages/faq')
- Open /views/pages/[name].ejs files to find which component will be changed by you
- Open /assets/js/pages/[name].page.js files to find which Vue2 Framework data will also be changed by you
If your maintenance was at *.ejs or *.page.js files only, just reload the page at Browser.
If your maintenance was at *.js files, You have to restart all application to see them working.