Tweet - a Twitter clone
Technologies used
- ๐ Typescript
- Create t3 app
- NEXT.js
- โ๏ธ React 18
- TailwindCSS
- Mantine
- tRPC
- React Query
- Prisma
- Vitest
- React Testing Library
- Mock Service Worker, msw-trpc
- Playwright: (E2E Testing Result)
- Conventional Commits
- Prettier, Stylelint, ESLint
- Github Actions
- Semantic Release
- Husky & Lint Staged
For this project we are going to use pnpm
To install it:
npm i -g pnpmInstall dependencies
pnpm iGetting Started
First, run the development server:
pnpm devOpen http://localhost:3000 with your browser to see the next.js page.
Open http://localhost:8090/_ with your browser to see the pocketbase admin UI.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
API routes can be accessed on http://localhost:3000/api/hello. This endpoint can be edited in pages/api/hello.ts.
The pages/api directory is mapped to /api/*. Files in this directory are treated as API routes instead of React pages.
This project uses next/font to automatically optimize and load Inter, a custom Google Font.
Learn More
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
Deploy on Vercel
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.
Playwright
Windows or Ubuntu
pnpm exec playwright install --with-depsDocker
docker pull mcr.microsoft.com/playwright:latestArch Linux
To set up playwright on arch linux:
yay -S libffi7 enchant1.6 icu66 libwebp052
sudo ln -s /usr/lib/libpcre.so /usr/lib/libpcre.so.3Contributing
Commit Message
To commit please follow the Conventional Commits rules
This will provide a prompt to help you write good commit messages for us to handle. This will automatically run the git commit command for staged files.
IMPORTANT: ALL MESSAGE SHOULD BE LOWERCASE
VSCode
If you want to commit in VSCode I highly recommend using this extension: Conventional Commits
You can access VSCode Conventional Commits in two ways:
Command + Shift + PorCtrl + Shift + P, enterConventional Commits,
and pressEnter.- Click the icon on the Source Control menu. See the image below.