Skip to content

Instantly share code, notes, and snippets.

View HectorBlisS's full-sized avatar
馃挱
Learning as a past time activity

BlisS HectorBlisS

馃挱
Learning as a past time activity
View GitHub Profile
const faker = require('@faker-js/faker').faker // commonjs
const PrismaClient = require('@prisma/client').PrismaClient
const prisma = new PrismaClient()
const getProduct = ()=> {
const name = faker.commerce.productName()
return ({
slug:faker.helpers.slugify(name),
name,
@HectorBlisS
HectorBlisS / youtube.tsx
Created August 7, 2022 15:06
Youtube_Aprende a usar el Fetcher de Remix
import { useLoaderData, useFetcher } from 'remix';
import type { LoaderFunction, ActionFunction } from 'remix';
import { useEffect, useState } from 'react';
const videoIds = [
'57IcpS8x7Ig',
'vjYRTMLoMfs',
'jkNzbkoNFm0',
'43KpZYk8_2E',
'I6eZDxVKj08',
@HectorBlisS
HectorBlisS / Temario_Principios_fullstack.md
Last active August 3, 2022 19:03
Temarios Cursos presenciales 2022

Comenzando con desarrollo web Full-stack

A. Server side rendering

A.1. Dominando el "request - response"
A.2. El trabajo de un servidor
A.3. Entregar s贸lo lo necesario
A.4. El mito del SPA(single page app)
A.5. Servidor http con s贸lo NodeJS
A.6. Un cl谩sico: ExpressJS
name: Fly Deploy
on:
push:
branches:
- master
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}
jobs:
deploy:
name: Deploy app
import { initializeApp } from 'firebase/app';
import {
getAuth,
signInWithEmailAndPassword,
onAuthStateChanged,
signOut,
} from 'firebase/auth';
const firebaseConfig = {
apiKey: '',
import './App.css';
function App() {
const handleSubmit = async (event) => {
event.preventDefault();
const { target } = event;
const form = {
name: target.name.value,
email: target.email.value,
import mongoose from 'mongoose';
// import for model registration
import Video from '~/db/models/Video';
import Course from '~/db/models/Course';
import User from '~/db/models/User';
import Offer from '~/db/models/Offer';
import Module from '~/db/models/Module';
import Order from '~/db/models/Order';
import { getSession } from '~/sessions';
import { json, LoaderFunction } from "remix";
import Stripe from 'stripe'
import dbConnection from "~/db/mongoose.server";
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY)
export async function action({ request }): LoaderFunction {
if (request.method !== 'POST') return;
const webhookSecret = process.env.STRIPE_SIGN;
const conekta = require("conekta");
//conekta.api_key = process.env.ENV === 'production' ? process.env.CONEKTA_KEY : process.env.CONEKTA_KEY_DEV
conekta.api_key = process.env.CONEKTA_KEY;
conekta.api_version = "2.0.0";
conekta.locale = "es";
controller.pay = (req, res) => {
//conekta payment
const { conektaToken, plazo, application, cupon } = req.body;
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ingress-service
annotations:
kubernetes.io/ingress.class: 'nginx'
nginx.ingress.kubernetes.io/use-regex: 'true'
nginx.ingress.kubernetes.io/rewrite-target: /$1
spec:
rules: