Remade with Vuepress
This commit is contained in:
parent
b9d2cf4c72
commit
ad369ca038
58 changed files with 9668 additions and 7764 deletions
12
.babelrc
12
.babelrc
|
@ -1,12 +0,0 @@
|
|||
{
|
||||
"presets": [
|
||||
["env", {
|
||||
"modules": false,
|
||||
"targets": {
|
||||
"browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
|
||||
}
|
||||
}],
|
||||
"stage-2"
|
||||
],
|
||||
"plugins": ["transform-vue-jsx", "transform-runtime"]
|
||||
}
|
|
@ -1,4 +0,0 @@
|
|||
/build/
|
||||
/config/
|
||||
/dist/
|
||||
/*.js
|
29
.eslintrc.js
29
.eslintrc.js
|
@ -1,29 +0,0 @@
|
|||
// https://eslint.org/docs/user-guide/configuring
|
||||
|
||||
module.exports = {
|
||||
root: true,
|
||||
parser: 'babel-eslint',
|
||||
parserOptions: {
|
||||
sourceType: 'module'
|
||||
},
|
||||
env: {
|
||||
browser: true,
|
||||
},
|
||||
// https://github.com/standard/standard/blob/master/docs/RULES-en.md
|
||||
extends: 'standard',
|
||||
// required to lint *.vue files
|
||||
plugins: [
|
||||
'html'
|
||||
],
|
||||
// add your custom rules here
|
||||
rules: {
|
||||
// allow async-await
|
||||
'generator-star-spacing': 'off',
|
||||
// allow debugger during development
|
||||
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
|
||||
'semi': 0,
|
||||
'comma-dangle': 0,
|
||||
'keyword-spacing': 0,
|
||||
'space-before-function-paren': 0
|
||||
}
|
||||
}
|
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -11,3 +11,5 @@ yarn-error.log*
|
|||
*.ntvs*
|
||||
*.njsproj
|
||||
*.sln
|
||||
|
||||
.vuepress/dist
|
|
@ -1,10 +0,0 @@
|
|||
// https://github.com/michael-ciniawsky/postcss-load-config
|
||||
|
||||
module.exports = {
|
||||
"plugins": {
|
||||
"postcss-import": {},
|
||||
"postcss-url": {},
|
||||
// to edit target browsers: use "browserslist" field in package.json
|
||||
"autoprefixer": {}
|
||||
}
|
||||
}
|
26
.vuepress/components/EditLink.vue
Normal file
26
.vuepress/components/EditLink.vue
Normal file
|
@ -0,0 +1,26 @@
|
|||
<template>
|
||||
<div class="edit-link mt-3">
|
||||
<v-divider></v-divider>
|
||||
<p class="mt-2"><a v-bind:href="githubUrl" target="_blank" class="grey--text text--darken-1">Edit this page on Github</a></p>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
githubUrl: ''
|
||||
}
|
||||
},
|
||||
name: 'EditLink',
|
||||
created () {
|
||||
this.githubUrl = 'https://github.com/'+ this.$site.themeConfig.repo + '/edit/' + this.$site.themeConfig.docsBranch;
|
||||
|
||||
if(this.$page.path == '/') {
|
||||
this.githubUrl = this.githubUrl + '/README.md';
|
||||
} else {
|
||||
this.githubUrl = this.githubUrl + this.$page.path.replace('.html', '.md');
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
|
@ -2,25 +2,27 @@
|
|||
<v-container fluid grid-list-md text-xs-center id="hook">
|
||||
<v-layout row wrap id="hook-navigation">
|
||||
<v-flex xs4>
|
||||
<router-link exact to="/">
|
||||
<a href="#" v-on:click="activeStep = 1" v-bind:class="{active: (activeStep==1)}">
|
||||
<v-btn color="grey lighten-1" fab>1</v-btn>
|
||||
Resolve a claim
|
||||
</router-link>
|
||||
</a>
|
||||
</v-flex>
|
||||
<v-flex xs4>
|
||||
<router-link to="/step-2">
|
||||
<a href="#" v-on:click="activeStep = 2" v-bind:class="{active: (activeStep==2)}">
|
||||
<v-btn color="grey lighten-1" fab>2</v-btn>
|
||||
Publish content
|
||||
</router-link>
|
||||
</a>
|
||||
</v-flex>
|
||||
<v-flex xs4>
|
||||
<router-link to="/step-3">
|
||||
<a href="#" v-on:click="activeStep = 3" v-bind:class="{active: (activeStep==3)}">
|
||||
<v-btn color="grey lighten-1" fab>3</v-btn>
|
||||
Support with LBC
|
||||
</router-link>
|
||||
</a>
|
||||
</v-flex>
|
||||
</v-layout>
|
||||
<router-view></router-view>
|
||||
<Step1 v-if="activeStep == 1"></Step1>
|
||||
<Step2 v-if="activeStep == 2"></Step2>
|
||||
<Step3 v-if="activeStep == 3"></Step3>
|
||||
<v-dialog v-model="uploadDialog" hide-overlay persistent width="30rem">
|
||||
<v-card>
|
||||
<template v-if="confirmed">
|
||||
|
@ -41,14 +43,15 @@
|
|||
|
||||
<script>
|
||||
|
||||
import EventBus from '@/event-bus';
|
||||
import EventBus from '../event-bus';
|
||||
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
uploadDialog: false,
|
||||
txhash: '',
|
||||
confirmed: false
|
||||
confirmed: false,
|
||||
activeStep: 1
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
|
@ -75,9 +78,9 @@ export default {
|
|||
|
||||
<style lang="scss">
|
||||
|
||||
@import '../../scss/variables';
|
||||
@import '../scss/variables';
|
||||
|
||||
@import '../../../node_modules/highlight.js/styles/monokai-sublime';
|
||||
@import '../../node_modules/highlight.js/styles/monokai-sublime';
|
||||
|
||||
.dialog__content {
|
||||
align-items: flex-end !important;
|
||||
|
@ -107,7 +110,7 @@ export default {
|
|||
text-decoration: none;
|
||||
color: $text-color;
|
||||
}
|
||||
.router-link-active {
|
||||
.active {
|
||||
font-weight: bold;
|
||||
.btn {
|
||||
background: $primary-color !important;
|
56
.vuepress/components/Sidebar.vue
Normal file
56
.vuepress/components/Sidebar.vue
Normal file
|
@ -0,0 +1,56 @@
|
|||
<template>
|
||||
|
||||
<v-navigation-drawer clipped app>
|
||||
|
||||
<v-toolbar flat class="transparent">
|
||||
<v-list>
|
||||
<v-list-tile>
|
||||
<v-list-tile-title class="title">
|
||||
{{ this.$page.title }}
|
||||
</v-list-tile-title>
|
||||
</v-list-tile>
|
||||
</v-list>
|
||||
</v-toolbar>
|
||||
|
||||
<v-list dense>
|
||||
<v-list-tile v-for="link in this.$page.headers" v-bind:key="link.title" @click="goTo(link.slug)" v-bind:class="['level-' + link.level]">
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>{{ link.title }}</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
</v-list>
|
||||
|
||||
</v-navigation-drawer>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
export default {
|
||||
data () {
|
||||
return {}
|
||||
},
|
||||
methods: {
|
||||
goTo: function(slug) {
|
||||
this.$router.push("#" + slug);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style>
|
||||
|
||||
.level-3 {
|
||||
padding-left: 1.5rem;
|
||||
}
|
||||
|
||||
.level-4 {
|
||||
padding-left: 3rem;
|
||||
}
|
||||
|
||||
.level-5 {
|
||||
padding-left: 4.5rem;
|
||||
}
|
||||
|
||||
</style>
|
|
@ -112,7 +112,7 @@ export default {
|
|||
|
||||
<style lang="scss">
|
||||
|
||||
@import '../../scss/variables';
|
||||
@import '../scss/variables';
|
||||
|
||||
#step1-page {
|
||||
.card {
|
|
@ -51,7 +51,7 @@
|
|||
import imagesLoaded from 'vue-images-loaded'
|
||||
import { ImageUploader } from 'vue-image-upload-resize'
|
||||
|
||||
import EventBus from '@/event-bus';
|
||||
import EventBus from '../event-bus';
|
||||
|
||||
export default {
|
||||
directives: {
|
||||
|
@ -139,7 +139,7 @@ export default {
|
|||
|
||||
<style lang="scss">
|
||||
|
||||
@import '../../scss/variables';
|
||||
@import '../scss/variables';
|
||||
|
||||
#step2-page {
|
||||
#meme-canvas {
|
|
@ -121,7 +121,7 @@ export default {
|
|||
|
||||
<style lang="scss">
|
||||
|
||||
@import '../../scss/variables';
|
||||
@import '../scss/variables';
|
||||
|
||||
#step3-page {
|
||||
.card {
|
8
.vuepress/config.js
Normal file
8
.vuepress/config.js
Normal file
|
@ -0,0 +1,8 @@
|
|||
// .vuepress/config.js
|
||||
module.exports = {
|
||||
themeConfig: {
|
||||
repo: 'lbryio/lbry.tech',
|
||||
docsBranch: 'master',
|
||||
editLinkText: 'Edit this page on Github'
|
||||
}
|
||||
}
|
139
.vuepress/theme/Layout.vue
Normal file
139
.vuepress/theme/Layout.vue
Normal file
|
@ -0,0 +1,139 @@
|
|||
<template>
|
||||
<v-app>
|
||||
|
||||
<v-toolbar clipped-left app scroll-off-screen>
|
||||
|
||||
<v-toolbar-title class="align-center">
|
||||
<span class="title"><router-link to="/">LBRY.tech</router-link></span>
|
||||
</v-toolbar-title>
|
||||
<v-spacer></v-spacer>
|
||||
<v-toolbar-items class="hidden-sm-and-down">
|
||||
<v-btn flat to="/overview.html">Overview</v-btn>
|
||||
<v-btn flat to="/documentation.html">Documentation</v-btn>
|
||||
<v-btn flat to="/contribute.html">How to Contribute</v-btn>
|
||||
<v-btn flat to="/develop.html">How to Develop</v-btn>
|
||||
<v-btn flat to="/resources.html">Resources</v-btn>
|
||||
</v-toolbar-items>
|
||||
|
||||
</v-toolbar>
|
||||
|
||||
<v-content>
|
||||
|
||||
<v-alert type="error" value="true" id="in-development-alert" class="pt-5 pb-5 ma-0">
|
||||
<strong>This website is in beta.</strong> We are actively developing this website to showcase and teach about the LBRY protocol. All things may not work as expected!<br/>This website is open source and you can <a href="https://github.com/lbryio/lbry.tech" target="_blank">contribute to it on Github</a>.</v-alert>
|
||||
</v-alert>
|
||||
|
||||
<template v-if="$page.frontmatter.home">
|
||||
|
||||
<hook></hook>
|
||||
|
||||
<v-container fluid>
|
||||
|
||||
<v-layout row wrap>
|
||||
|
||||
<v-flex xs12 xl6 offset-xl3>
|
||||
|
||||
<Content custom></Content>
|
||||
|
||||
<edit-link></edit-link>
|
||||
|
||||
</v-flex>
|
||||
|
||||
</v-layout>
|
||||
|
||||
</v-container>
|
||||
|
||||
</template>
|
||||
|
||||
<template v-else>
|
||||
|
||||
<v-container>
|
||||
|
||||
<v-layout row wrap>
|
||||
|
||||
<v-flex xs12 xl6 offset-xl3>
|
||||
|
||||
<Sidebar v-if="$page.headers"></Sidebar>
|
||||
|
||||
<Content custom></Content>
|
||||
|
||||
<edit-link></edit-link>
|
||||
|
||||
</v-flex>
|
||||
|
||||
</v-layout>
|
||||
|
||||
</v-container>
|
||||
|
||||
</template>
|
||||
|
||||
</v-content>
|
||||
|
||||
</v-app>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import Vue from 'vue'
|
||||
import nprogress from 'nprogress'
|
||||
import Vuetify from 'vuetify'
|
||||
import VueResource from 'vue-resource'
|
||||
import VueHighlightJS from 'vue-highlightjs'
|
||||
|
||||
Vue.use(Vuetify, {
|
||||
theme: {
|
||||
primary: '#155b4a'
|
||||
}
|
||||
});
|
||||
|
||||
Vue.use(VueResource)
|
||||
Vue.use(VueHighlightJS)
|
||||
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style src="../../node_modules/vuetify/dist/vuetify.min.css"></style>
|
||||
<style src="../../node_modules/material-design-icons-iconfont/dist/material-design-icons.css"></style>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
html {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
pre {
|
||||
text-align: left;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.content.custom {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.toolbar__title {
|
||||
a {
|
||||
text-decoration: none;
|
||||
&:hover {
|
||||
color: black;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#in-development-alert {
|
||||
a {
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
14
README.md
14
README.md
|
@ -1,3 +1,7 @@
|
|||
---
|
||||
home: true
|
||||
---
|
||||
|
||||
# LBRY.tech website
|
||||
|
||||
Technical documentation website for [the LBRY protocol](https://lbry.io/).
|
||||
|
@ -5,7 +9,7 @@ Technical documentation website for [the LBRY protocol](https://lbry.io/).
|
|||
Built with:
|
||||
|
||||
* [Vue.js](https://vuejs.org/)
|
||||
* [Vue Webpack Boilerplate](https://github.com/vuejs-templates/webpack)
|
||||
* [Vuepress](https://vuepress.vuejs.org/)
|
||||
* [Vuetify](https://vuetifyjs.com/)
|
||||
* [Highlight.js](https://highlightjs.org/)
|
||||
|
||||
|
@ -16,11 +20,7 @@ Built with:
|
|||
npm install
|
||||
|
||||
# serve with hot reload at localhost:8080
|
||||
npm run dev
|
||||
vuepress dev
|
||||
|
||||
# build for production with minification
|
||||
npm run build
|
||||
|
||||
# build for production and view the bundle analyzer report
|
||||
npm run build --report
|
||||
```
|
||||
vuepress build
|
||||
|
|
|
@ -1,41 +0,0 @@
|
|||
'use strict'
|
||||
require('./check-versions')()
|
||||
|
||||
process.env.NODE_ENV = 'production'
|
||||
|
||||
const ora = require('ora')
|
||||
const rm = require('rimraf')
|
||||
const path = require('path')
|
||||
const chalk = require('chalk')
|
||||
const webpack = require('webpack')
|
||||
const config = require('../config')
|
||||
const webpackConfig = require('./webpack.prod.conf')
|
||||
|
||||
const spinner = ora('building for production...')
|
||||
spinner.start()
|
||||
|
||||
rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
|
||||
if (err) throw err
|
||||
webpack(webpackConfig, (err, stats) => {
|
||||
spinner.stop()
|
||||
if (err) throw err
|
||||
process.stdout.write(stats.toString({
|
||||
colors: true,
|
||||
modules: false,
|
||||
children: false, // If you are using ts-loader, setting this to true will make TypeScript errors show up during build.
|
||||
chunks: false,
|
||||
chunkModules: false
|
||||
}) + '\n\n')
|
||||
|
||||
if (stats.hasErrors()) {
|
||||
console.log(chalk.red(' Build failed with errors.\n'))
|
||||
process.exit(1)
|
||||
}
|
||||
|
||||
console.log(chalk.cyan(' Build complete.\n'))
|
||||
console.log(chalk.yellow(
|
||||
' Tip: built files are meant to be served over an HTTP server.\n' +
|
||||
' Opening index.html over file:// won\'t work.\n'
|
||||
))
|
||||
})
|
||||
})
|
|
@ -1,54 +0,0 @@
|
|||
'use strict'
|
||||
const chalk = require('chalk')
|
||||
const semver = require('semver')
|
||||
const packageConfig = require('../package.json')
|
||||
const shell = require('shelljs')
|
||||
|
||||
function exec (cmd) {
|
||||
return require('child_process').execSync(cmd).toString().trim()
|
||||
}
|
||||
|
||||
const versionRequirements = [
|
||||
{
|
||||
name: 'node',
|
||||
currentVersion: semver.clean(process.version),
|
||||
versionRequirement: packageConfig.engines.node
|
||||
}
|
||||
]
|
||||
|
||||
if (shell.which('npm')) {
|
||||
versionRequirements.push({
|
||||
name: 'npm',
|
||||
currentVersion: exec('npm --version'),
|
||||
versionRequirement: packageConfig.engines.npm
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = function () {
|
||||
const warnings = []
|
||||
|
||||
for (let i = 0; i < versionRequirements.length; i++) {
|
||||
const mod = versionRequirements[i]
|
||||
|
||||
if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) {
|
||||
warnings.push(mod.name + ': ' +
|
||||
chalk.red(mod.currentVersion) + ' should be ' +
|
||||
chalk.green(mod.versionRequirement)
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
if (warnings.length) {
|
||||
console.log('')
|
||||
console.log(chalk.yellow('To use this template, you must update following to modules:'))
|
||||
console.log()
|
||||
|
||||
for (let i = 0; i < warnings.length; i++) {
|
||||
const warning = warnings[i]
|
||||
console.log(' ' + warning)
|
||||
}
|
||||
|
||||
console.log()
|
||||
process.exit(1)
|
||||
}
|
||||
}
|
BIN
build/logo.png
BIN
build/logo.png
Binary file not shown.
Before Width: | Height: | Size: 6.7 KiB |
101
build/utils.js
101
build/utils.js
|
@ -1,101 +0,0 @@
|
|||
'use strict'
|
||||
const path = require('path')
|
||||
const config = require('../config')
|
||||
const ExtractTextPlugin = require('extract-text-webpack-plugin')
|
||||
const packageConfig = require('../package.json')
|
||||
|
||||
exports.assetsPath = function (_path) {
|
||||
const assetsSubDirectory = process.env.NODE_ENV === 'production'
|
||||
? config.build.assetsSubDirectory
|
||||
: config.dev.assetsSubDirectory
|
||||
|
||||
return path.posix.join(assetsSubDirectory, _path)
|
||||
}
|
||||
|
||||
exports.cssLoaders = function (options) {
|
||||
options = options || {}
|
||||
|
||||
const cssLoader = {
|
||||
loader: 'css-loader',
|
||||
options: {
|
||||
sourceMap: options.sourceMap
|
||||
}
|
||||
}
|
||||
|
||||
const postcssLoader = {
|
||||
loader: 'postcss-loader',
|
||||
options: {
|
||||
sourceMap: options.sourceMap
|
||||
}
|
||||
}
|
||||
|
||||
// generate loader string to be used with extract text plugin
|
||||
function generateLoaders (loader, loaderOptions) {
|
||||
const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]
|
||||
|
||||
if (loader) {
|
||||
loaders.push({
|
||||
loader: loader + '-loader',
|
||||
options: Object.assign({}, loaderOptions, {
|
||||
sourceMap: options.sourceMap
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
// Extract CSS when that option is specified
|
||||
// (which is the case during production build)
|
||||
if (options.extract) {
|
||||
return ExtractTextPlugin.extract({
|
||||
use: loaders,
|
||||
fallback: 'vue-style-loader'
|
||||
})
|
||||
} else {
|
||||
return ['vue-style-loader'].concat(loaders)
|
||||
}
|
||||
}
|
||||
|
||||
// https://vue-loader.vuejs.org/en/configurations/extract-css.html
|
||||
return {
|
||||
css: generateLoaders(),
|
||||
postcss: generateLoaders(),
|
||||
less: generateLoaders('less'),
|
||||
sass: generateLoaders('sass', { indentedSyntax: true }),
|
||||
scss: generateLoaders('sass'),
|
||||
stylus: generateLoaders('stylus'),
|
||||
styl: generateLoaders('stylus')
|
||||
}
|
||||
}
|
||||
|
||||
// Generate loaders for standalone style files (outside of .vue)
|
||||
exports.styleLoaders = function (options) {
|
||||
const output = []
|
||||
const loaders = exports.cssLoaders(options)
|
||||
|
||||
for (const extension in loaders) {
|
||||
const loader = loaders[extension]
|
||||
output.push({
|
||||
test: new RegExp('\\.' + extension + '$'),
|
||||
use: loader
|
||||
})
|
||||
}
|
||||
|
||||
return output
|
||||
}
|
||||
|
||||
exports.createNotifierCallback = () => {
|
||||
const notifier = require('node-notifier')
|
||||
|
||||
return (severity, errors) => {
|
||||
if (severity !== 'error') return
|
||||
|
||||
const error = errors[0]
|
||||
const filename = error.file && error.file.split('!').pop()
|
||||
|
||||
notifier.notify({
|
||||
title: packageConfig.name,
|
||||
message: severity + ': ' + error.name,
|
||||
subtitle: filename || '',
|
||||
icon: path.join(__dirname, 'logo.png')
|
||||
})
|
||||
}
|
||||
}
|
|
@ -1,22 +0,0 @@
|
|||
'use strict'
|
||||
const utils = require('./utils')
|
||||
const config = require('../config')
|
||||
const isProduction = process.env.NODE_ENV === 'production'
|
||||
const sourceMapEnabled = isProduction
|
||||
? config.build.productionSourceMap
|
||||
: config.dev.cssSourceMap
|
||||
|
||||
module.exports = {
|
||||
loaders: utils.cssLoaders({
|
||||
sourceMap: sourceMapEnabled,
|
||||
extract: isProduction
|
||||
}),
|
||||
cssSourceMap: sourceMapEnabled,
|
||||
cacheBusting: config.dev.cacheBusting,
|
||||
transformToRequire: {
|
||||
video: ['src', 'poster'],
|
||||
source: 'src',
|
||||
img: 'src',
|
||||
image: 'xlink:href'
|
||||
}
|
||||
}
|
|
@ -1,92 +0,0 @@
|
|||
'use strict'
|
||||
const path = require('path')
|
||||
const utils = require('./utils')
|
||||
const config = require('../config')
|
||||
const vueLoaderConfig = require('./vue-loader.conf')
|
||||
|
||||
function resolve (dir) {
|
||||
return path.join(__dirname, '..', dir)
|
||||
}
|
||||
|
||||
const createLintingRule = () => ({
|
||||
test: /\.(js|vue)$/,
|
||||
loader: 'eslint-loader',
|
||||
enforce: 'pre',
|
||||
include: [resolve('src'), resolve('test')],
|
||||
options: {
|
||||
formatter: require('eslint-friendly-formatter'),
|
||||
emitWarning: !config.dev.showEslintErrorsInOverlay
|
||||
}
|
||||
})
|
||||
|
||||
module.exports = {
|
||||
context: path.resolve(__dirname, '../'),
|
||||
entry: {
|
||||
app: './src/main.js'
|
||||
},
|
||||
output: {
|
||||
path: config.build.assetsRoot,
|
||||
filename: '[name].js',
|
||||
publicPath: process.env.NODE_ENV === 'production'
|
||||
? config.build.assetsPublicPath
|
||||
: config.dev.assetsPublicPath
|
||||
},
|
||||
resolve: {
|
||||
extensions: ['.js', '.vue', '.json'],
|
||||
alias: {
|
||||
'vue$': 'vue/dist/vue.esm.js',
|
||||
'@': resolve('src'),
|
||||
}
|
||||
},
|
||||
module: {
|
||||
rules: [
|
||||
...(config.dev.useEslint ? [createLintingRule()] : []),
|
||||
{
|
||||
test: /\.vue$/,
|
||||
loader: 'vue-loader',
|
||||
options: vueLoaderConfig
|
||||
},
|
||||
{
|
||||
test: /\.js$/,
|
||||
loader: 'babel-loader',
|
||||
include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')]
|
||||
},
|
||||
{
|
||||
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
|
||||
loader: 'url-loader',
|
||||
options: {
|
||||
limit: 10000,
|
||||
name: utils.assetsPath('img/[name].[hash:7].[ext]')
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
|
||||
loader: 'url-loader',
|
||||
options: {
|
||||
limit: 10000,
|
||||
name: utils.assetsPath('media/[name].[hash:7].[ext]')
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
|
||||
loader: 'url-loader',
|
||||
options: {
|
||||
limit: 10000,
|
||||
name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
node: {
|
||||
// prevent webpack from injecting useless setImmediate polyfill because Vue
|
||||
// source contains it (although only uses it if it's native).
|
||||
setImmediate: false,
|
||||
// prevent webpack from injecting mocks to Node native modules
|
||||
// that does not make sense for the client
|
||||
dgram: 'empty',
|
||||
fs: 'empty',
|
||||
net: 'empty',
|
||||
tls: 'empty',
|
||||
child_process: 'empty'
|
||||
}
|
||||
}
|
|
@ -1,95 +0,0 @@
|
|||
'use strict'
|
||||
const utils = require('./utils')
|
||||
const webpack = require('webpack')
|
||||
const config = require('../config')
|
||||
const merge = require('webpack-merge')
|
||||
const path = require('path')
|
||||
const baseWebpackConfig = require('./webpack.base.conf')
|
||||
const CopyWebpackPlugin = require('copy-webpack-plugin')
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin')
|
||||
const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')
|
||||
const portfinder = require('portfinder')
|
||||
|
||||
const HOST = process.env.HOST
|
||||
const PORT = process.env.PORT && Number(process.env.PORT)
|
||||
|
||||
const devWebpackConfig = merge(baseWebpackConfig, {
|
||||
module: {
|
||||
rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap, usePostCSS: true })
|
||||
},
|
||||
// cheap-module-eval-source-map is faster for development
|
||||
devtool: config.dev.devtool,
|
||||
|
||||
// these devServer options should be customized in /config/index.js
|
||||
devServer: {
|
||||
clientLogLevel: 'warning',
|
||||
historyApiFallback: {
|
||||
rewrites: [
|
||||
{ from: /.*/, to: path.posix.join(config.dev.assetsPublicPath, 'index.html') },
|
||||
],
|
||||
},
|
||||
hot: true,
|
||||
contentBase: false, // since we use CopyWebpackPlugin.
|
||||
compress: true,
|
||||
host: HOST || config.dev.host,
|
||||
port: PORT || config.dev.port,
|
||||
open: config.dev.autoOpenBrowser,
|
||||
overlay: config.dev.errorOverlay
|
||||
? { warnings: false, errors: true }
|
||||
: false,
|
||||
publicPath: config.dev.assetsPublicPath,
|
||||
proxy: config.dev.proxyTable,
|
||||
quiet: true, // necessary for FriendlyErrorsPlugin
|
||||
watchOptions: {
|
||||
poll: config.dev.poll,
|
||||
}
|
||||
},
|
||||
plugins: [
|
||||
new webpack.DefinePlugin({
|
||||
'process.env': require('../config/dev.env')
|
||||
}),
|
||||
new webpack.HotModuleReplacementPlugin(),
|
||||
new webpack.NamedModulesPlugin(), // HMR shows correct file names in console on update.
|
||||
new webpack.NoEmitOnErrorsPlugin(),
|
||||
// https://github.com/ampedandwired/html-webpack-plugin
|
||||
new HtmlWebpackPlugin({
|
||||
filename: 'index.html',
|
||||
template: 'index.html',
|
||||
inject: true
|
||||
}),
|
||||
// copy custom static assets
|
||||
new CopyWebpackPlugin([
|
||||
{
|
||||
from: path.resolve(__dirname, '../static'),
|
||||
to: config.dev.assetsSubDirectory,
|
||||
ignore: ['.*']
|
||||
}
|
||||
])
|
||||
]
|
||||
})
|
||||
|
||||
module.exports = new Promise((resolve, reject) => {
|
||||
portfinder.basePort = process.env.PORT || config.dev.port
|
||||
portfinder.getPort((err, port) => {
|
||||
if (err) {
|
||||
reject(err)
|
||||
} else {
|
||||
// publish the new Port, necessary for e2e tests
|
||||
process.env.PORT = port
|
||||
// add port to devServer config
|
||||
devWebpackConfig.devServer.port = port
|
||||
|
||||
// Add FriendlyErrorsPlugin
|
||||
devWebpackConfig.plugins.push(new FriendlyErrorsPlugin({
|
||||
compilationSuccessInfo: {
|
||||
messages: [`Your application is running here: http://${devWebpackConfig.devServer.host}:${port}`],
|
||||
},
|
||||
onErrors: config.dev.notifyOnErrors
|
||||
? utils.createNotifierCallback()
|
||||
: undefined
|
||||
}))
|
||||
|
||||
resolve(devWebpackConfig)
|
||||
}
|
||||
})
|
||||
})
|
|
@ -1,145 +0,0 @@
|
|||
'use strict'
|
||||
const path = require('path')
|
||||
const utils = require('./utils')
|
||||
const webpack = require('webpack')
|
||||
const config = require('../config')
|
||||
const merge = require('webpack-merge')
|
||||
const baseWebpackConfig = require('./webpack.base.conf')
|
||||
const CopyWebpackPlugin = require('copy-webpack-plugin')
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin')
|
||||
const ExtractTextPlugin = require('extract-text-webpack-plugin')
|
||||
const OptimizeCSSPlugin = require('optimize-css-assets-webpack-plugin')
|
||||
const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
|
||||
|
||||
const env = require('../config/prod.env')
|
||||
|
||||
const webpackConfig = merge(baseWebpackConfig, {
|
||||
module: {
|
||||
rules: utils.styleLoaders({
|
||||
sourceMap: config.build.productionSourceMap,
|
||||
extract: true,
|
||||
usePostCSS: true
|
||||
})
|
||||
},
|
||||
devtool: config.build.productionSourceMap ? config.build.devtool : false,
|
||||
output: {
|
||||
path: config.build.assetsRoot,
|
||||
filename: utils.assetsPath('js/[name].[chunkhash].js'),
|
||||
chunkFilename: utils.assetsPath('js/[id].[chunkhash].js')
|
||||
},
|
||||
plugins: [
|
||||
// http://vuejs.github.io/vue-loader/en/workflow/production.html
|
||||
new webpack.DefinePlugin({
|
||||
'process.env': env
|
||||
}),
|
||||
new UglifyJsPlugin({
|
||||
uglifyOptions: {
|
||||
compress: {
|
||||
warnings: false
|
||||
}
|
||||
},
|
||||
sourceMap: config.build.productionSourceMap,
|
||||
parallel: true
|
||||
}),
|
||||
// extract css into its own file
|
||||
new ExtractTextPlugin({
|
||||
filename: utils.assetsPath('css/[name].[contenthash].css'),
|
||||
// Setting the following option to `false` will not extract CSS from codesplit chunks.
|
||||
// Their CSS will instead be inserted dynamically with style-loader when the codesplit chunk has been loaded by webpack.
|
||||
// It's currently set to `true` because we are seeing that sourcemaps are included in the codesplit bundle as well when it's `false`,
|
||||
// increasing file size: https://github.com/vuejs-templates/webpack/issues/1110
|
||||
allChunks: true,
|
||||
}),
|
||||
// Compress extracted CSS. We are using this plugin so that possible
|
||||
// duplicated CSS from different components can be deduped.
|
||||
new OptimizeCSSPlugin({
|
||||
cssProcessorOptions: config.build.productionSourceMap
|
||||
? { safe: true, map: { inline: false } }
|
||||
: { safe: true }
|
||||
}),
|
||||
// generate dist index.html with correct asset hash for caching.
|
||||
// you can customize output by editing /index.html
|
||||
// see https://github.com/ampedandwired/html-webpack-plugin
|
||||
new HtmlWebpackPlugin({
|
||||
filename: config.build.index,
|
||||
template: 'index.html',
|
||||
inject: true,
|
||||
minify: {
|
||||
removeComments: true,
|
||||
collapseWhitespace: true,
|
||||
removeAttributeQuotes: true
|
||||
// more options:
|
||||
// https://github.com/kangax/html-minifier#options-quick-reference
|
||||
},
|
||||
// necessary to consistently work with multiple chunks via CommonsChunkPlugin
|
||||
chunksSortMode: 'dependency'
|
||||
}),
|
||||
// keep module.id stable when vendor modules does not change
|
||||
new webpack.HashedModuleIdsPlugin(),
|
||||
// enable scope hoisting
|
||||
new webpack.optimize.ModuleConcatenationPlugin(),
|
||||
// split vendor js into its own file
|
||||
new webpack.optimize.CommonsChunkPlugin({
|
||||
name: 'vendor',
|
||||
minChunks (module) {
|
||||
// any required modules inside node_modules are extracted to vendor
|
||||
return (
|
||||
module.resource &&
|
||||
/\.js$/.test(module.resource) &&
|
||||
module.resource.indexOf(
|
||||
path.join(__dirname, '../node_modules')
|
||||
) === 0
|
||||
)
|
||||
}
|
||||
}),
|
||||
// extract webpack runtime and module manifest to its own file in order to
|
||||
// prevent vendor hash from being updated whenever app bundle is updated
|
||||
new webpack.optimize.CommonsChunkPlugin({
|
||||
name: 'manifest',
|
||||
minChunks: Infinity
|
||||
}),
|
||||
// This instance extracts shared chunks from code splitted chunks and bundles them
|
||||
// in a separate chunk, similar to the vendor chunk
|
||||
// see: https://webpack.js.org/plugins/commons-chunk-plugin/#extra-async-commons-chunk
|
||||
new webpack.optimize.CommonsChunkPlugin({
|
||||
name: 'app',
|
||||
async: 'vendor-async',
|
||||
children: true,
|
||||
minChunks: 3
|
||||
}),
|
||||
|
||||
// copy custom static assets
|
||||
new CopyWebpackPlugin([
|
||||
{
|
||||
from: path.resolve(__dirname, '../static'),
|
||||
to: config.build.assetsSubDirectory,
|
||||
ignore: ['.*']
|
||||
}
|
||||
])
|
||||
]
|
||||
})
|
||||
|
||||
if (config.build.productionGzip) {
|
||||
const CompressionWebpackPlugin = require('compression-webpack-plugin')
|
||||
|
||||
webpackConfig.plugins.push(
|
||||
new CompressionWebpackPlugin({
|
||||
asset: '[path].gz[query]',
|
||||
algorithm: 'gzip',
|
||||
test: new RegExp(
|
||||
'\\.(' +
|
||||
config.build.productionGzipExtensions.join('|') +
|
||||
')$'
|
||||
),
|
||||
threshold: 10240,
|
||||
minRatio: 0.8
|
||||
})
|
||||
)
|
||||
}
|
||||
|
||||
if (config.build.bundleAnalyzerReport) {
|
||||
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
|
||||
webpackConfig.plugins.push(new BundleAnalyzerPlugin())
|
||||
}
|
||||
|
||||
module.exports = webpackConfig
|
|
@ -1,7 +0,0 @@
|
|||
'use strict'
|
||||
const merge = require('webpack-merge')
|
||||
const prodEnv = require('./prod.env')
|
||||
|
||||
module.exports = merge(prodEnv, {
|
||||
NODE_ENV: '"development"'
|
||||
})
|
|
@ -1,76 +0,0 @@
|
|||
'use strict'
|
||||
// Template version: 1.2.8
|
||||
// see http://vuejs-templates.github.io/webpack for documentation.
|
||||
|
||||
const path = require('path')
|
||||
|
||||
module.exports = {
|
||||
dev: {
|
||||
|
||||
// Paths
|
||||
assetsSubDirectory: 'static',
|
||||
assetsPublicPath: '/',
|
||||
proxyTable: {},
|
||||
|
||||
// Various Dev Server settings
|
||||
host: 'localhost', // can be overwritten by process.env.HOST
|
||||
port: 8080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
|
||||
autoOpenBrowser: false,
|
||||
errorOverlay: true,
|
||||
notifyOnErrors: true,
|
||||
poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
|
||||
|
||||
// Use Eslint Loader?
|
||||
// If true, your code will be linted during bundling and
|
||||
// linting errors and warnings will be shown in the console.
|
||||
useEslint: true,
|
||||
// If true, eslint errors and warnings will also be shown in the error overlay
|
||||
// in the browser.
|
||||
showEslintErrorsInOverlay: false,
|
||||
|
||||
/**
|
||||
* Source Maps
|
||||
*/
|
||||
|
||||
// https://webpack.js.org/configuration/devtool/#development
|
||||
devtool: 'cheap-module-eval-source-map',
|
||||
|
||||
// If you have problems debugging vue-files in devtools,
|
||||
// set this to false - it *may* help
|
||||
// https://vue-loader.vuejs.org/en/options.html#cachebusting
|
||||
cacheBusting: true,
|
||||
|
||||
cssSourceMap: true,
|
||||
},
|
||||
|
||||
build: {
|
||||
// Template for index.html
|
||||
index: path.resolve(__dirname, '../dist/index.html'),
|
||||
|
||||
// Paths
|
||||
assetsRoot: path.resolve(__dirname, '../dist'),
|
||||
assetsSubDirectory: 'static',
|
||||
assetsPublicPath: '/',
|
||||
|
||||
/**
|
||||
* Source Maps
|
||||
*/
|
||||
|
||||
productionSourceMap: true,
|
||||
// https://webpack.js.org/configuration/devtool/#production
|
||||
devtool: '#source-map',
|
||||
|
||||
// Gzip off by default as many popular static hosts such as
|
||||
// Surge or Netlify already gzip all static assets for you.
|
||||
// Before setting to `true`, make sure to:
|
||||
// npm install --save-dev compression-webpack-plugin
|
||||
productionGzip: false,
|
||||
productionGzipExtensions: ['js', 'css'],
|
||||
|
||||
// Run the build command with an extra argument to
|
||||
// View the bundle analyzer report after build finishes:
|
||||
// `npm run build --report`
|
||||
// Set to `true` or `false` to always turn it on or off
|
||||
bundleAnalyzerReport: process.env.npm_config_report
|
||||
}
|
||||
}
|
|
@ -1,4 +0,0 @@
|
|||
'use strict'
|
||||
module.exports = {
|
||||
NODE_ENV: '"production"'
|
||||
}
|
|
@ -1,25 +1,8 @@
|
|||
---
|
||||
title: Contributing to LBRY
|
||||
category: other
|
||||
---
|
||||
# Contributing to LBRY
|
||||
|
||||
Interested in progressing content freedom? Awesome! This guide will get you started.
|
||||
|
||||
There are many ways you can get involved. This document covers:
|
||||
|
||||
* [Ecosystem Overview](#ecosystem-overview)
|
||||
* [Raising Issues](#raising-issues)
|
||||
* [Reporting Bugs](#report-a-bug)
|
||||
* [Feature Requests](#feature-requests)
|
||||
* [Coding](#coding)
|
||||
* [Creative](#creative)
|
||||
* [Writing](#writing)
|
||||
* [Designing](#designing)
|
||||
* [Communicating](#communicating)
|
||||
* [Translating](#translating)
|
||||
* [Testing](#testing)
|
||||
|
||||
## Ecosystem Overview {#ecosystem-overview}
|
||||
## Ecosystem Overview
|
||||
|
||||
Typical usage of LBRY does not involve a single piece of software but instead involves several interacting components.
|
||||
|
||||
|
@ -36,13 +19,13 @@ Whether you want to report an issue, contribute to the code, or help test the so
|
|||
|
||||
The vast majority of issues will be filed in either `lbry-app` or `lbry`.
|
||||
|
||||
## Raising Issues {#raising-issue}
|
||||
## Raising Issues
|
||||
|
||||
If you're about to raise an issue because you've found a problem with LBRY, or you'd like to request a new feature, or for any other reason, please read this first.
|
||||
|
||||
GitHub is the preferred channel for [bug reports](#report-a-bug) and [feature requests](#feature-requests).
|
||||
|
||||
### Reporting a Bug {#report-a-bug}
|
||||
### Reporting a Bug
|
||||
|
||||
A bug is a _demonstrable problem_ that is caused by the code in the repository. Good bug reports are extremely helpful - thank you!
|
||||
|
||||
|
@ -56,7 +39,7 @@ Guidelines for bug reports:
|
|||
|
||||
Well-specified bug reports save developers lots of time and are extremely appreciated, typically with an LBRY credit tip.
|
||||
|
||||
### Feature Requests {#feature-requests}
|
||||
### Feature Requests
|
||||
|
||||
Feature requests are welcome. Before you submit one be sure to:
|
||||
|
||||
|
@ -66,7 +49,7 @@ Feature requests are welcome. Before you submit one be sure to:
|
|||
2. **Consider whether it's feasible** for us to tackle this feature in the next 6-12 months. The LBRY team is currently stretched thin just adding basic functionality. If this is a nice to have rather than a need, it is probably more clutter than helpful.
|
||||
3. **Make a strong case** to convince the project's leaders of the merits of this feature. Please provide as much detail and context as possible. This means explaining the use case and why it is likely to be common.
|
||||
|
||||
## Coding {#coding}
|
||||
## Coding
|
||||
|
||||
You're welcome and encouraged to work with us and the community on LBRY!
|
||||
|
||||
|
@ -80,31 +63,31 @@ How to contribute:
|
|||
1. **Abide coding and commit standards**. Look for a STANDARDS.md document in the repo you are working on for repo specific instructions. Update CHANGELOG.md (if it exists) along with your pull request.
|
||||
1. **Questions or problems? Ask!**. The #dev channel of [our chat](https://chat.lbry.io) is full of other LBRY community devs and team members.
|
||||
|
||||
## Creative {#creative}
|
||||
## Creative
|
||||
|
||||
If you're a writer, designer, or communicator, you can also contribute to LBRY.
|
||||
|
||||
### Writing {#writing}
|
||||
### Writing
|
||||
|
||||
If you want to update or edit existing written copy, it likely exists in either [lbry.io](https://github.com/lbryio/lbry.io) (the website) or [lbry-app](https://github.com/lbryio/lbry-app) (the browser). Try searching the respective repo for a string (in quotes) related to the copy that you want to adjust. You can likely figure out how to edit text via the GitHub interface. If not, you can point out issues to [Tom](mailto:tom@lbry.io).
|
||||
|
||||
If you want to contribute new written copy, such as a blog post or other content, please contact [Jeremy](mailto:jeremy@lbry.io), or join or [chat](https://chat.lbry.io) and post a message in #general.
|
||||
|
||||
### Designing {#designing}
|
||||
### Designing
|
||||
|
||||
If you're a web designer, you can contribute to either [lbry.io](https://github.com/lbryio/lbry.io) (the website) or [lbry-app](https://github.com/lbryio/lbry-app) (the browser) by opening a pull request.
|
||||
|
||||
If you're a graphic designer, creating engaging graphics, GIFs, explainers, HOWTOs, wallpapers, and other related graphical content is a huge help! You can submit or discuss contributions by emailing [Jeremy](mailto:jeremy@lbry.io) or joining the #design channel in our [chat](https://chat.lbry.io).
|
||||
|
||||
### Communicating {#communicating}
|
||||
### Communicating
|
||||
|
||||
If you're engaged with or otherwise involved with either an online or in-person community that could make use of LBRY, we're happy to work with you in how to introduce LBRY to them. Email [Jeremy](mailto:jeremy@lbry.io) if you are interested in this.
|
||||
|
||||
## Translating {#translating}
|
||||
## Translating
|
||||
|
||||
Translations are not managed through Git or GitHub. Email [Josh](mailto:josh@lbry.io) if you'd like to join LBRY as a translator.
|
||||
|
||||
## Testing {#testing}
|
||||
## Testing
|
||||
|
||||
If you aren't a coder, or you're a lazy coder, one of the best ways you can contribute is testing!
|
||||
|
||||
|
@ -114,4 +97,4 @@ For any repos, you want to be a tester on, "Watch" the repo on GitHub. You will
|
|||
|
||||
If you're feeling moderately hard-core, you can also test `master` builds via [releases.lbry.io](http://releases.lbry.io/). If you're feeling super hard-core, you can compile `master` yourself, via the README.md or INSTALL.md in the associated repo.
|
||||
|
||||
**Note that you are using release candidates and especially master builds at your own risk. Back up your wallet first.**
|
||||
**Note that you are using release candidates and especially master builds at your own risk. Back up your wallet first.**
|
1
develop.md
Normal file
1
develop.md
Normal file
|
@ -0,0 +1 @@
|
|||
Development resources and guides
|
1
dist/index.html
vendored
1
dist/index.html
vendored
|
@ -1 +0,0 @@
|
|||
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>LBRY.tech</title><link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons" rel=stylesheet><link href="https://fonts.googleapis.com/css?family=Coda:400,800" rel=stylesheet><link href=/static/css/app.2409ba693df53d7a6fdc1c1587d7495a.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=/static/js/manifest.2ae2e69a05c33dfc65f8.js></script><script type=text/javascript src=/static/js/vendor.7b25de1838898f0022c5.js></script><script type=text/javascript src=/static/js/app.711d09e849bccaddc3aa.js></script></body></html>
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
dist/static/js/app.711d09e849bccaddc3aa.js
vendored
2
dist/static/js/app.711d09e849bccaddc3aa.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,2 +0,0 @@
|
|||
!function(r){var n=window.webpackJsonp;window.webpackJsonp=function(e,u,c){for(var f,i,p,a=0,l=[];a<e.length;a++)i=e[a],o[i]&&l.push(o[i][0]),o[i]=0;for(f in u)Object.prototype.hasOwnProperty.call(u,f)&&(r[f]=u[f]);for(n&&n(e,u,c);l.length;)l.shift()();if(c)for(a=0;a<c.length;a++)p=t(t.s=c[a]);return p};var e={},o={2:0};function t(n){if(e[n])return e[n].exports;var o=e[n]={i:n,l:!1,exports:{}};return r[n].call(o.exports,o,o.exports,t),o.l=!0,o.exports}t.m=r,t.c=e,t.d=function(r,n,e){t.o(r,n)||Object.defineProperty(r,n,{configurable:!1,enumerable:!0,get:e})},t.n=function(r){var n=r&&r.__esModule?function(){return r.default}:function(){return r};return t.d(n,"a",n),n},t.o=function(r,n){return Object.prototype.hasOwnProperty.call(r,n)},t.p="/",t.oe=function(r){throw console.error(r),r}}([]);
|
||||
//# sourceMappingURL=manifest.2ae2e69a05c33dfc65f8.js.map
|
|
@ -1 +0,0 @@
|
|||
{"version":3,"sources":["webpack:///webpack/bootstrap d1d5e470e65130beb831"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,IAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.2ae2e69a05c33dfc65f8.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap d1d5e470e65130beb831"],"sourceRoot":""}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
7
documentation.md
Normal file
7
documentation.md
Normal file
|
@ -0,0 +1,7 @@
|
|||
# Documentation lives here!
|
||||
|
||||
## Second level header
|
||||
|
||||
## Another second level header
|
||||
|
||||
### This is third level
|
14
index.html
14
index.html
|
@ -1,14 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||
<title>LBRY.tech</title>
|
||||
<link href='https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons' rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css?family=Coda:400,800" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<!-- built files will be auto injected -->
|
||||
</body>
|
||||
</html>
|
17
overview.md
Normal file
17
overview.md
Normal file
|
@ -0,0 +1,17 @@
|
|||
# Introduction to LBRY protocol #
|
||||
|
||||
![Placeholder](https://placehold.it/1200x600?text=Placeholder+Graphic)
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras pulvinar leo id nisl ullamcorper, non tristique nulla varius. Curabitur urna turpis, porta ac lectus vel, imperdiet semper mi. Integer sollicitudin, urna id imperdiet commodo, quam nunc ultrices dolor, eu laoreet risus ante nec purus. Vivamus eget ornare felis.
|
||||
|
||||
## Subtitle here ##
|
||||
|
||||
Morbi sed mauris libero. *Mauris blandit* sem vel libero ultrices, non porta elit rhoncus. Proin augue quam, fermentum eu malesuada a, convallis eget ligula. Vestibulum dapibus nisl eu risus blandit mattis. Quisque pretium quam id arcu aliquam imperdiet. Fusce bibendum venenatis ex eget bibendum. Cras dapibus justo vel libero cursus tincidunt. Etiam vel tincidunt augue. Proin venenatis, lorem sit amet posuere porttitor, risus est laoreet ipsum, sed interdum elit augue sed lectus. Cras dignissim odio ut commodo vestibulum.
|
||||
|
||||
## Subtitle here ##
|
||||
|
||||
Morbi sed mauris libero. *Mauris blandit* sem vel libero ultrices, non porta elit rhoncus. Proin augue quam, fermentum eu malesuada a, convallis eget ligula. Vestibulum dapibus nisl eu risus blandit mattis. Quisque pretium quam id arcu aliquam imperdiet. Fusce bibendum venenatis ex eget bibendum. Cras dapibus justo vel libero cursus tincidunt. Etiam vel tincidunt augue. Proin venenatis, lorem sit amet posuere porttitor, risus est laoreet ipsum, sed interdum elit augue sed lectus. Cras dignissim odio ut commodo vestibulum.
|
||||
|
||||
## Subtitle here ##
|
||||
|
||||
Morbi sed mauris libero. *Mauris blandit* sem vel libero ultrices, non porta elit rhoncus. Proin augue quam, fermentum eu malesuada a, convallis eget ligula. Vestibulum dapibus nisl eu risus blandit mattis. Quisque pretium quam id arcu aliquam imperdiet. Fusce bibendum venenatis ex eget bibendum. Cras dapibus justo vel libero cursus tincidunt. Etiam vel tincidunt augue. Proin venenatis, lorem sit amet posuere porttitor, risus est laoreet ipsum, sed interdum elit augue sed lectus. Cras dignissim odio ut commodo vestibulum.
|
9667
package-lock.json
generated
9667
package-lock.json
generated
File diff suppressed because it is too large
Load diff
88
package.json
88
package.json
|
@ -2,85 +2,27 @@
|
|||
"name": "lbry.tech",
|
||||
"version": "1.0.0",
|
||||
"description": "A Vue.js project",
|
||||
"author": "Kristian Polso <kristian.polso@gmail.com>",
|
||||
"author": "",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
|
||||
"start": "node server.js",
|
||||
"lint": "eslint --ext .js,.vue src",
|
||||
"build": "node build/build.js"
|
||||
"start": "./node_modules/vuepress/bin/vuepress.js build && node server.js"
|
||||
},
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"highlight.js": "^9.12.0",
|
||||
"material-design-icons-iconfont": "^3.0.3",
|
||||
"vue": "^2.5.16",
|
||||
"vue-highlightjs": "^1.3.3",
|
||||
"vue-image-upload-resize": "^1.1.6",
|
||||
"vue-images-loaded": "^1.1.2",
|
||||
"vue-resource": "^1.5.0",
|
||||
"vuetify": "^1.0.16",
|
||||
"cors": "^2.8.4",
|
||||
"express": "^4.16.3",
|
||||
"heroku-ssl-redirect": "0.0.4",
|
||||
"highlight.js": "^9.12.0",
|
||||
"node-sass": "^4.7.2",
|
||||
"sass-loader": "^7.0.1",
|
||||
"node-sass": "^4.8.3",
|
||||
"request": "^2.85.0",
|
||||
"vue": "^2.5.2",
|
||||
"vue-highlightjs": "^1.3.3",
|
||||
"vue-image-upload-resize": "^1.1.5",
|
||||
"vue-images-loaded": "^1.1.2",
|
||||
"vue-resource": "^1.4.0",
|
||||
"vue-router": "^3.0.1",
|
||||
"vuetify": "^1.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"autoprefixer": "^7.1.2",
|
||||
"babel-core": "^6.22.1",
|
||||
"babel-eslint": "^7.1.1",
|
||||
"babel-helper-vue-jsx-merge-props": "^2.0.3",
|
||||
"babel-loader": "^7.1.1",
|
||||
"babel-plugin-syntax-jsx": "^6.18.0",
|
||||
"babel-plugin-transform-runtime": "^6.22.0",
|
||||
"babel-plugin-transform-vue-jsx": "^3.5.0",
|
||||
"babel-preset-env": "^1.3.2",
|
||||
"babel-preset-stage-2": "^6.22.0",
|
||||
"chalk": "^2.0.1",
|
||||
"copy-webpack-plugin": "^4.0.1",
|
||||
"css-loader": "^0.28.0",
|
||||
"eslint": "^3.19.0",
|
||||
"eslint-config-standard": "^10.2.1",
|
||||
"eslint-friendly-formatter": "^3.0.0",
|
||||
"eslint-loader": "^1.7.1",
|
||||
"eslint-plugin-html": "^3.0.0",
|
||||
"eslint-plugin-import": "^2.7.0",
|
||||
"eslint-plugin-node": "^5.2.0",
|
||||
"eslint-plugin-promise": "^3.4.0",
|
||||
"eslint-plugin-standard": "^3.0.1",
|
||||
"extract-text-webpack-plugin": "^3.0.0",
|
||||
"file-loader": "^1.1.4",
|
||||
"friendly-errors-webpack-plugin": "^1.6.1",
|
||||
"html-webpack-plugin": "^2.30.1",
|
||||
"node-notifier": "^5.1.2",
|
||||
"node-sass": "^4.7.2",
|
||||
"optimize-css-assets-webpack-plugin": "^3.2.0",
|
||||
"ora": "^1.2.0",
|
||||
"portfinder": "^1.0.13",
|
||||
"postcss-import": "^11.0.0",
|
||||
"postcss-loader": "^2.0.8",
|
||||
"postcss-url": "^7.2.1",
|
||||
"rimraf": "^2.6.0",
|
||||
"sass-loader": "^6.0.6",
|
||||
"semver": "^5.3.0",
|
||||
"shelljs": "^0.7.6",
|
||||
"uglifyjs-webpack-plugin": "^1.1.1",
|
||||
"url-loader": "^0.5.8",
|
||||
"vue-loader": "^13.3.0",
|
||||
"vue-style-loader": "^3.0.1",
|
||||
"vue-template-compiler": "^2.5.2",
|
||||
"webpack": "^3.6.0",
|
||||
"webpack-bundle-analyzer": "^2.9.0",
|
||||
"webpack-dev-server": "^2.9.1",
|
||||
"webpack-merge": "^4.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6.0.0",
|
||||
"npm": ">= 3.0.0"
|
||||
},
|
||||
"browserslist": [
|
||||
"> 1%",
|
||||
"last 2 versions",
|
||||
"not ie <= 8"
|
||||
]
|
||||
"vuepress": "^0.7.0"
|
||||
}
|
||||
}
|
||||
|
|
5
resources.md
Normal file
5
resources.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Important Resources #
|
||||
|
||||
- [Discord](https://discord.gg/YjYbwhS)
|
||||
- [Slack](https://chat.lbry.io/)
|
||||
- [Reddit](https://www.reddit.com/r/lbry/)
|
|
@ -8,7 +8,7 @@ var request = require('request');
|
|||
var cors = require('cors');
|
||||
|
||||
app = express();
|
||||
app.use(serveStatic(__dirname + "/dist"));
|
||||
app.use(serveStatic(__dirname + "/.vuepress/dist"));
|
||||
|
||||
app.use(cors());
|
||||
|
||||
|
|
12
src/.gitrepo
12
src/.gitrepo
|
@ -1,12 +0,0 @@
|
|||
; DO NOT EDIT (unless you know what you are doing)
|
||||
;
|
||||
; This subdirectory is a git "subrepo", and this file is maintained by the
|
||||
; git-subrepo command. See https://github.com/git-commands/git-subrepo#readme
|
||||
;
|
||||
[subrepo]
|
||||
remote = https://github.com/vuetifyjs/templates-common.git
|
||||
branch = subrepo/webpack-src
|
||||
commit = 090741fa8ba4da0c6f85db64eff64550704123e1
|
||||
parent = e05204fc0583a8c99f1963ce873eba1266838215
|
||||
method = merge
|
||||
cmdver = 0.4.0
|
73
src/App.vue
73
src/App.vue
|
@ -1,73 +0,0 @@
|
|||
<template>
|
||||
<v-app>
|
||||
|
||||
<v-toolbar clipped-left app scroll-off-screen>
|
||||
|
||||
<v-toolbar-title class="align-center">
|
||||
<span class="title"><router-link to="/">LBRY.tech</router-link></span>
|
||||
</v-toolbar-title>
|
||||
<v-spacer></v-spacer>
|
||||
<v-toolbar-items class="hidden-sm-and-down">
|
||||
<v-btn flat to="/overview">Overview</v-btn>
|
||||
<v-btn flat to="/documentation">Documentation</v-btn>
|
||||
<v-btn flat to="/contribute">How to Contribute</v-btn>
|
||||
<v-btn flat to="/develop">How to Develop</v-btn>
|
||||
<v-btn flat to="/resources">Resources</v-btn>
|
||||
</v-toolbar-items>
|
||||
|
||||
</v-toolbar>
|
||||
|
||||
<v-content>
|
||||
|
||||
<v-alert type="error" value="true" id="in-development-alert" class="pt-5 pb-5 ma-0">
|
||||
<strong>This website is in beta.</strong> We are actively developing this website to showcase and teach about the LBRY protocol. All things may not work as expected!<br/>This website is open source and you can <a href="https://github.com/lbryio/lbry.tech" target="_blank">contribute to it on Github</a>.</v-alert>
|
||||
</v-alert>
|
||||
|
||||
<router-view></router-view>
|
||||
|
||||
</v-content>
|
||||
|
||||
</v-app>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
export default {
|
||||
data () {
|
||||
return {}
|
||||
},
|
||||
name: 'App'
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
html {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
pre {
|
||||
text-align: left;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.toolbar__title {
|
||||
a {
|
||||
text-decoration: none;
|
||||
&:hover {
|
||||
color: black;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#in-development-alert {
|
||||
a {
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
|
@ -1,41 +0,0 @@
|
|||
<template>
|
||||
|
||||
<v-container>
|
||||
|
||||
<v-layout row wrap>
|
||||
|
||||
<v-flex xs12 xl6 offset-xl3>
|
||||
|
||||
<h1 class="display-1">
|
||||
<p>How to Contribute</p>
|
||||
</h1>
|
||||
|
||||
</v-flex>
|
||||
|
||||
</v-layout>
|
||||
|
||||
<edit-link url="https://github.com/lbryio/lbry.tech/blob/master/src/components/pages/Contribute.vue"></edit-link>
|
||||
|
||||
</v-container>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import EditLink from '@/components/partials/EditLink'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'edit-link': EditLink
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
}
|
||||
},
|
||||
name: 'Contribute'
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
</style>
|
|
@ -1,41 +0,0 @@
|
|||
<template>
|
||||
|
||||
<v-container>
|
||||
|
||||
<v-layout row wrap>
|
||||
|
||||
<v-flex xs12 xl6 offset-xl3>
|
||||
|
||||
<h1 class="display-1">
|
||||
<p>Development resources and guides</p>
|
||||
</h1>
|
||||
|
||||
</v-flex>
|
||||
|
||||
</v-layout>
|
||||
|
||||
<edit-link url="https://github.com/lbryio/lbry.tech/blob/master/src/components/pages/Develop.vue"></edit-link>
|
||||
|
||||
</v-container>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import EditLink from '@/components/partials/EditLink'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'edit-link': EditLink
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
}
|
||||
},
|
||||
name: 'Develop'
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
</style>
|
|
@ -1,62 +0,0 @@
|
|||
<template>
|
||||
|
||||
<div>
|
||||
|
||||
<v-navigation-drawer v-model="drawer" clipped app>
|
||||
|
||||
<v-list dense>
|
||||
<v-list-tile>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>Link 1</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
<v-list-tile>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>Link 2</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
</v-list>
|
||||
|
||||
</v-navigation-drawer>
|
||||
|
||||
<v-container>
|
||||
|
||||
<v-layout row wrap>
|
||||
|
||||
<v-flex xs12 xl6 offset-xl3>
|
||||
|
||||
<h1 class="display-1">
|
||||
<p>Documentation lives here!</p>
|
||||
</h1>
|
||||
|
||||
</v-flex>
|
||||
|
||||
</v-layout>
|
||||
|
||||
<edit-link url="https://github.com/lbryio/lbry.tech/blob/master/src/components/pages/Documentation.vue"></edit-link>
|
||||
|
||||
</v-container>
|
||||
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import EditLink from '@/components/partials/EditLink'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'edit-link': EditLink
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
}
|
||||
},
|
||||
name: 'Documentation'
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
</style>
|
|
@ -1,73 +0,0 @@
|
|||
<template>
|
||||
|
||||
<div>
|
||||
|
||||
<hook></hook>
|
||||
|
||||
<v-container fluid>
|
||||
|
||||
<v-layout row wrap>
|
||||
|
||||
<v-flex xs12 xl6 offset-xl3>
|
||||
|
||||
<h1>HTML Ipsum Presents</h1>
|
||||
|
||||
<p><strong>Pellentesque habitant morbi tristique</strong> senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. <em>Aenean ultricies mi vitae est.</em> Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, <code>commodo vitae</code>, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. <a href="#">Donec non enim</a> in turpis pulvinar facilisis. Ut felis.</p>
|
||||
|
||||
<h2>Header Level 2</h2>
|
||||
|
||||
<ol>
|
||||
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li>
|
||||
<li>Aliquam tincidunt mauris eu risus.</li>
|
||||
</ol>
|
||||
|
||||
<blockquote><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus magna. Cras in mi at felis aliquet congue. Ut a est eget ligula molestie gravida. Curabitur massa. Donec eleifend, libero at sagittis mollis, tellus est malesuada tellus, at luctus turpis elit sit amet quam. Vivamus pretium ornare est.</p></blockquote>
|
||||
|
||||
<h3>Header Level 3</h3>
|
||||
|
||||
<ul>
|
||||
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li>
|
||||
<li>Aliquam tincidunt mauris eu risus.</li>
|
||||
</ul>
|
||||
|
||||
<pre><code>
|
||||
#header h1 a {
|
||||
display: block;
|
||||
width: 300px;
|
||||
height: 80px;
|
||||
}
|
||||
</code></pre>
|
||||
|
||||
</v-flex>
|
||||
|
||||
</v-layout>
|
||||
|
||||
<edit-link url="https://github.com/lbryio/lbry.tech/blob/master/src/components/pages/Home.vue"></edit-link>
|
||||
|
||||
</v-container>
|
||||
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import Hook from '@/components/partials/Hook'
|
||||
import EditLink from '@/components/partials/EditLink'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'edit-link': EditLink,
|
||||
'hook': Hook
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
}
|
||||
},
|
||||
name: 'Home'
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
</style>
|
|
@ -1,65 +0,0 @@
|
|||
<template>
|
||||
|
||||
<v-container>
|
||||
|
||||
<v-layout row wrap>
|
||||
|
||||
<v-flex xs12 xl6 offset-xl3>
|
||||
|
||||
<h1 class="display-1">
|
||||
<p>Introduction to LBRY protocol</p>
|
||||
</h1>
|
||||
|
||||
<p><img src="https://placehold.it/1200x600?text=Placeholder+Graphic"></p>
|
||||
|
||||
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras pulvinar leo id nisl ullamcorper, non tristique nulla varius. Curabitur urna turpis, porta ac lectus vel, imperdiet semper mi. Integer sollicitudin, urna id imperdiet commodo, quam nunc ultrices dolor, eu laoreet risus ante nec purus. Vivamus eget ornare felis.</p>
|
||||
|
||||
<h2 class="title">
|
||||
<p>Subtitle here</p>
|
||||
</h2>
|
||||
|
||||
<p>Morbi sed mauris libero. <strong>Mauris blandit</strong> sem vel libero ultrices, non porta elit rhoncus. Proin augue quam, fermentum eu malesuada a, convallis eget ligula. Vestibulum dapibus nisl eu risus blandit mattis. Quisque pretium quam id arcu aliquam imperdiet. Fusce bibendum venenatis ex eget bibendum. Cras dapibus justo vel libero cursus tincidunt. Etiam vel tincidunt augue. Proin venenatis, lorem sit amet posuere porttitor, risus est laoreet ipsum, sed interdum elit augue sed lectus. Cras dignissim odio ut commodo vestibulum. </p>
|
||||
|
||||
<h2 class="title">
|
||||
<p>Subtitle here</p>
|
||||
</h2>
|
||||
|
||||
<p>Morbi sed mauris libero. <strong>Mauris blandit</strong> sem vel libero ultrices, non porta elit rhoncus. Proin augue quam, fermentum eu malesuada a, convallis eget ligula. Vestibulum dapibus nisl eu risus blandit mattis. Quisque pretium quam id arcu aliquam imperdiet. Fusce bibendum venenatis ex eget bibendum. Cras dapibus justo vel libero cursus tincidunt. Etiam vel tincidunt augue. Proin venenatis, lorem sit amet posuere porttitor, risus est laoreet ipsum, sed interdum elit augue sed lectus. Cras dignissim odio ut commodo vestibulum. </p>
|
||||
|
||||
<h2 class="title">
|
||||
<p>Subtitle here</p>
|
||||
</h2>
|
||||
|
||||
<p>Morbi sed mauris libero. <strong>Mauris blandit</strong> sem vel libero ultrices, non porta elit rhoncus. Proin augue quam, fermentum eu malesuada a, convallis eget ligula. Vestibulum dapibus nisl eu risus blandit mattis. Quisque pretium quam id arcu aliquam imperdiet. Fusce bibendum venenatis ex eget bibendum. Cras dapibus justo vel libero cursus tincidunt. Etiam vel tincidunt augue. Proin venenatis, lorem sit amet posuere porttitor, risus est laoreet ipsum, sed interdum elit augue sed lectus. Cras dignissim odio ut commodo vestibulum. </p>
|
||||
|
||||
</v-flex>
|
||||
|
||||
</v-layout>
|
||||
|
||||
<edit-link url="https://github.com/lbryio/lbry.tech/blob/master/src/components/pages/Overview.vue"></edit-link>
|
||||
|
||||
</v-container>
|
||||
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import EditLink from '@/components/partials/EditLink'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'edit-link': EditLink
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
}
|
||||
},
|
||||
name: 'Overview'
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
</style>
|
|
@ -1,51 +0,0 @@
|
|||
<template>
|
||||
|
||||
<v-container>
|
||||
|
||||
<v-layout row wrap>
|
||||
|
||||
<v-flex xs12 xl6 offset-xl3>
|
||||
|
||||
<h1 class="display-1">
|
||||
<p>Important Resources</p>
|
||||
</h1>
|
||||
|
||||
<p>
|
||||
<ul>
|
||||
<li><a href="https://discord.gg/YjYbwhS" target="_blank">Discord</a></li>
|
||||
<li><a href="https://chat.lbry.io/" target="_blank">Slack</a></li>
|
||||
<li><a href="https://www.reddit.com/r/lbry/" target="_blank">Reddit</a></li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
</v-flex>
|
||||
|
||||
</v-layout>
|
||||
|
||||
<edit-link url="https://github.com/lbryio/lbry.tech/blob/master/src/components/pages/Resources.vue"></edit-link>
|
||||
|
||||
</v-container>
|
||||
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import EditLink from '@/components/partials/EditLink'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'edit-link': EditLink
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
}
|
||||
},
|
||||
name: 'Resources'
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
</style>
|
|
@ -1,23 +0,0 @@
|
|||
<template>
|
||||
<div class="edit-link mt-3">
|
||||
<v-divider></v-divider>
|
||||
<p class="mt-2"><a v-bind:href="url" target="_blank" class="grey--text text--darken-1">Edit this page on Github</a></p>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: ['url'],
|
||||
data () {
|
||||
return {
|
||||
}
|
||||
},
|
||||
name: 'EditLink'
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
|
||||
|
||||
</style>
|
27
src/main.js
27
src/main.js
|
@ -1,27 +0,0 @@
|
|||
// The Vue build version to load with the `import` command
|
||||
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
|
||||
import Vue from 'vue'
|
||||
import App from './App'
|
||||
import router from './router'
|
||||
import Vuetify from 'vuetify'
|
||||
import 'vuetify/dist/vuetify.min.css'
|
||||
import VueResource from 'vue-resource'
|
||||
import VueHighlightJS from 'vue-highlightjs'
|
||||
|
||||
Vue.use(Vuetify, {
|
||||
theme: {
|
||||
primary: '#155b4a'
|
||||
}
|
||||
})
|
||||
Vue.use(VueResource)
|
||||
Vue.use(VueHighlightJS)
|
||||
|
||||
Vue.config.productionTip = false
|
||||
|
||||
/* eslint-disable no-new */
|
||||
new Vue({
|
||||
el: '#app',
|
||||
router,
|
||||
components: { App },
|
||||
template: '<App/>'
|
||||
})
|
|
@ -1,65 +0,0 @@
|
|||
import Vue from 'vue'
|
||||
import Router from 'vue-router'
|
||||
import Home from '@/components/pages/Home'
|
||||
import Overview from '@/components/pages/Overview'
|
||||
import Documentation from '@/components/pages/Documentation'
|
||||
import Contribute from '@/components/pages/Contribute'
|
||||
import Develop from '@/components/pages/Develop'
|
||||
import Resources from '@/components/pages/Resources'
|
||||
import Step1 from '@/components/partials/Step1'
|
||||
import Step2 from '@/components/partials/Step2'
|
||||
import Step3 from '@/components/partials/Step3'
|
||||
|
||||
Vue.use(Router)
|
||||
|
||||
export default new Router({
|
||||
routes: [
|
||||
{
|
||||
path: '/',
|
||||
name: 'Home',
|
||||
component: Home,
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
name: 'Step1',
|
||||
component: Step1
|
||||
},
|
||||
{
|
||||
path: 'step-2',
|
||||
name: 'Step2',
|
||||
component: Step2
|
||||
},
|
||||
{
|
||||
path: 'step-3',
|
||||
name: 'Step3',
|
||||
component: Step3
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/overview',
|
||||
name: 'Overview',
|
||||
component: Overview,
|
||||
},
|
||||
{
|
||||
path: '/documentation',
|
||||
name: 'Documentation',
|
||||
component: Documentation,
|
||||
},
|
||||
{
|
||||
path: '/contribute',
|
||||
name: 'Contribute',
|
||||
component: Contribute,
|
||||
},
|
||||
{
|
||||
path: '/develop',
|
||||
name: 'Develop',
|
||||
component: Develop,
|
||||
},
|
||||
{
|
||||
path: '/resources',
|
||||
name: 'Resources',
|
||||
component: Resources,
|
||||
}
|
||||
]
|
||||
})
|
Loading…
Reference in a new issue