iArt.ai
AI 모션 그래픽 소프트웨어, 누구나 사용할 수 있는 After Effects 대안, 텍스트 프롬프트로 몇 분 안에 애니메이션·설명 영상 제작
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Portal do słuchania i „podróżowania” po muzyce (metal, prog, jazz):
Każda płyta ma link do Spotify i Tidal (bezpośredni, jeśli MusicBrainz go zna; inaczej wyszukiwanie).
Nie budujemy własnej bazy wiedzy. Katalog jest w zewnętrznych bazach, kluczem jest MBID (MusicBrainz ID):
| Co | Źródło |
|---|---|
| płyty, artyści, składy (kto grał na jakim nagraniu), członkowie zespołów, linki | MusicBrainz API (src/lib/musicbrainz.ts) |
| opisy | Wikipedia (pl, potem en) — tytuł artykułu z relacji MB wikipedia / wikidata (src/lib/wikipedia.ts) |
| okładki | Cover Art Archive (po MBID release-group) |
| premiery, best of | plik purenewshit.html (scripts/import-pns.ts) |
| użytkownicy, preferencje, oceny, komentarze | nasz Postgres (src/db/schema.ts) |
Odpowiedzi API są buforowane w tabeli api_cache (wyszukiwanie 1 dzień, lookup 7 dni, Wikipedia 14 dni). MusicBrainz wymaga ≤1 zapytania/s i własnego User-Agent — klient to egzekwuje.
Next.js 15 (App Router, server actions, TypeScript) · Tailwind 4 · Drizzle ORM + PostgreSQL · Auth.js v5.
Potrzebny tylko Node.js 20+.
cp .env.example .env # domyślnie DATABASE_URL="" → baza PGlite w pliku ./data/pglite
npm install
npm run setup # migracje + import premier/best of z data/purenewshit.html
npm run dev # http://localhost:3000
Prawdziwy Postgres (docker compose, Homebrew, Neon): ustaw DATABASE_URL="postgresql://…" — te same komendy.
PGlite to Postgres skompilowany do WASM; dane siedzą w data/pglite. Wystarcza na własny użytek; na serwer bierz zwykłego Postgresa.
Bez kluczy OAuth działa logowanie deweloperskie (AUTH_DEV_LOGIN=true, tylko poza produkcją): na /login wpisujesz sam e-mail.
W .env ustaw pary AUTH_<PROVIDER>_ID / AUTH_<PROVIDER>_SECRET; nieustawieni dostawcy nie pokazują się na /login.
Redirect URI w konsoli dostawcy: https://twoja-domena/api/auth/callback/<provider>, gdzie provider ∈ google, microsoft-entra-id, apple, facebook.
Apple wymaga wygenerowania client secret (JWT) — patrz dokumentacja Auth.js.
src/app/ strony (server components) + actions.ts (server actions)
premiery/ best-of/ listy z importu
album/[mbid]/ płyta: skład, utwory, oceny, komentarze, "więcej od artysty"
artist/[mbid]/ zespół LUB muzyk: członkowie / zespoły, dyskografia, "grał na płytach"
szukaj/ listy/ ja/ wyszukiwarka, listy społeczności, profil i preferencje
go/release/[id] z pozycji premier na stronę płyty (dopasowanie MBID w locie)
src/lib/musicbrainz.ts klient MB + normalizacja (skład z relacji nagrań)
src/lib/user-data.ts oceny, komentarze, preferencje (Drizzle)
src/lib/pns-parser.ts parser SECTIONS/BEST z purenewshit.html
src/db/schema.ts schemat bazy
scripts/import-pns.ts import premier/best of
tests/ testy jednostkowe (fixture'y MB) + e2e (Playwright)
npm test # jednostkowe: klient MB na fixture'ach, parser
npm run typecheck
# e2e (wymaga bazy i serwera dev z fixture'ami):
MB_FIXTURES=tests/fixtures/mb npm run dev &
node tests/e2e.mjs
MB_FIXTURES=<katalog> przełącza klienta MusicBrainz na pliki (tests/make-fixtures.ts je generuje).
Piątkowe zadanie publikuje nowy purenewshit.html. Wystarczy:
npm run import:pns -- /sciezka/purenewshit.html # albo URL, jeśli plik jest publiczny
Sekcje o tym samym id są nadpisywane, starsze zostają jako archiwum tygodni (/premiery?sekcja=archiwum). Dopasowania MBID dla niezmienionych pozycji są zachowywane.
npm run build && npm start (albo Vercel + Neon/Supabase Postgres; ustaw DATABASE_URL, AUTH_SECRET, AUTH_URL, klucze OAuth, MUSICBRAINZ_USER_AGENT z kontaktem).AUTH_DEV_LOGIN nie ustawiaj na produkcji (i tak jest wyłączone przy NODE_ENV=production).npm run db:migrate..env już przewidziany), powiadomienia o premierach ulubionych artystów, rekomendacje z wag stylów i lubianych płyt, oznaczanie „słuchałem”.