gina 0.0.9-p91c → 0.1.1-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/INSTALL.md +46 -0
- package/{core/asset/html/static.html → Icon/r} +0 -0
- package/LICENSE +1 -1
- package/README-4Contributors.md +96 -0
- package/README.md +296 -104
- package/bin/cli +287 -0
- package/bin/cli-debug +60 -0
- package/bin/cmd +184 -0
- package/bin/gina +180 -0
- package/config/logger.json +17 -0
- package/doc/framework/cli/doc.json +9 -0
- package/doc/framework/index.md +60 -0
- package/framework/v0.1.1-alpha.3/AUTHORS +7 -0
- package/{core/utils/lib/inherits → framework/v0.1.1-alpha.3}/LICENSE +1 -1
- package/framework/v0.1.1-alpha.3/VERSION +1 -0
- package/{core/locales/dist/language/en.json → framework/v0.1.1-alpha.3/core/asset/html/nolayout.html} +0 -0
- package/{core/locales/dist/language/fr.json → framework/v0.1.1-alpha.3/core/asset/html/static.html} +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/asset/img/android-chrome-192x192.png +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/asset/img/android-chrome-512x512.png +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/asset/img/apple-touch-icon.png +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/asset/img/favicon-16x16.png +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/asset/img/favicon-32x32.png +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/asset/img/favicon.ico +0 -0
- package/framework/v0.1.1-alpha.3/core/asset/js/plugin/dist/gina.js +20904 -0
- package/framework/v0.1.1-alpha.3/core/asset/js/plugin/dist/gina.js.map +56 -0
- package/framework/v0.1.1-alpha.3/core/asset/js/plugin/dist/gina.min.css +1 -0
- package/framework/v0.1.1-alpha.3/core/asset/js/plugin/dist/gina.min.css.map +1 -0
- package/framework/v0.1.1-alpha.3/core/asset/js/plugin/dist/gina.min.js +736 -0
- package/framework/v0.1.1-alpha.3/core/asset/js/plugin/dist/gina.min.js.map +56 -0
- package/framework/v0.1.1-alpha.3/core/asset/js/plugin/dist/gina.onload.min.js +5 -0
- package/framework/v0.1.1-alpha.3/core/asset/js/plugin/dist/gina.onload.min.js.map +8 -0
- package/framework/v0.1.1-alpha.3/core/asset/js/plugin/readme.md +192 -0
- package/framework/v0.1.1-alpha.3/core/asset/js/plugin/uuid.json +23 -0
- package/framework/v0.1.1-alpha.3/core/config.js +2308 -0
- package/framework/v0.1.1-alpha.3/core/connectors/couchbase/index.js +757 -0
- package/framework/v0.1.1-alpha.3/core/connectors/couchbase/lib/connector.js +20 -0
- package/framework/v0.1.1-alpha.3/core/connectors/couchbase/lib/connector.v2.js +429 -0
- package/framework/v0.1.1-alpha.3/core/connectors/couchbase/lib/connector.v3.js +432 -0
- package/framework/v0.1.1-alpha.3/core/connectors/couchbase/lib/n1ql.js +14 -0
- package/framework/v0.1.1-alpha.3/core/connectors/couchbase/lib/session-store.js +21 -0
- package/framework/v0.1.1-alpha.3/core/connectors/couchbase/lib/session-store.v2.js +258 -0
- package/framework/v0.1.1-alpha.3/core/connectors/couchbase/lib/session-store.v3.js +341 -0
- package/{core → framework/v0.1.1-alpha.3/core}/controller/controller.framework.js +3 -2
- package/framework/v0.1.1-alpha.3/core/controller/controller.js +3990 -0
- package/{core → framework/v0.1.1-alpha.3/core}/controller/index.js +5 -5
- package/framework/v0.1.1-alpha.3/core/deps/busboy/.travis.yml +17 -0
- package/framework/v0.1.1-alpha.3/core/deps/busboy/LICENSE +19 -0
- package/framework/v0.1.1-alpha.3/core/deps/busboy/README.md +225 -0
- package/framework/v0.1.1-alpha.3/core/deps/busboy/deps/encoding/encoding-indexes.js +73 -0
- package/framework/v0.1.1-alpha.3/core/deps/busboy/deps/encoding/encoding.js +2391 -0
- package/framework/v0.1.1-alpha.3/core/deps/busboy/lib/main.js +89 -0
- package/framework/v0.1.1-alpha.3/core/deps/busboy/lib/types/multipart.js +328 -0
- package/framework/v0.1.1-alpha.3/core/deps/busboy/lib/types/urlencoded.js +214 -0
- package/framework/v0.1.1-alpha.3/core/deps/busboy/lib/utils.js +191 -0
- package/framework/v0.1.1-alpha.3/core/deps/busboy/package.json +69 -0
- package/framework/v0.1.1-alpha.3/core/deps/swig-client/swig-2.0.0.min.js +5 -0
- package/{core → framework/v0.1.1-alpha.3/core}/dev/index.js +5 -5
- package/{core → framework/v0.1.1-alpha.3/core}/dev/lib/class.js +1 -1
- package/{core → framework/v0.1.1-alpha.3/core}/dev/lib/factory.js +1 -1
- package/{core → framework/v0.1.1-alpha.3/core}/dev/lib/tools.js +0 -0
- package/framework/v0.1.1-alpha.3/core/gna.js +1070 -0
- package/{core → framework/v0.1.1-alpha.3/core}/locales/README.md +41 -2
- package/{core → framework/v0.1.1-alpha.3/core}/locales/currency.json +0 -0
- package/{core/plugins/README.md → framework/v0.1.1-alpha.3/core/locales/dist/language/en.json} +0 -0
- package/{core/plugins/lib/intl/README.md → framework/v0.1.1-alpha.3/core/locales/dist/language/fr.json} +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/locales/dist/region/en.json +0 -0
- package/framework/v0.1.1-alpha.3/core/locales/dist/region/fr.json +9492 -0
- package/{core → framework/v0.1.1-alpha.3/core}/locales/index.js +5 -4
- package/{core → framework/v0.1.1-alpha.3/core}/locales/src/make.js +15 -12
- package/{core → framework/v0.1.1-alpha.3/core}/locales/src/resources/currency.csv +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/locales/src/resources/region.csv +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/locales/src/resources/region.mapping.json +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/mime.types +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/model/entity.js +156 -196
- package/{core → framework/v0.1.1-alpha.3/core}/model/index.js +67 -48
- package/{core → framework/v0.1.1-alpha.3/core}/model/template/entityFactory.js +2 -2
- package/{core → framework/v0.1.1-alpha.3/core}/model/template/index.js +8 -10
- package/{core/plugins/lib/storage → framework/v0.1.1-alpha.3/core/plugins}/README.md +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/plugins/index.js +3 -3
- package/{core/plugins/lib/validator → framework/v0.1.1-alpha.3/core/plugins/lib/file}/README.md +0 -0
- package/{core/plugins/lib/intl → framework/v0.1.1-alpha.3/core/plugins/lib/file}/build.json +0 -0
- package/framework/v0.1.1-alpha.3/core/plugins/lib/file/package.json +25 -0
- package/{core/utils/lib/collection → framework/v0.1.1-alpha.3/core/plugins/lib/intl}/README.md +0 -0
- package/{core/plugins/lib/storage → framework/v0.1.1-alpha.3/core/plugins/lib/intl}/build.json +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/plugins/lib/intl/package.json +3 -3
- package/{core → framework/v0.1.1-alpha.3/core}/plugins/lib/intl/src/main.js +17 -1
- package/{core/utils/lib/routing → framework/v0.1.1-alpha.3/core/plugins/lib/storage}/README.md +0 -0
- package/{core/plugins/lib/validator → framework/v0.1.1-alpha.3/core/plugins/lib/storage}/build.json +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/plugins/lib/storage/package.json +2 -2
- package/{core → framework/v0.1.1-alpha.3/core}/plugins/lib/storage/src/main.js +91 -85
- package/{core/utils/lib/url → framework/v0.1.1-alpha.3/core/plugins/lib/validator}/README.md +0 -0
- package/{core/utils/lib/collection → framework/v0.1.1-alpha.3/core/plugins/lib/validator}/build.json +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/plugins/lib/validator/package.json +3 -3
- package/framework/v0.1.1-alpha.3/core/plugins/lib/validator/src/form-validator.js +1762 -0
- package/framework/v0.1.1-alpha.3/core/plugins/lib/validator/src/main.js +6917 -0
- package/framework/v0.1.1-alpha.3/core/router.js +664 -0
- package/framework/v0.1.1-alpha.3/core/server.express.js +213 -0
- package/framework/v0.1.1-alpha.3/core/server.isaac.js +386 -0
- package/framework/v0.1.1-alpha.3/core/server.js +3010 -0
- package/{core → framework/v0.1.1-alpha.3/core}/status.codes +8 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle/config/app.json +6 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle/config/routing.json +11 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle/config/settings.json +9 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle/config/settings.server.json +30 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle/config/templates.json +42 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle/controllers/controller.content.js +39 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle/controllers/controller.js +30 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle/controllers/setup.js +111 -0
- package/{core/template/samples → framework/v0.1.1-alpha.3/core/template/boilerplate}/bundle/index.js +0 -0
- package/{core/template/samples/bundle → framework/v0.1.1-alpha.3/core/template/boilerplate/bundle_namespace}/controllers/controller.js +9 -7
- package/{core/template/views → framework/v0.1.1-alpha.3/core/template/boilerplate/bundle_public}/css/default.css +0 -0
- package/{core/template/views → framework/v0.1.1-alpha.3/core/template/boilerplate/bundle_public}/css/vendor/readme.md +0 -0
- package/{core/template/views → framework/v0.1.1-alpha.3/core/template/boilerplate/bundle_public}/favicon.ico +0 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle_public/js/vendor/readme.md +1 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle_public/readme.md +1 -0
- package/framework/v0.1.1-alpha.3/core/template/boilerplate/bundle_templates/handlers/main.js +24 -0
- package/{core/template/views/html/default.html → framework/v0.1.1-alpha.3/core/template/boilerplate/bundle_templates/html/homepage.html} +0 -0
- package/{core/template/views/html/layout.html → framework/v0.1.1-alpha.3/core/template/boilerplate/bundle_templates/html/layout/main.html} +2 -2
- package/{core → framework/v0.1.1-alpha.3/core}/template/command/gina.bat.tpl +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/template/command/gina.tpl +1 -1
- package/framework/v0.1.1-alpha.3/core/template/conf/env.json +76 -0
- package/{core/template/conf/project.json → framework/v0.1.1-alpha.3/core/template/conf/manifest.json} +1 -0
- package/{core → framework/v0.1.1-alpha.3/core}/template/conf/package.json +2 -2
- package/framework/v0.1.1-alpha.3/core/template/conf/settings.json +92 -0
- package/framework/v0.1.1-alpha.3/core/template/conf/statics.json +10 -0
- package/framework/v0.1.1-alpha.3/core/template/conf/templates.json +37 -0
- package/{core → framework/v0.1.1-alpha.3/core}/template/error/client/json/401.json +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/template/error/client/json/403.json +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/template/error/client/json/404.json +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/template/error/server/html/50x.html +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/template/error/server/json/500.json +0 -0
- package/{core → framework/v0.1.1-alpha.3/core}/template/error/server/json/503.json +0 -0
- package/{core/utils/lib/routing/build.json → framework/v0.1.1-alpha.3/core/template/extensions/logger/config.json} +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/helpers/console.js +3 -3
- package/{core/utils → framework/v0.1.1-alpha.3}/helpers/context.js +240 -49
- package/framework/v0.1.1-alpha.3/helpers/dateFormat.js +528 -0
- package/framework/v0.1.1-alpha.3/helpers/index.js +79 -0
- package/framework/v0.1.1-alpha.3/helpers/json/README.md +0 -0
- package/framework/v0.1.1-alpha.3/helpers/json/package.json +20 -0
- package/framework/v0.1.1-alpha.3/helpers/json/src/main.js +97 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/helpers/path.js +342 -140
- package/framework/v0.1.1-alpha.3/helpers/plugins/README.md +4 -0
- package/framework/v0.1.1-alpha.3/helpers/plugins/package.json +20 -0
- package/framework/v0.1.1-alpha.3/helpers/plugins/src/api-error.js +160 -0
- package/framework/v0.1.1-alpha.3/helpers/plugins/src/main.js +32 -0
- package/framework/v0.1.1-alpha.3/helpers/prototypes.js +218 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/helpers/task.js +49 -29
- package/{core/utils → framework/v0.1.1-alpha.3}/helpers/text.js +7 -7
- package/framework/v0.1.1-alpha.3/lib/archiver/README.md +0 -0
- package/framework/v0.1.1-alpha.3/lib/archiver/build.json +0 -0
- package/framework/v0.1.1-alpha.3/lib/archiver/package.json +20 -0
- package/framework/v0.1.1-alpha.3/lib/archiver/src/dep/jszip.min.js +15 -0
- package/framework/v0.1.1-alpha.3/lib/archiver/src/main.js +499 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/aliases.json +13 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/add.js +507 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/arguments.json +4 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/copy.js +15 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/cp.js +2 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/help.js +28 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/help.txt +67 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/list.js +129 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/remove.js +229 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/rename.js +4 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/restart.js +235 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/rm.js +2 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/start.js +394 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/status.js +3 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/bundle/stop.js +232 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/add.js +436 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/get.js +62 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/help.js +28 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/help.txt +33 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/link-dev.js +80 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/list.js +111 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/remove.js +150 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/rm.js +2 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/set.js +57 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/unset.js +44 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/env/use.js +79 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/dot.js +70 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/get.js +0 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/help.js +39 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/help.txt +31 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/init.js +514 -0
- package/{core/utils/lib/cmd → framework/v0.1.1-alpha.3/lib/cmd/framework}/msg.json +3 -3
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/open.js +50 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/restart.js +124 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/set.js +161 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/start.js +96 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/status.js +72 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/stop.js +159 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/tail.js +183 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/update.js +0 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/framework/version.js +44 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/gina-dev.1.md +66 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/gina-framework.1.md +100 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/gina.1.md +79 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/helper.js +1147 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/index.js +170 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/msg.json +20 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/port/help.js +28 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/port/help.txt +31 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/port/inc/scan.js +108 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/port/list.js +176 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/port/set.js +0 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/add.js +528 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/arguments.json +9 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/build.js +115 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/help.js +28 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/help.txt +76 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/import.js +2 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/list.js +55 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/move.js +0 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/remove.js +144 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/rename.js +162 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/restart.js +0 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/rm.js +2 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/start.js +0 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/status.js +3 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/project/stop.js +0 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/protocol/help.js +27 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/protocol/help.txt +57 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/protocol/list.js +239 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/protocol/set.js +631 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/scope/help.js +28 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/scope/help.txt +33 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/scope/link-local.js +80 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/scope/list.js +116 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/scope/remove.js +150 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/scope/rm.js +2 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/scope/set.js +57 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/scope/unset.js +44 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/scope/use.js +79 -0
- package/framework/v0.1.1-alpha.3/lib/cmd/view/add.js +311 -0
- package/framework/v0.1.1-alpha.3/lib/collection/README.md +5 -0
- package/framework/v0.1.1-alpha.3/lib/collection/build.json +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/collection/package.json +2 -2
- package/framework/v0.1.1-alpha.3/lib/collection/src/main.js +1459 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/config.js +49 -34
- package/framework/v0.1.1-alpha.3/lib/cron/README.md +7 -0
- package/framework/v0.1.1-alpha.3/lib/cron/package.json +20 -0
- package/framework/v0.1.1-alpha.3/lib/cron/src/main.js +176 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/generator/index.js +8 -4
- package/framework/v0.1.1-alpha.3/lib/index.js +116 -0
- package/framework/v0.1.1-alpha.3/lib/inherits/LICENSE +19 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/inherits/README.md +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/inherits/example/inheriting_eventemitter.js +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/inherits/example/protected_inheritance.js +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/inherits/example/simple_inheritance.js +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/inherits/package.json +2 -2
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/inherits/src/main.js +18 -19
- package/framework/v0.1.1-alpha.3/lib/logger/README.md +7 -0
- package/framework/v0.1.1-alpha.3/lib/logger/package.json +20 -0
- package/framework/v0.1.1-alpha.3/lib/logger/src/containers/default/index.js +55 -0
- package/framework/v0.1.1-alpha.3/lib/logger/src/containers/file/index.js +251 -0
- package/framework/v0.1.1-alpha.3/lib/logger/src/containers/file/lib/logrotator/README.md +100 -0
- package/framework/v0.1.1-alpha.3/lib/logger/src/containers/file/lib/logrotator/index.js +274 -0
- package/framework/v0.1.1-alpha.3/lib/logger/src/containers/mq/index.js +52 -0
- package/framework/v0.1.1-alpha.3/lib/logger/src/containers/mq/listener.js +302 -0
- package/framework/v0.1.1-alpha.3/lib/logger/src/containers/mq/speaker.js +118 -0
- package/framework/v0.1.1-alpha.3/lib/logger/src/helper.js +131 -0
- package/framework/v0.1.1-alpha.3/lib/logger/src/main.js +739 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/math/index.js +58 -35
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/merge/README.md +5 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/merge/example/merge.js +1 -1
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/merge/example/merge_2_literal objects.js +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/merge/example/merge_and_preserve_first.js +2 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/merge/package.json +2 -2
- package/framework/v0.1.1-alpha.3/lib/merge/src/main.js +531 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/model.js +42 -19
- package/framework/v0.1.1-alpha.3/lib/proc.js +518 -0
- package/framework/v0.1.1-alpha.3/lib/routing/README.md +0 -0
- package/framework/v0.1.1-alpha.3/lib/routing/build.json +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/routing/package.json +2 -2
- package/framework/v0.1.1-alpha.3/lib/routing/src/main.js +1492 -0
- package/framework/v0.1.1-alpha.3/lib/session-store.js +33 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/shell.js +43 -30
- package/framework/v0.1.1-alpha.3/lib/swig-filters/README.md +0 -0
- package/framework/v0.1.1-alpha.3/lib/swig-filters/package.json +20 -0
- package/framework/v0.1.1-alpha.3/lib/swig-filters/src/main.js +322 -0
- package/framework/v0.1.1-alpha.3/lib/url/README.md +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/url/index.js +2 -1
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/url/mocks.json +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/url/routing.json +9 -9
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/url/test.js +0 -0
- package/{core/utils → framework/v0.1.1-alpha.3}/lib/validator.js +7 -7
- package/framework/v0.1.1-alpha.3/package.json +14 -0
- package/package.json +35 -33
- package/resources/etc/init.d/debian/gina +117 -0
- package/resources/home/framework/env.json +34 -0
- package/resources/home/framework/locals.json +14 -0
- package/resources/home/framework/project.json +48 -0
- package/resources/home/framework/projects.json +6 -0
- package/resources/home/main.json +47 -0
- package/resources/home/settings.json +22 -0
- package/resources/home/user/extensions/logger/default/config.json +77 -0
- package/resources/home/user/extensions/logger/file/config.json +11 -0
- package/resources/img/android-chrome-192x192.png +0 -0
- package/resources/img/android-chrome-512x512.png +0 -0
- package/resources/img/apple-touch-icon.png +0 -0
- package/resources/img/favicon-16x16.png +0 -0
- package/resources/img/favicon-32x32.png +0 -0
- package/resources/img/favicon.ico +0 -0
- package/resources/package.json.template +50 -0
- package/script/lib.js +24 -0
- package/script/post_install.js +449 -157
- package/script/pre_install.js +277 -36
- package/script/prepare_version.js +425 -0
- package/utils/helper.js +438 -0
- package/utils/prototypes.js +239 -0
- package/utils/prototypes.json_clone.js +175 -0
- package/.npmignore +0 -6
- package/MIDDLEWARE +0 -1
- package/SUCCESS +0 -1
- package/VERSION +0 -1
- package/core/asset/html/nolayout.html +0 -1
- package/core/asset/js/plugin/build.dev.json +0 -28
- package/core/asset/js/plugin/build.json +0 -31
- package/core/asset/js/plugin/dist/gina.min.css +0 -1
- package/core/asset/js/plugin/dist/gina.min.css.map +0 -1
- package/core/asset/js/plugin/dist/gina.min.js +0 -13732
- package/core/asset/js/plugin/dist/gina.min.js.map +0 -42
- package/core/asset/js/plugin/dist/gina.onload.min.js +0 -3
- package/core/asset/js/plugin/dist/gina.onload.min.js.map +0 -8
- package/core/asset/js/plugin/readme.md +0 -152
- package/core/asset/js/plugin/src/gina/main.js +0 -132
- package/core/asset/js/plugin/src/gina/popin/css/design.css +0 -23
- package/core/asset/js/plugin/src/gina/popin/css/main.css +0 -1112
- package/core/asset/js/plugin/src/gina/popin/css/popin.css +0 -3
- package/core/asset/js/plugin/src/gina/popin/css/popin.css.map +0 -1
- package/core/asset/js/plugin/src/gina/popin/doc/TOC.md +0 -29
- package/core/asset/js/plugin/src/gina/popin/doc/css.md +0 -162
- package/core/asset/js/plugin/src/gina/popin/doc/extend.md +0 -663
- package/core/asset/js/plugin/src/gina/popin/doc/faq.md +0 -46
- package/core/asset/js/plugin/src/gina/popin/doc/html.md +0 -227
- package/core/asset/js/plugin/src/gina/popin/doc/js.md +0 -37
- package/core/asset/js/plugin/src/gina/popin/doc/misc.md +0 -178
- package/core/asset/js/plugin/src/gina/popin/doc/usage.md +0 -130
- package/core/asset/js/plugin/src/gina/popin/main.js +0 -783
- package/core/asset/js/plugin/src/gina/popin/sass/config.sass +0 -37
- package/core/asset/js/plugin/src/gina/popin/sass/gina-design.sass +0 -622
- package/core/asset/js/plugin/src/gina/popin/sass/gina-popin.sass +0 -54
- package/core/asset/js/plugin/src/gina/popin/sass/helper.scss +0 -73
- package/core/asset/js/plugin/src/gina/toolbar/.npmignore +0 -19
- package/core/asset/js/plugin/src/gina/toolbar/css/toolbar.css +0 -433
- package/core/asset/js/plugin/src/gina/toolbar/css/toolbar.css.map +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/index.html +0 -285
- package/core/asset/js/plugin/src/gina/toolbar/index.kit +0 -120
- package/core/asset/js/plugin/src/gina/toolbar/jquery-3.1.0.min.js +0 -4
- package/core/asset/js/plugin/src/gina/toolbar/main.js +0 -693
- package/core/asset/js/plugin/src/gina/toolbar/mock.gina.json +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/mock.user.json +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/readme.md +0 -7
- package/core/asset/js/plugin/src/gina/toolbar/sass/toolbar.sass +0 -563
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/Info-color.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/Info-grey.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/error-color.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/error-grey.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/info-optim.svg +0 -13
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/logo-gina.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/settings-big.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/settings.afdesign +0 -0
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/settings.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/stripe-calendar-optim.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/stripe-calendar.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/stripe-card-optim.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/stripe-card.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/stripe-lock-optim.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/stripe-lock.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/warning-color.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/svg-src/warning-grey.svg +0 -1
- package/core/asset/js/plugin/src/gina/toolbar/test.jpg +0 -0
- package/core/asset/js/plugin/src/gina/toolbar/toolbar.html +0 -104
- package/core/asset/js/plugin/src/gina/utils/dom.js +0 -24
- package/core/asset/js/plugin/src/gina/utils/events.js +0 -201
- package/core/asset/js/plugin/src/gina/utils/loader.js +0 -57
- package/core/asset/js/plugin/src/main.js +0 -235
- package/core/asset/js/plugin/src/vendor/jquery/1.11.1-css-event_alias.min.js +0 -5
- package/core/asset/js/plugin/src/vendor/jquery/1.12.4.min.js +0 -5
- package/core/asset/js/plugin/src/vendor/jquery/2.1.1-css-event_alias-sizzle.min.js +0 -4
- package/core/asset/js/plugin/src/vendor/jquery/README.md +0 -14
- package/core/asset/js/plugin/src/vendor/jquery/slim-3.1.1.min.js +0 -4
- package/core/config.js +0 -1225
- package/core/controller/controller.js +0 -1860
- package/core/gna.js +0 -908
- package/core/plugins/lib/validator/src/form-validator.js +0 -789
- package/core/plugins/lib/validator/src/main.js +0 -2056
- package/core/router.js +0 -717
- package/core/server.js +0 -1363
- package/core/template/conf/env.json +0 -70
- package/core/template/conf/settings.json +0 -48
- package/core/template/conf/statics.json +0 -6
- package/core/template/conf/views.json +0 -16
- package/core/template/samples/bundle/config/app.json +0 -4
- package/core/template/samples/bundle/config/routing.json +0 -9
- package/core/template/samples/bundle/controllers/setup.js +0 -33
- package/core/template/views/js/vendor/readme.md +0 -1
- package/core/template/views/readme.md +0 -1
- package/core/utils/helpers/dateFormat.js +0 -264
- package/core/utils/helpers/index.js +0 -202
- package/core/utils/index.js +0 -75
- package/core/utils/lib/cmd/app.js +0 -686
- package/core/utils/lib/cmd/basic.help.txt +0 -40
- package/core/utils/lib/cmd/basic.js +0 -141
- package/core/utils/lib/cmd/gina-add-bundle.js +0 -328
- package/core/utils/lib/cmd/gina-add-views.js +0 -99
- package/core/utils/lib/cmd/gina-build.js +0 -218
- package/core/utils/lib/cmd/gina-clean.js +0 -26
- package/core/utils/lib/cmd/gina-connect.js +0 -176
- package/core/utils/lib/cmd/gina-delete-bundle.js +0 -176
- package/core/utils/lib/cmd/gina-deploy.js +0 -452
- package/core/utils/lib/cmd/gina-init-project.js +0 -83
- package/core/utils/lib/cmd/gina-start-bundle.js +0 -3
- package/core/utils/lib/cmd/gina-start.js +0 -3
- package/core/utils/lib/cmd/index.js +0 -157
- package/core/utils/lib/cmd/project.js +0 -14
- package/core/utils/lib/collection/src/main.js +0 -650
- package/core/utils/lib/logger/containers/file.js +0 -11
- package/core/utils/lib/logger/index.js +0 -260
- package/core/utils/lib/merge/src/main.js +0 -344
- package/core/utils/lib/proc.js +0 -416
- package/core/utils/lib/routing/src/main.js +0 -165
- package/documentation/css/default.css +0 -3
- package/documentation/html/home.html +0 -6
- package/documentation/html/inc/_footer.html +0 -5
- package/documentation/html/layout.html +0 -21
- package/documentation/img/debug-conf1.png +0 -0
- package/documentation/img/debug-conf2.png +0 -0
- package/documentation/img/debug-conf3.png +0 -0
- package/documentation/img/debug-conf4.png +0 -0
- package/documentation/img/debug-conf5.png +0 -0
- package/documentation/img/debug-conf6.png +0 -0
- package/documentation/img/debug-conf7.png +0 -0
- package/documentation/img/debug-new1.png +0 -0
- package/documentation/img/debug-new2.png +0 -0
- package/documentation/img/debug-start.png +0 -0
- package/documentation/md/api/controller/main.md +0 -74
- package/migration_note.md +0 -7
- package/package-lock.json +0 -611
- package/script/pre_publish.js +0 -207
- package/tutorial/Commands/README.md +0 -56
- package/tutorial/Commands/add-bundle-result.png +0 -0
- package/tutorial/Commands/add-bundle.png +0 -0
- package/tutorial/Commands/delete-bundle.png +0 -0
- package/tutorial/Commands/help.png +0 -0
- package/tutorial/Commands/init-project.png +0 -0
- package/tutorial/Commands/start-bundle-result.png +0 -0
- package/tutorial/Commands/start-bundle-stop.png +0 -0
- package/tutorial/Commands/start-bundle.png +0 -0
- package/tutorial/Commands/version.png +0 -0
- package/tutorial/ETC/README.md +0 -74
- package/tutorial/ETC/add-bundle-result.png +0 -0
- package/tutorial/ETC/add-bundle.png +0 -0
- package/tutorial/ETC/init-project.png +0 -0
- package/tutorial/Install/README.md +0 -54
- package/tutorial/Install/git-get.png +0 -0
- package/tutorial/Install/git-install-end.png +0 -0
- package/tutorial/Install/git-install-result.png +0 -0
- package/tutorial/Install/git-install-start.png +0 -0
- package/tutorial/Install/install-end.png +0 -0
- package/tutorial/Install/install-result.png +0 -0
- package/tutorial/Install/install-start.png +0 -0
- package/tutorial/WebStorm/README.md +0 -30
- package/tutorial/WebStorm/closure-compiler.png +0 -0
- package/tutorial/WebStorm/sass.png +0 -0
package/INSTALL.md
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# INSTALL
|
|
2
|
+
|
|
3
|
+
## Manual installation
|
|
4
|
+
Link globally gina to your user local env
|
|
5
|
+
```tty
|
|
6
|
+
cd /usr/local/bin
|
|
7
|
+
```
|
|
8
|
+
```tty
|
|
9
|
+
ln -s ../lib/node_modules/gina/bin/cli ./gina
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
Copy the `.gina` sample folder to you home directory
|
|
13
|
+
|
|
14
|
+
## Setup permissions
|
|
15
|
+
|
|
16
|
+
In order to run Gina properly with no re
|
|
17
|
+
|
|
18
|
+
Skip this step if you are running gina from `root` or through `sudo`
|
|
19
|
+
Create `/var/run/gina` (pid folder) and allow access to your user :
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
> **Attention:** this step must be repeated everytime the machine is restarted because `/var/run` folder will be cleanned up
|
|
23
|
+
|
|
24
|
+
e.g.:
|
|
25
|
+
```tty
|
|
26
|
+
sudo mkdir /var/run/gina
|
|
27
|
+
```
|
|
28
|
+
```tty
|
|
29
|
+
sudo chown -R myuser:mygroup /var/run/gina
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Then run the following command line to start the framework service
|
|
33
|
+
|
|
34
|
+
```tty
|
|
35
|
+
gina framework:start
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
hit `ctrl+c` to end the process
|
|
39
|
+
```tty
|
|
40
|
+
sudo chown <youruser>:<yourgroup> /var/run/gina
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Now you can start the service with your usual user
|
|
44
|
+
```tty
|
|
45
|
+
gina framework:start
|
|
46
|
+
```
|
|
File without changes
|
package/LICENSE
CHANGED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# The contributor's guide
|
|
2
|
+
> This is a document is a work in progress.
|
|
3
|
+
> If you would like to contribute, you can contact us at `contact@gina.io`
|
|
4
|
+
|
|
5
|
+
### Installing Gina
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You __cannot__ just install the framework with the `NPM` CLI. You will need to fetch/fork sources from the [github page](https://github.com/Rhinostone/gina) since all files are not published to `NPM`.
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
| Requirements | Description
|
|
13
|
+
|--------|--------|
|
|
14
|
+
| OS | Mac OS X or Linux |
|
|
15
|
+
| Node js | Node js v16.x or later |
|
|
16
|
+
| NPM | v8.x or later |
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
__NB.:__ Gina is meant to be install globaly
|
|
21
|
+
> [A Note on Permissions](http://npm.github.io/installation-setup-docs/installing/a-note-on-permissions.html)
|
|
22
|
+
> [Alternatives to installing npm packages globally](https://2ality.com/2022/06/global-npm-install-alternatives.html)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
#### Check your prefix
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
```tty
|
|
30
|
+
npm config get prefix
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
> Default `prefix` should be:
|
|
34
|
+
> For libraries `/usr/local`
|
|
35
|
+
|
|
36
|
+
Targeted folder should be: `{prefix}/lib/node_modules/gina`
|
|
37
|
+
Make sure you have the appropriate permissions to write.
|
|
38
|
+
|
|
39
|
+
#### Clone gina
|
|
40
|
+
|
|
41
|
+
Then go to `{prefix}/lib/node_modules` in order to clone the project
|
|
42
|
+
```tty
|
|
43
|
+
cd {prefix}/lib/node_modules
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
```tty
|
|
47
|
+
git clone https://github.com/Rhinostone/gina.git gina
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
```tty
|
|
51
|
+
cd gina && git checkout develop
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
#### Complete installation
|
|
55
|
+
|
|
56
|
+
Run the `pre installation script` in order to setup permissions
|
|
57
|
+
```tty
|
|
58
|
+
node ./script/pre_install.js
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Then run the `post installation script`
|
|
62
|
+
```tty
|
|
63
|
+
node ./script/post_install.js
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Check if everything is working fine
|
|
67
|
+
```tty
|
|
68
|
+
gina version
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
```tty
|
|
72
|
+
gina start
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
#### Setting the framework default environment
|
|
76
|
+
|
|
77
|
+
> By default, Gina comes with 2 environments : `dev` and `prod`. The default is `prod`. But if you are contributing to the framework we advise you you to use the `dev` environment: you will get a lot of debug messages, but it is easier to track what is being done in background.
|
|
78
|
+
|
|
79
|
+
__Changing default env__
|
|
80
|
+
By default, Gina is installed with `dev` environment which allow you to display the toolbar.
|
|
81
|
+
If you need to change this:
|
|
82
|
+
```tty
|
|
83
|
+
gina framework:set --env=prod
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
This only means that if you omit the env in the command line while trying to start the framework, it will automatically add `--env=prod` for you.
|
|
87
|
+
|
|
88
|
+
> __NB:__ Unlike for the projects `envs`, the framework env list cannot be changed; it is `dev` or `prod`.
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
### Publishing
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
### Troubleshooting
|
|
96
|
+
---
|
package/README.md
CHANGED
|
@@ -1,82 +1,88 @@
|
|
|
1
|
-
Gina
|
|
1
|
+
# Gina
|
|
2
|
+
[](https://badge.fury.io/gh/Rhinostone%2Fgina) [](https://badge.fury.io/js/gina)
|
|
2
3
|
|
|
3
|
-
>
|
|
4
|
-
>
|
|
5
|
-
> Essential features are available at this moment, but most of the things we don't have yet can be replaced by some alternatives written in other languages like: Ruby, PHP, .net, Python or C++. You are free to use such alternatives until we implement similar features.
|
|
4
|
+
<strong>Gina I/O</strong> - Node.js MVC and Event Driven framework
|
|
6
5
|
|
|
6
|
+
> This is a `preview release`. We are looking for people to help us test and improve `Windows` support.
|
|
7
|
+
> Meanwhile, __Windows users__ can use Docker or an alternative to run Gina and their projects.
|
|
8
|
+
>
|
|
9
|
+
> Some commands or features might not work since the framework is still under development & testing
|
|
10
|
+
>
|
|
11
|
+
> We have some applications using the framework in production and we are improving our code in order to release the `1.0.0` version: which should come by the end of 2022. Thank you for your patience.
|
|
7
12
|
|
|
13
|
+
## Philosophy behind
|
|
8
14
|
|
|
9
|
-
|
|
15
|
+
Gina was designed to be accessible, flexible, scalable and maintainable. Our main purpose was to allow developers to create easier and faster web applications.
|
|
10
16
|
|
|
11
|
-
|
|
12
|
-
- `v8.x.x`,
|
|
13
|
-
- `v7.x.x`,
|
|
14
|
-
- `v6.x.x` (Between Node.js 5.x and 6.3, NPM is broken, use manual installation: by cloning),
|
|
15
|
-
- `v5.x.x` (Between Node.js 5.x and 6.3, NPM is broken, use manual installation: by cloning),
|
|
16
|
-
- `v4.x.x`,
|
|
17
|
-
- `v0.12.x`,
|
|
18
|
-
- `v0.11.x`,
|
|
19
|
-
- `v0.10.x`
|
|
17
|
+
Gina comes with essential features at this moment, but most of the things we don't have yet can be replaced by some alternatives written in other languages like: Ruby, PHP, .net, Python or C++. You are free to use such alternatives until we implement similar features.
|
|
20
18
|
|
|
19
|
+
Note that Gina does not rely on Connect or ExpressJS, still, you can use all plugins or middlewares designed for those frameworks ;-)
|
|
21
20
|
|
|
22
21
|
## Getting started with Gina I/O
|
|
23
22
|
|
|
24
|
-
###
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
### Installing Gina
|
|
24
|
+
Gina aims to be at the same time a framework, a deployment and monitoring environment for your projects. So, to fully enjoy Gina, we recommend that you install it with the `-g` option.
|
|
25
|
+
> For Microsoft Windows, you might have to run the command line with Administrator privileges.
|
|
27
26
|
|
|
28
|
-
```
|
|
29
|
-
|
|
27
|
+
``` tty
|
|
28
|
+
npm install -g gina@latest
|
|
30
29
|
```
|
|
31
30
|
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
You can check if Gina is properly installed
|
|
32
|
+
``` tty
|
|
33
|
+
gina version
|
|
34
34
|
```
|
|
35
|
+
__NB.:__ This is a shortcut for `gina framework:version`
|
|
35
36
|
|
|
36
|
-
You can now install the framework using npm:
|
|
37
37
|
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
### Starting the framework
|
|
39
|
+
Gina is at the same time a framework and a server.
|
|
40
|
+
By starting the framework, you will also start the server.
|
|
41
|
+
|
|
42
|
+
``` tty
|
|
43
|
+
gina start
|
|
40
44
|
```
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
45
|
+
__NB.:__ This is an alias for `gina framework:start`
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
### Initializing a project
|
|
49
|
+
A project is a collection of bundles (applicaitons or services). See it as a representation of your domain.
|
|
50
|
+
|
|
51
|
+
Let's create our first project and install Gina.
|
|
52
|
+
|
|
53
|
+
``` tty
|
|
54
|
+
mkdir myproject && cd myproject
|
|
47
55
|
```
|
|
48
56
|
|
|
57
|
+
|
|
49
58
|
Then you need to __initialize your project__
|
|
50
59
|
|
|
51
|
-
> On
|
|
60
|
+
> On Windows from the Windows CLI, you might need admin privileges.
|
|
52
61
|
|
|
53
62
|
``` tty
|
|
54
|
-
|
|
63
|
+
gina project:add @myproject
|
|
55
64
|
```
|
|
56
65
|
|
|
57
|
-
|
|
58
|
-
|
|
66
|
+
If you need to remove this project later
|
|
59
67
|
``` tty
|
|
60
|
-
|
|
68
|
+
gina project:rm @myproject
|
|
61
69
|
```
|
|
62
70
|
|
|
71
|
+
### Creating a bundle (application or service)
|
|
63
72
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
### Creating a bundle (application)
|
|
67
|
-
|
|
68
|
-
A project is a set of bundles. Gina lets you create all kind of bundles :
|
|
69
|
-
* api & webservices
|
|
73
|
+
A project is a set of bundles. Gina lets you create all kinds of bundles :
|
|
74
|
+
* API & web services
|
|
70
75
|
* frontend & backend applications
|
|
71
76
|
* command lines
|
|
72
77
|
|
|
73
|
-
Note that the default bundle type is
|
|
78
|
+
Note that the default bundle type is API.
|
|
74
79
|
|
|
75
80
|
Ok ! Let's do it !
|
|
76
81
|
|
|
77
82
|
``` tty
|
|
78
|
-
|
|
83
|
+
gina bundle:add frontend @myproject
|
|
79
84
|
```
|
|
85
|
+
__NB.:__ If you are launching the command from the project directory, you don't need `@myproject`. The same goes for all bundles commands.
|
|
80
86
|
|
|
81
87
|
We have just created a frontend application that will host our homepage.
|
|
82
88
|
You will find all bundle sources under `myproject/src`.
|
|
@@ -84,62 +90,262 @@ You will find all bundle sources under `myproject/src`.
|
|
|
84
90
|
You can start the bundle with the following command:
|
|
85
91
|
|
|
86
92
|
```tty
|
|
87
|
-
|
|
93
|
+
gina bundle:start frontend @myproject
|
|
88
94
|
```
|
|
89
|
-
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
Now, visit http://127.0.0.1:3100/ to check your homepage.
|
|
90
98
|
Isn't it sexy !?
|
|
91
99
|
|
|
92
|
-
If you need to stop
|
|
100
|
+
If you need to stop your bundle
|
|
101
|
+
```tty
|
|
102
|
+
gina bundle:stop frontend @myproject
|
|
103
|
+
```
|
|
93
104
|
|
|
105
|
+
If you need to restart you bundle
|
|
106
|
+
```tty
|
|
107
|
+
gina bundle:restart frontend @myproject
|
|
108
|
+
```
|
|
94
109
|
|
|
95
|
-
### Adding
|
|
110
|
+
### Adding templates
|
|
96
111
|
|
|
97
|
-
The default bundle renders a
|
|
112
|
+
The default bundle renders a JSON representation of a "Hello World" message.
|
|
98
113
|
|
|
99
|
-
Let's add
|
|
114
|
+
Let's add a view on our frontend
|
|
100
115
|
|
|
101
116
|
```tty
|
|
102
|
-
|
|
117
|
+
gina view:add frontend @myproject
|
|
118
|
+
```
|
|
119
|
+
Then restart your bundle
|
|
120
|
+
```tty
|
|
121
|
+
gina bundle:restart frontend @myproject
|
|
103
122
|
```
|
|
104
|
-
|
|
123
|
+
|
|
124
|
+
Now edit the `home` control in `src/frontend/controllers/controller.js` so that you can have `self.render(...)` instead of `self.renderJSON(...)`
|
|
105
125
|
|
|
106
126
|
Once it's done, you just need to refresh your browser.
|
|
107
127
|
|
|
108
|
-
Gina is shipped with [Swig](
|
|
128
|
+
Gina is shipped with [Swig](https://node-swig.github.io/swig-templates/) as the default template engine. If you are more comfortable with another template engine, you can use your own.
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
### Setting your default environment
|
|
133
|
+
|
|
134
|
+
Please, note that you have 2 types of environments : one for the framework, and one for your project & your bundles.
|
|
135
|
+
|
|
136
|
+
> By default, Gina (the framework) comes with 2 environments : `dev` and `prod`. The default is `prod`. if you are [contributing](./README-4Contributors.md) to the framework or prototyping your application or service, we advise using the `dev` environment.
|
|
137
|
+
> ```tty
|
|
138
|
+
> gina framework:set --env=dev
|
|
139
|
+
> ```
|
|
140
|
+
|
|
141
|
+
You can check which are the environments set for your projects
|
|
142
|
+
```tty
|
|
143
|
+
gina env:list
|
|
144
|
+
```
|
|
145
|
+
__or for a particular project__
|
|
146
|
+
```tty
|
|
147
|
+
gina env:list @myproject
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
__NB.:__ when adding an environement, you will do so for the entire project.
|
|
151
|
+
|
|
152
|
+
#### Setting your application starting environment on runtime
|
|
153
|
+
> This method does not memorize the selected environment as the default one for your application
|
|
154
|
+
|
|
155
|
+
You can have multiple environments for your project and decide to pick one as the starting env by using `--env=your_env` every time you have to run a bundle.
|
|
156
|
+
|
|
157
|
+
```tty
|
|
158
|
+
gina bundle:start frontend @myproject --env=prod
|
|
159
|
+
```
|
|
160
|
+
__NB.:__ Omitting `--env=<env>` will fallback to your project default environment.
|
|
109
161
|
|
|
110
|
-
|
|
162
|
+
#### Setting your project or your application default environment
|
|
111
163
|
|
|
112
|
-
|
|
164
|
+
For the entire project & for all bundles inside by default
|
|
165
|
+
```tty
|
|
166
|
+
gina env:use prod @myproject
|
|
167
|
+
```
|
|
168
|
+
__NB.:__ If you need to change it for a particular bundle, you still can do it at runtime using `--env=<your env>` to override the default settings. This will not set `<your env>`as the default environment for the whole project.
|
|
113
169
|
|
|
114
|
-
1. Open your project
|
|
115
|
-

|
|
116
|
-

|
|
117
|
-
2. Click to the `Debug` tab
|
|
118
|
-

|
|
119
|
-
3. Open your configuration file and select `Node.js`
|
|
120
|
-

|
|
121
|
-

|
|
122
|
-
4. Select `Attach` and clean your configuration
|
|
123
|
-

|
|
124
|
-

|
|
125
|
-
5. Change the __port number__ to match the one you will be listening from Gina (e.g.: `5959`)
|
|
126
|
-

|
|
127
170
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
```tty
|
|
131
|
-
|
|
171
|
+
#### Other operations you can apply to your environment:
|
|
172
|
+
__Adding a new environment for your project__
|
|
173
|
+
```tty
|
|
174
|
+
gina env:add staging @myproject
|
|
132
175
|
```
|
|
133
|
-
|
|
134
|
-
```tty
|
|
135
|
-
|
|
176
|
+
__Removing an existing environment for your project__
|
|
177
|
+
```tty
|
|
178
|
+
gina env:rm staging @myproject
|
|
136
179
|
```
|
|
137
|
-
> Gina will be waiting for you to launch the remote debugger.
|
|
138
180
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
181
|
+
__Defining an existing environment as `development` (you can only have one like this)__
|
|
182
|
+
```tty
|
|
183
|
+
gina env:link-dev <your new dev env>
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
### Getting the logs
|
|
187
|
+
You will also get logs related to your running bundles.
|
|
188
|
+
``` tty
|
|
189
|
+
gina tail
|
|
190
|
+
```
|
|
191
|
+
__NB.:__ This is an alias for `gina framework:tail`
|
|
192
|
+
|
|
193
|
+
By default, Gina does not store logs. Logs are treated like any other events then printed out to the `process.stdout`.
|
|
194
|
+
|
|
195
|
+
This means that if you need Gina to handle logs storage, you need a logger container (or transport) to receive and output your logs.
|
|
196
|
+
|
|
197
|
+
Note that this is optional since logs are output like for other frameworks: you can catch those while writing your daemon starting script on you production server.
|
|
198
|
+
|
|
199
|
+
So to handle log storage for your application, you have 2 options.
|
|
200
|
+
__1) Old school way__
|
|
201
|
+
```tty
|
|
202
|
+
gina bundle:start frontend @myproject > /usr/local/var/log/gina/frontend.myproject.domain.log 2>&1
|
|
203
|
+
```
|
|
204
|
+
You can now check
|
|
205
|
+
```tty
|
|
206
|
+
tail - f /usr/local/var/log/gina/frontend.myproject.domain.log
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
__2) Create your own container/transport by extending gina default container__
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
If you still want gina to handle logs storage, you are lucky, we have developped a file container/transport that you just need to enable.
|
|
213
|
+
|
|
214
|
+
> This feature is still experimental.
|
|
215
|
+
|
|
216
|
+
You can edit `~/.gina/user/extensions/logger/default/config.json` to add `"file"` container to the `flows`.
|
|
217
|
+
|
|
218
|
+
You might need to restart the gina :
|
|
219
|
+
|
|
220
|
+
```tty
|
|
221
|
+
gina restart
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
__NB.: __For development purposes, using the CLI `gina tail` is still a better option because you will have a better overview of what is really going on for all your application at once & for the framework.
|
|
225
|
+
|
|
226
|
+
## HTTPS, HTTP/2 and certificates
|
|
227
|
+
|
|
228
|
+
### Installing a certificate
|
|
229
|
+
You now want to install a certificate for your project in order to run your project with HTTPS scheme or with HTTP/2 protocol ?
|
|
230
|
+
At this moment, Gina does not generate a cetificate for you, but you can use a service like [sslforfree](https://www.sslforfree.com) to genreate a free 90 days certificate, then install it into your Gina home directory depending on the scope of your host (targeted machine: local or production).
|
|
231
|
+
[SSL For Free](https://www.sslforfree.com) will provide you with a folder named with the domain you have used to setup your certificate. You just need to paste its content into the right location.
|
|
232
|
+
|
|
233
|
+
The directory should be located @`~/.gina/certificates/scopes`.
|
|
234
|
+
By default, `local` scope is set. But when you will go live, you should set the scope to production and paste your certificate into the right folder.
|
|
235
|
+
__E.g:__ The `myproject.domain` folder should be placed into:
|
|
236
|
+
- `~/.gina/certificates/scopes/local` for your dev host
|
|
237
|
+
- `~/.gina/certificates/scopes/production` for you production host
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
### Enable HTTPS scheme
|
|
241
|
+
> __NB.:__ `certificate` is `required`.
|
|
242
|
+
> By enabling HTTPS, you will do so for your entire poroject by default, but you can later set one per application.
|
|
243
|
+
> And if you want to run your experimental HTTP2 implementation, you will need HTTS scheme.
|
|
244
|
+
|
|
245
|
+
Check what is your actual scheme & protocol status
|
|
246
|
+
```tty
|
|
247
|
+
gina protocol:list @myproject
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
Setup HTTPS for the whole project
|
|
251
|
+
```tty
|
|
252
|
+
gina protocol:set @myproject
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
Setup HTTPS for a specific application
|
|
256
|
+
```tty
|
|
257
|
+
gina protocol:set frontend @myproject
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
Now, you just need to restart your bundle. You should tail your logs in order to get more details if an error is preventing you from starting.
|
|
261
|
+
|
|
262
|
+
```tty
|
|
263
|
+
gina tail
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
Open another terminal window
|
|
267
|
+
```tty
|
|
268
|
+
gina bundle:restart frontend @myproject
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
Depending on how you have managed to get your certificate for you dev environment, you might get this kind of mesaage preventing your application to start :
|
|
273
|
+
|
|
274
|
+
```tty
|
|
275
|
+
Error: unable to get issuer certificate
|
|
276
|
+
at TLSSocket.onConnectSecure (node:_tls_wrap:1530:34)
|
|
277
|
+
at TLSSocket.emit (node:events:390:28)
|
|
278
|
+
at TLSSocket._finishInit (node:_tls_wrap:944:8)
|
|
279
|
+
at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:725:12)
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
Do not panic, and follow the steps provided in the following section.
|
|
283
|
+
|
|
284
|
+
### Local scope & certificate consideration
|
|
285
|
+
Ignore the following instructions if you can start your application without any certificate errors.
|
|
286
|
+
|
|
287
|
+
This is `important` and you will have to take additional steps to make your certificate fully valid __while developping on your `local/dev host`__.
|
|
288
|
+
Since in most cases you will not have the `Root Certificate` included in your certificate, you need to generate a correct certificate including the Root Certificate. __For production, it will not be a problem__ since the Root certificate is provided by the client browser.
|
|
289
|
+
|
|
290
|
+
Let say that you have downloded your certificates from __[Ssl For Free](https://sslforfree.com)__ which you have then placed under: `~/.gina/certificates/scopes/local/myproject.domain`.
|
|
291
|
+
|
|
292
|
+
__Step 1__
|
|
293
|
+
Go to the folder
|
|
294
|
+
```tty
|
|
295
|
+
cd ~/.gina/certificates/scopes/local/myproject.domain
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
List your files
|
|
299
|
+
```tty
|
|
300
|
+
ls
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
Output should look like
|
|
304
|
+
```tty
|
|
305
|
+
ca_bundle.crt certificate.crt private.key
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
```tty
|
|
310
|
+
cat certificate.crt
|
|
311
|
+
```
|
|
312
|
+
Copy the content of `certificate.crt`
|
|
313
|
+
|
|
314
|
+
Visit [https://whatsmychaincert.com](https://whatsmychaincert.com)
|
|
315
|
+
Go to the `Generate the Correct Chain` tool.
|
|
316
|
+
Paste the content you have just copied out of your `certificate.crt` into the field, then __do not forget to check the option__ `Include Root Certificate`.
|
|
317
|
+
|
|
318
|
+
__It will download a chained certificate__.
|
|
319
|
+
Rename it to `certificate.chained+root.crt` and copy/paste the file to your certificates location (~/.gina/certificates/scopes/local/myproject.domain)
|
|
320
|
+
|
|
321
|
+
__Step 2__
|
|
322
|
+
You now need to combine your private key with your new certificate
|
|
323
|
+
Still @ `~/.gina/certificates/scopes/local/myproject.domain` ?
|
|
324
|
+
|
|
325
|
+
```tty
|
|
326
|
+
cat private.key certificate.chained+root.crt > certificate.combined.pem
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
__Final step__
|
|
330
|
+
|
|
331
|
+
Go to your project src to add or edit your bundle config the following file : `/path/to/myproject/src/frontend/config/settings.server.credentials.dev.json`
|
|
332
|
+
Where `frontend` is you bundle/application
|
|
333
|
+
|
|
334
|
+
We just need to override Gina default certificate paths
|
|
335
|
+
```tty
|
|
336
|
+
{
|
|
337
|
+
// "privateKey": "{GINA_HOMEDIR}/certificates/scopes/{scope}/{host}/private.key",
|
|
338
|
+
"certificate": "{GINA_HOMEDIR}/certificates/scopes/{scope}/{host}/certificate.chained+root.crt",
|
|
339
|
+
"ca": "{GINA_HOMEDIR}/certificates/scopes/{scope}/{host}/certificate.combined.pem"
|
|
340
|
+
}
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
Do this for all of you `myproject`'s bundles, then restart your bundles
|
|
344
|
+
```tty
|
|
345
|
+
gina bundle:restart @myproject
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
|
|
143
349
|
|
|
144
350
|
## Troubleshooting
|
|
145
351
|
|
|
@@ -150,25 +356,23 @@ __Are you starting for the first time ?__
|
|
|
150
356
|
- If you are a __Windows user__, make sure you are running your command line with sufficient permission; like __"launching your terminal as administrator"__.
|
|
151
357
|
|
|
152
358
|
|
|
153
|
-
- If you have just cloned Gina from
|
|
359
|
+
- If you have just cloned Gina from GitHub, don't forget to run from the project root :
|
|
360
|
+
|
|
154
361
|
```tty
|
|
155
|
-
|
|
362
|
+
node node_modules/gina/script/pre_install.js
|
|
156
363
|
```
|
|
157
364
|
|
|
158
|
-
- Have you noticed the __environment argument__ ( dev ) ?
|
|
159
|
-
``` tty
|
|
160
|
-
$ ./gina.sh -s frontend dev
|
|
161
|
-
```
|
|
162
|
-
Without the __dev__ argument, Gina is going to understand that you want to use the production environment. If it's really what you want to achieve, just __build__ :
|
|
163
365
|
```tty
|
|
164
|
-
|
|
366
|
+
node node_modules/gina/script/post_install.js
|
|
165
367
|
```
|
|
166
|
-
NB.: `prod` is optional here; if you don't add it, it will build for prod by default.
|
|
167
368
|
|
|
168
369
|
|
|
169
370
|
__Are you trying to restart after a crash ?__
|
|
170
371
|
|
|
171
|
-
Gina
|
|
372
|
+
Before v0.1.0, Gina used 2 processes for each bundle: one master, one slave.
|
|
373
|
+
Once an exception is thrown and the program crashes, one of the 2 processes can remain in the `tasks/processes` list.
|
|
374
|
+
|
|
375
|
+
Gina only uses one process per bundle or one per project if you have decided to merge bundles execution.
|
|
172
376
|
This has been mostly observed for Windows users.
|
|
173
377
|
|
|
174
378
|
- If you are on a POSIX OS, you should look for `gina`, then kill it !
|
|
@@ -177,27 +381,15 @@ This has been mostly observed for Windows users.
|
|
|
177
381
|
|
|
178
382
|
After this, try again to start, it should run better.
|
|
179
383
|
|
|
180
|
-
### I can't re install Gina
|
|
181
|
-
|
|
182
|
-
__Are you trying to reinstall from the project root ?__
|
|
183
384
|
|
|
184
|
-
- Go to your project root (where you can see `env.json` & `project.json`)
|
|
185
|
-
- Remove the file `gina`. This bug is related to npm since node 0.12.x and only found on POSIX Operating Systems
|
|
186
|
-
``` tty
|
|
187
|
-
$ rm ./gina
|
|
188
|
-
```
|
|
189
|
-
- You can now reinstall
|
|
190
|
-
``` tty
|
|
191
|
-
$ npm install gina
|
|
192
|
-
```
|
|
193
385
|
|
|
194
386
|
|
|
195
|
-
More documentation and tutorials are coming !
|
|
387
|
+
More documentation and tutorials are coming soon !
|
|
196
388
|
|
|
197
389
|
|
|
198
390
|
## License (MIT)
|
|
199
391
|
|
|
200
|
-
Copyright
|
|
392
|
+
Copyright © 2009-2022 [Rhinostone](http://www.rhinostone.com/)
|
|
201
393
|
|
|
202
394
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
203
395
|
of this software and associated documentation files (the "Software"), to deal
|
|
@@ -215,4 +407,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
215
407
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
216
408
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
217
409
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
218
|
-
THE SOFTWARE.
|
|
410
|
+
THE SOFTWARE.
|