Serein
Rust로 만든 가볍고 성능 좋은 Discord 전용 네이티브 클라이언트
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
A full-stack Turborepo monorepo powering MyHoodora — a hyper-local community platform connecting neighbors across Nigerian cities, built with Next.js, NestJS, and TypeScript.
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A neighbourhood network for Nigeria: verified neighbours share posts, safety alerts, events and items for sale within their own "Hood".
Documentation lives in docs/. Start with current state for what exists, and development to run it.
apps/
web/ Next.js 16 app: marketing site, the signed-in app, the staff admin
api/ NestJS 10 REST API on MongoDB
mobile/ Expo (React Native) app for iOS and Android: sign-in, onboarding, Hood feed, notifications, push
packages/
ui/ shared React components (web)
api-contract/ API types, error wording and form rules shared by web and mobile
design-tokens/ colours, type and spacing for the mobile app (checked against the web's CSS)
eslint-config/ shared ESLint config
typescript-config/ shared TypeScript config
docs/ documentation of record (and an archive of older plans)
Stack: TypeScript · Next.js (React 19, Tailwind 4) · NestJS · MongoDB (Mongoose) · Firebase Authentication · Cloudinary (media) · Resend (email) · Redis (live updates) · pnpm workspaces + Turborepo.
Needs Node.js 24, pnpm 9, a Firebase project and a MongoDB replica set (Atlas works).
pnpm install
cp apps/api/.env.example apps/api/.env # fill in: MongoDB, Firebase Admin, …
cp apps/web/.env.example apps/web/.env.local # fill in: Firebase web config
pnpm dev # web → http://localhost:3000, API → http://localhost:3001/api
Every variable is explained in docs/environment.md. To explore the UI with no backend at all: NEXT_PUBLIC_USE_MOCKS=true pnpm --filter web dev.
| Command | Does |
|---|---|
pnpm dev | Web and API in watch mode |
pnpm build | Production build |
pnpm lint · pnpm check-types | ESLint · TypeScript |
pnpm test | Unit tests (API and web) |
pnpm test:e2e:api | API integration tests (in-memory MongoDB) |
pnpm test:e2e:web | Browser tests (Playwright) |
pnpm format | Prettier |
Before opening a pull request: lint, types, tests and build should pass (CI checks the same). See docs/testing.md.
development, open a pull request into it.feat(feed): …, fix(api): …, docs: ….docs/ in the same pull request.The API is deployed before the web app. The full runbook, with checks and rollback, is docs/deployment.md. Several launch tasks are manual (secret rotation, domain verification, legal review): see docs/backlog-status.md.