Web Application for using with Cloudsumé Server, written in TypeScript with Vue 2 and Bootstrap 4.
You can configure the building with the following environment variables:
CSM_BASE_URI
: Absolute URL of the web server be host the built.CSM_SERVER_URI
: Absolute URL of the Cloudsumé Server to use.CSM_OIDC_PROVIDER
: Absolute URL of the OIDC provider to use.CSM_STRIPE_KEY
: The publishable key of your Stripe account, NOT A SECRET KEY!!CSM_CAPTCHA_KEY
: The site key of reCAPTCHA to use, NOT A SECRET KEY!!
- Node.js
- NPM
npm install
npm run build -- --env production --output-path dist
dist
directory will be contains the files that are ready to publish to the web server.
You can start the development server with the following command:
npm start
Please note that the above environment variables must be set before starting the development server.
COMPONENT_NAME.TYPE.NAME
Name of the component or page who will use this translation.
Type of the translation, 2 is available at the moment:
label
for the label. The text must not have full stop.message
for the message. The text must have full stop at the end.
Name of the translation.
Just imports src/styles/_bootstrap.scss
in your scss
file and you are ready to use any variables and functions from Bootstrap. e.g.
@import '~@/styles/bootstrap';
- Add country by editing
src/locales/countries.ts
. - Add divisions by editing
src/locales/subdivisions.ts
. - Add country flag by editing
src/styles/_config.scss
. - Updates function
getSubdivisions
insrc/i18n/country.ts
. - Updates
getPreferredCurrency
insrc/i18n/country.ts
.
- Add a new field to DTO.
- Update
table
insrc/components/data-editor/metadata.ts
. - Update
src/components/property-viewer
if introduced a new property type. - Update editor (e.g.
src/components/skill-editor
).
- Update
Languages
insrc/i18n/language.ts
. - Update
AllowedTemplateCultures
insrc/config.ts
.
- Update
src/resume-data/defs.ts
. - Update
src/components/data-editor/types.ts
. - Update
table
insrc/components/data-editor/metadata.ts
. - Update
description
insrc/pages/template-editor/type-item.vue
. - Update
getDataType
insrc/clients/resume-data/models.ts
. - Implement an editor then add it to
src/pages/resume-editor/data-card.vue
,src/pages/global-editor/edit-modal.vue
andsrc/pages/sample-data/edit-pane.vue
. - Update
createImport
,createFallback
andcreateExportedUpdate
insrc/pages/resume-editor/global-modal.vue
. - Update
format
insrc/components/parent-selector/index.vue
.
- Never invoke
next
in the navigation guard withfalse
value due to it will cause loading indicator to show forever. PassError
instead offalse
if you want to abort the navigation. It is the limitation of Vue Router. - Always use scoped slot instead of normal slot when possible. The reason is scoped slot will be lazy render instead of normal slot that will render alongside the component. That mean it will be a dependency of the component that using it so it will re-render together with that component without causing the component that define it to re-render.
GNU AGPLv3