This repo serves as a library for visualisation components that have been built previously for alis_ technologies LLC. Please feel free to look through the past projects in our Library to get inspiration. After completing the development of your project, your contribution will also be added to the Library. This allows you to showcase your work, and alis_ to access your work easily.
Technologies you will be using within the repo
We opted to use vue 2.x and not vue 3.x because we rely on and encourage the use of Vuetify components to decrease iteration cycle time, and speed up dev. For the same reason javascript is favoured over typescript.
- Fork the template repo to your personal github.
- Clone the forked repo into your local environment.
- Install dependencies.
cd ./vue_component_template_repo
npm install
- Run the application locally.
npm run serve
- Open the application locally at
http://localhost:3000/library
- Browse our community's past examples in the
src/projectLibrary
directory.
- Create a folder in
src/projectLibrary
with your project ID as the folder name. - You can add any files you need for your component in this directory.
- Add your component to the
/dev
router path insrc/router/index
. This enables you to render your component athttp://localhost:3000/dev
while you are developing/testing your work. - Add a configuration object to the
PopupResources
constant insrc/components/Popups/popup.config.js
in order to represent your work insrc/views/Library
. - Make commits in your forked repo.
- Make a pull request to the original repo and ask us to review the work once you have a first version ready. We will give comments on the pull request if any rework is required.
- For a consistent look and feel across the application, please comply with the guidelines layed out in the material design framework.
- alis_ has built header and footer components. For consistency across the codebase, please do not alter our application layout.
- Vuex is the tool of choice for state management across vue powered applications. A basic vuex store has been set up should you need it. There are code samples for informative and documentation purposes.
- Vuetify offers a library of prebuild components that comply with material design standards. Where applicable, we encourage the use of these components to increase iteration speed.
- You will see our library of past visualisation components in
src/projectLibrary
You will also be making your addition here.
- We use the amCharts library for any data visualisation components like line charts, bar charts, etc.
- All the dependencies you need should be set up in this repo already. Please let us know if you would like to add or remove any of these dependencies. We are open to your ideas, but please keep things consistent otherwise :).
npm install
npm run serve
npm run build
npm run lint
Visualize size of webpack output files with an interactive zoomable treemap. (Take a look @ bundlephobia)
Fragment component for vue.js
Vue Router is the official router for Vue.js
ESLint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code
This plugin allows us to check the <template>
and <script>
of .vue files with ESLint, as well as Vue code in .js files.
The vuetify-loader alleviates this pain by automatically importing all the Vuetify components you use, where you use them. This will also make code-splitting more effective, as webpack will only load the components required for that chunk to be displayed.
Loads a SASS/SCSS file and compiles it to CSS.
Node-sass is a library that provides binding for Node.js to LibSass, the C version of the popular stylesheet preprocessor, Sass.
Chart library that we use for building any data visualisation type components.