web application providing an intergrated ecosystem/suite of tools and information for Genshin Impact Metagaming and Theorycrafting.
Imrinsul provides an intergrated ecosystem and suite of tools
- Database: ingame data archive for characters, weapons, artifacts, ect.
- RAG Chatbot: AI answers based on accuarate and up-to-date information stored in a vector knowledge base.
- Calculators (WIP): webui to calculate character/team damage output and energy recharge requirements
- Node.js >= 18
- pnpm / yarn / npm
git clone https://github.com/lambdv/Irminsul
cd Irminsul
npm install
Create a .env
file in apps/Irminsul/ with the following variables:
DATABASE_URL="" # setup neon directly through https://neon.tech/ or through vercel
# if using a different database type, change code in src/db/db.ts
AUTH_DRIZZLE_URL="" # https://authjs.dev/getting-started/adapters/drizzle?framework=next-js
# auth provider with authjs using discord https://discord.com/developers/docs/intro
AUTH_DISCORD_ID=""
AUTH_DISCORD_SECRET=""
AUTH_SECRET="" # secret key for authjs. made locally using `openssl rand -base64 32`
STRIPE_SECRET_KEY="" # for payments integration using stripe
STRIPE_WEBHOOK_SECRET="" # shouldn't break anything if not set up in most cases
npm run dev
npm run build
npm run start
docker build -t irminsul .
docker run -p 3000:3000 irminsul
├── apps/
│ ├── Imrinsul/ # main applicaiton
│ └── tavern/ # websocket server
│
├── packages/
│ ├── genshindata/ # genshin json data and image assets
│ └── scraper/ # scripts to get data and assets
│
└── README.md # what you're reading now. i think