https://coursehunters.net/course/vue-dlya-dizaynerov
https://github.com/thomaswangio/vue-admin-dashboard
https://www.figma.com/file/BDvnImiFgrZR4bopmMD7vfbl?node-id=265:1305
https://designcode.io/design-system
https://designcode.io/design-system-in-figma
https://apexcharts.com/vue-chart-demos/
https://datastudio.google.com/
https://support.google.com/analytics/answer/1008015?hl=ru
https://firebase.google.com/docs/firestore
https://github.com/gdg-tangier/vue-firestore
https://alligator.io/vuejs/vue-cloud-firestore/
https://firebase.google.com/docs/admin/setup
https://www.npmjs.com/package/@netlify/zip-it-and-ship-it
https://firebase.google.com/docs/reference/admin/
https://firebase.google.com/docs/reference/admin/node/admin.firestore
https://googleapis.dev/nodejs/firestore/latest/Query.html
https://cli.vuejs.org/guide/deployment.html#netlify
In settings we can change site name
https://www.netlify.com/docs/identity/
or
Then on settings tab, we must change registration preferences to Invite only
To use the service in your site, you can add the Netlify Identity widget npm i -S netlify-identity-widget
When using the widget on localhost, it will prompt for your Netlify SiteURL the first time it is opened.
You can invite new Identity users to your site from the Identity tab. This will send email invitations to the addresses you enter.
Accept the invite
Get token from url
And go to http://localhost:8080/ + token
address
Create password
Build your own form and integrate it using gotrue-js npm i -S gotrue-js
Get Identity API endpoint
https://www.netlify.com/docs/functions/
Edit settings
Create functions
folder in root directory with lambda functions
Edit deploy settings
Change build command
When we push project to github, our functions will automatically deploy
Install netlify-lambda npm install netlify-lambda
Create netlify.toml
configuration file in root directory
[build]
functions = "./functions"
Copy functions
folder with lambda functions in src directory
See example
Grab npm scripts
{
"scripts": {
"start:lambda": "netlify-lambda serve src/functions",
"build:lambda": "netlify-lambda build src/functions"
}
}
Run npm run start:lambda
Go to http://localhost:9000/hello
If your Netlify function has additional dependencies, there’s a chance that your function call may fail as a result of node modules not being imported as expected. To ensure that your serverless function has access to the correct dependencies, you can use @netlify/zip-it-and-ship-it
package.
Install npm i -S @netlify/zip-it-and-ship-it
https://github.com/netlify/netlify-lambda#webpack-configuration
https://www.netlify.com/blog/2018/09/14/forms-and-functions/
https://medium.com/@saphidev/use-firebase-admin-with-netlify-lambda-functions-free-483d3b390e3a
And then be sure to do the following netlify/netlify-lambda#112 (comment)
//./config/webpack.functions.js
const nodeExternals = require("webpack-node-externals");
module.exports = {
externals: [nodeExternals()]
};
{
"scripts": {
"start:lambda": "netlify-lambda serve src/functions --config ./config/webpack.functions.js",
"build:lambda": "netlify-lambda build src/functions --config ./config/webpack.functions.js"
}
}
You also need dependencies npmi -D webpack-node-externals
if you get encoding not found
Install npm i -S encoding
https://www.bridgestew.com/journal/how-to-indieweb-syndicate/
https://github.com/netlify/functions
https://github.com/netlify-labs/functions-site
https://github.com/DavidWells/netlify-functions-workshop
Create new app
Setup permissions
In scopes section type chat
and select Send messages as Your_App_Name
Then install app to your workspace
Get token
Create channel on your workspace
Send request
https://api.slack.com/methods/chat.postMessage
Create new report
Select your data source
We can change background color
Add a chart and setup
Then get embed code
Result
Make a copy because we need to change the background for the darkmod
https://github.com/gdg-tangier/vue-firestore
// first render when component mounted
firestore() {
return {
traffic: {
ref: db.collection("traffic"),
objects: true,
resolve: data => {
console.log(data); // traffic
const activeUsers = data.activeUsers; // traffic.activeUsers
},
reject: err => {
console.log(err);
}
}
};
}
// manually binding docs, for example we click to button and run this
this.$binding("newUsers", db.collection("traffic").doc("newUsers"))
.then(data => {
console.log(data); // newUsers
})
.catch(err => {
console.log(err);
});
Generate new private key
Install npm i -S firebase-admin
https://firebase.google.com/docs/firestore/security/rules-structure
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /traffic/{document=**} {
allow read;
}
}
}