Skip to content

Instantly share code, notes, and snippets.

@RSamaium
RSamaium / fix-esm.js
Created May 14, 2023 07:29
code that automatically adds .js at the end of import/from
import { glob } from 'glob'
import { readFile, writeFile } from 'fs/promises'
import path from 'path';
export function addFileExtension(importStatement) {
const staticImportRegex = /(import\s+(?:.+\s+from\s+)?['"])(\.\/[^'\"]+)(?<!\.js)(['"])/g;
const dynamicImportRegex = /(import\(['"])(\.\/[^'\"]+)(?<!\.js)(['"]\))/g;
const reexportRegex = /(export .+ from ['"])(\.\/[^'\"]+)(?<!\.js)(['"])/g;
importStatement = importStatement.replace(staticImportRegex, "$1$2.js$3");
@RSamaium
RSamaium / bard.html
Created May 13, 2023 10:57
Bard Generation
<link href="https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/2.2.23/tailwind.min.css" rel="stylesheet" />
<header class="bg-blue-500">
<div class="container mx-auto flex justify-between items-center py-5">
<a href="/" class="text-white font-bold text-xl">My Website</a>
<nav class="flex items-center">
<a href="/about" class="text-white mr-8">About</a>
<a href="/contact" class="text-white">Contact</a>
</nav>
</div>
@RSamaium
RSamaium / gpt4.html
Created May 13, 2023 10:50
ChatGPT-4 generation
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My E-commerce Website</title>
<link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.16/dist/tailwind.min.css" rel="stylesheet">
</head>
<body>
<nav class="bg-blue-500 p-6">
@RSamaium
RSamaium / exercice_visiplus.js
Last active October 23, 2022 10:59
Utilisez TypeScript
import * as fs from 'fs'
class GameSampleMap {
// Pourrait-on avoir un décorateur @GameMap() au lieu des deux propriétés ?
id = 'mymap'
file = './maps/map.tiled'
// ---
// mettez les types.
layers = []
import { RpgEvent, EventData, RpgPlayer } from '@rpgjs/server'
import { NlpManager } from 'node-nlp'
const trainNpc = async () => {
const manager = new NlpManager({ languages: ['en'], forceNER: true });
manager.addDocument('en', 'goodbye for now', 'greetings.bye');
manager.addDocument('en', 'bye bye take care', 'greetings.bye');
manager.addDocument('en', 'okay see you later', 'greetings.bye');
manager.addDocument('en', 'bye for now', 'greetings.bye');
manager.addDocument('en', 'i must go', 'greetings.bye');
@RSamaium
RSamaium / src-modules-main-client-index.ts
Created September 24, 2022 13:28
add prompt in gui array
import { RpgClient, RpgModule, RpgSceneMap } from '@rpgjs/client'
import { Characters } from './characters/characters';
import { MapTilesets } from './maps/map';
import prompt from './gui/prompt.vue'
@RpgModule<RpgClient>({
spritesheets: [
MapTilesets,
Characters
],
@RSamaium
RSamaium / prompt.vue
Last active September 23, 2022 16:11
Menu in RPGJS
<template>
<div id="prompt">
<rpg-window position="middle">
<p>{{ text }}</p>
<input type="text" v-model="promptText">
<p class="small">(Enter to validate)</p>
</rpg-window>
</div>
</template>
@Intent('greeting')
greeting() {
> Hello !
}
import axios from 'axios'
import code from './main.converse'
const SERVER_ACCESS_TOKEN = ''
export default {
code,
nlp: {
async witAi(text) {
try {
@Intent('booking', [
'I want to book accommodation today',
'I get a room'
])
book() {
if (unknown :intent.date) {
> Start again by giving a date
return
}
> Ok, I take your order { :intent.date.value }