This project is the official website of REVATI. REVATI (revati.jp) is a multi-gaming and esports organization based in Japan.
This website supports Japanese, English, and Korean languages.
Localization is managed via ja.json, en.json, and ko.json files located in the src/lib/scripts/i18n/locales/ directory.
- Frontend: Svelte 5, SvelteKit 2, SCSS
- Language: TypeScript 5 (strict mode)
- Hosting: Cloudflare Pages
- Repository: https://github.com/revati-jp/website
- Clean install:
pnpm install --frozen-lockfile - Install deps:
pnpm install - Start dev server:
pnpm run devpnpm run licensesto update licenses data
- Build:
pnpm run build - Check & format & lint:
pnpm run check && pnpm run format && pnpm run lint
- Use TypeScript strict mode.
- Use
===and!==(Strict Equality). - No implicit booleans in conditionals (e.g.,
if (0 < count)orif (user !== null)).
- Use
- Use SCSS instead of Vanilla CSS.
src/lib/stylesheets/variables/directory contains utility SCSS files_color.scss,_mixin.scss, and_dimension.scss. To use them in SCSS files or<style lang="scss">blocks, import as@use '$lib/stylesheets/variables/color' as *;.
- Follow the Svelte 5 best practices.
- Use runes instead of reactive
$:statements.
- Use runes instead of reactive
- When using the
z-indexproperty, ensure you update the Z-Index list indocs/SPECIFICATION.md. - When adding new CSS variables (not Sass variables), ensure you update the CSS Variable list in
docs/SPECIFICATION.md.
docs/SPECIFICATION.md:- Z-Index list
- CSS Variable list (not Sass variables)
- Font list
- API Endpoint list