Skip to content

Instantly share code, notes, and snippets.

View webislife's full-sized avatar
😜
Amazing

Denis webislife

😜
Amazing
View GitHub Profile
const ENVOIRMENT = require('./env.development.js');
module.exports = {
APPS: [
{
name: 'SSR',
script: 'src/server.js',
instances: 1,
exec_mode: 'fork',
autorestart: true,
//Get current ENV
//Options reference: https://pm2.io/doc/en/runtime/reference/ecosystem-file/
const
ENV = process.env.APP_ENV,
ENV_CONF = require(`./pm2.${ENV}.js`);
if(ENV === undefined){
console.error(`ERROR: Undefined envoirment: ${ENV}. Start stopped.`);
process.exit(1);
/**
* Cookies интерфейс для универсального node\broswer доступа к кукам
*/
export class Cookies {
constructor (options) {
this.env = options.env;
if(this.env === 'browser') {
this.Interface = new require('js-cookie');
}
if(this.env === "node") {
import axios from 'axios';
export const instance = axios.create({
baseURL: appConf.BACKEND_HOST,
});
import {instance} from './instance.js';
import {SwaggerApi} from './swagger.js';
export class MainApi extends SwaggerApi {
constructor() {
super();
this.Request = instance;
}
/**
import {instance} from './instance.js';
import {SwaggerApi} from './swagger.js';
export class BiglionApi extends SwaggerApi {
constructor() {
super();
this.Request = instance;
}
/**
const path = require('path');
const LRU = require('lru-cache');
const fastify = require('fastify');
const server = fastify({
logger: false,
});
const bundle = require('./../dist/vue-ssr-server-bundle.json');
const vueRenderer = require('vue-server-renderer');
const fs = require('fs');
const templatePath = path.resolve(__dirname, './index.html');
@webislife
webislife / clientIndex.js
Created April 18, 2019 20:18
Sample vue client index js
import { createApp } from '@root/app.js';
import { Cookies } from './lib/cookie.js';
const APP = createApp();
global.cookies = new Cookies({env: 'browser'});
global.APP = APP;
if (window.__INITIAL_STATE__) {
APP.Store.replaceState(window.__INITIAL_STATE__);
}
import Vue from 'vue';
import VueRouter from 'vue-router';
import Vuex from 'vuex';
import App from './app.vue';
import { createRouter } from '@client/router.js';
import { createStore } from './store/store.js';
import { sync } from 'vuex-router-sync';
Vue.use(VueRouter);
Vue.use(Vuex);
const fs = require('fs'),
path = require('path'),
MFS = require('memory-fs'),
webpack = require('webpack'),
chokidar = require('chokidar'),
clientConfig = require('./webpack.client.js'),
serverConfig = require('./webpack.server.js');
const readFile = (fs, file) => {
try {