尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证The front end for the TwistedArtistsGuild.com web app.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗The frontend for TwistedArtistsGuild.com — a mission-driven platform empowering artists through accessible, ethical, and scalable tools. This Next.js application brings the guild’s user-facing experience to life, blending artistic freedom with cooperative infrastructure.
Twisted Artists Guild is a digital cooperative for creators. The tag-web frontend is your portal to that world — enabling art discovery, event engagement, competition voting, and direct artist commerce. It’s fast, flexible, and built to reflect our human-first ethos.
Media is now organized by entity ID instead of changeable slugs so URLs stay stable as names evolve. The blob layout is intentionally simple and predictable:
platformpics/
├── about/
│ └── us/
├── blog/
│ └── {blogId}/
│ ├── cover/
│ ├── content/
│ └── assets/
├── usercontent/
│ └── {userId}/
│ ├── cover/
│ ├── profile/
│ └── postcontent/
│ └── {postId}/
│ ├── images/
│ └── attachments/
└── artistcontent/
└── {artistId}/
├── cover/
├── profile/
├── listing/
│ └── {listingId}/
│ ├── cover/
│ ├── gallery/
│ └── assets/
└── postcontent/
└── {postId}/
├── images/
└── attachments/
Artist media should be stored under the numeric artistId directory, not the artist slug, so directory names remain stable even if the public artist path changes.
Node.js ≥ 22.15.0 — required for --use-system-ca support, which is part of the project's security posture. This flag makes Node use the OS certificate store rather than its bundled Mozilla CA bundle, ensuring corporate/custom CA chains are trusted without disabling TLS verification. The flag was introduced in Node.js v24 and backported to v22.15.0. Versions below 22.15.0 will fail to start the dev server.
Verify your version:
node --version # must be >= 22.15.0
Upgrade (Windows — winget):
winget upgrade Node.js
Fresh install of Node.js 22 LTS (Windows — winget):
winget install OpenJS.NodeJS.LTS
macOS / Linux — via fnm:
# Install fnm if not already present
curl -fsSL https://fnm.vercel.app/install | bash
fnm install 22
fnm use 22
git clone https://github.com/twistedartistsguild/tag-web.git
cd tag-web
npm install
cp .env.example .env.local
Fill in your local values in .env.local. Do not commit secrets.
4. Start development server
npm run dev
.env.example/docs/env.md.env.example..env.local (gitignored) or your deployment secret store.To build for production:
npm run build
To lint and fix:
npm run lint
To run tests (WIP):
npm run test
Testing includes:
We welcome contributions that align with TAG’s cooperative values.
git checkout -b feat/short-descriptionUse the Conventional Commits style for all feature branches:
<type>/<short-kebab-description>feat/add-user-profilefix/deployment-scriptchore/update-docsThis approach makes it easy to identify the purpose of a branch and works well with automation and changelogs. The PR author is always visible in GitHub, so including your username in the branch name is not necessary.
Before submitting, be sure to check:
@/components/...)Contributor guides can be found in docs/CONTRIBUTING.md and docs/styleguide.md
Branch protection is enforced for all key branches to ensure code quality, consistent deployments, and clear audit trails. All contributions must go through pull requests (PRs) targeting protected branches.
Use the Conventional Commits style for all branches:
<type>/<short-kebab-description>feat/add-user-profilefix/deployment-scriptdev
devmain
maindeploy
deployMerges to these branches automatically kick off their respective pipelines. Final production swap is still manual. → twistedartistsguild.com
| Branch | Environment | Deploys To |
|---|---|---|
| dev | Vercel development slot | vcdev.twistedartistsguild.com |
| main | Vercel staging slot | vcstaging.twistedartistsguild.com |
| deploy | Azure App Service staging | staging.twistedartistsguild.com |
feat/feature_description into dev.dev into main. Merge triggers Vercel build for vcstaging.main into deploy merges and Azure pipeline deploys to staging.Our platform is built for artists, but we hope the approach will spread to other industries like wildflowers. We use GPL v3.0 to ensure anyone benefiting from our work here will similarly open source their work.
Open source • Low-profit • Community-first