Wait4it is a project that relies on various essential dependencies, including auth, formkit, radix-ui, tailwindcss, tiptap, trpc, next-auth, and many others. It utilizes a wide range of tools and libraries to deliver its functionality.
├── .eslintrc.json
├── .gitignore
├── .prettierignore
├── README.md
├── components.json
├── dbml.ts
├── drizzle.config.ts
├── kirimase.config.json
├── next.config.js
├── package.json
├── pnpm-lock.yaml
├── postcss.config.js
├── prettier.config.mjs
├── public
│ ├── next.svg
│ └── vercel.svg
├── schema.dbml
├── src
│ ├── app
│ │ ├── api
│ │ │ ├── auth
│ │ │ │ └── [...nextauth]
│ │ │ │ └── route.ts
│ │ │ ├── email
│ │ │ │ └── route.ts
│ │ │ ├── friends
│ │ │ │ └── route.ts
│ │ │ ├── people
│ │ │ │ └── route.ts
│ │ │ ├── secrets
│ │ │ │ └── route.ts
│ │ │ ├── trpc
│ │ │ │ └── [trpc]
│ │ │ │ └── route.ts
│ │ │ └── user
│ │ │ └── route.ts
│ │ ├── favicon.ico
│ │ ├── home
│ │ │ ├── layout.tsx
│ │ │ ├── page.tsx
│ │ │ ├── people
│ │ │ │ └── page.tsx
│ │ │ └── secrets
│ │ │ ├── [id]
│ │ │ │ └── page.tsx
│ │ │ └── new
│ │ │ └── page.tsx
│ │ ├── layout.tsx
│ │ ├── loading.tsx
│ │ ├── my
│ │ │ └── settings
│ │ │ └── page.tsx
│ │ ├── page.tsx
│ │ └── resend
│ │ └── page.tsx
│ ├── components
│ │ ├── auth
│ │ │ ├── SignIn.tsx
│ │ │ └── SignOut.tsx
│ │ ├── emails
│ │ │ └── FirstEmail.tsx
│ │ ├── my
│ │ │ └── SettingsForm.tsx
│ │ ├── people
│ │ │ ├── FindPeople.tsx
│ │ │ ├── FriendCard.tsx
│ │ │ ├── FriendsList.tsx
│ │ │ ├── RequestCard.tsx
│ │ │ ├── RequestsList.tsx
│ │ │ ├── UserCard.tsx
│ │ │ ├── completed-profile.tsx
│ │ │ ├── requests-for-user.tsx
│ │ │ └── uncomplete-profile.tsx
│ │ ├── secrets
│ │ │ ├── MySecretsList.tsx
│ │ │ ├── SecretEditor.tsx
│ │ │ ├── SecretForm.tsx
│ │ │ ├── SecretModal.tsx
│ │ │ └── Tiptap.tsx
│ │ └── ui
│ │ └── [shadcn-ui] components
│ ├── lib
│ │ ├── api
│ │ │ ├── friendships
│ │ │ │ ├── mutations.ts
│ │ │ │ └── queries.ts
│ │ │ ├── secrets
│ │ │ │ ├── mutations.ts
│ │ │ │ └── queries.ts
│ │ │ └── user
│ │ │ ├── mutations.ts
│ │ │ └── queries.ts
│ │ ├── auth
│ │ │ ├── Provider.tsx
│ │ │ └── utils.ts
│ │ ├── db
│ │ │ ├── index.ts
│ │ │ ├── migrate.ts
│ │ │ ├── migrations
│ │ │ │ └── meta
│ │ │ │ └── _journal.json
│ │ │ └── schema
│ │ │ ├── attachments.ts
│ │ │ ├── auth.ts
│ │ │ ├── index.ts
│ │ │ └── secrets.ts
│ │ ├── email
│ │ │ ├── index.ts
│ │ │ └── utils.ts
│ │ ├── env.mjs
│ │ ├── hooks
│ │ │ ├── useDebounce.tsx
│ │ │ └── useMounted.tsx
│ │ ├── server
│ │ │ ├── routers
│ │ │ │ ├── _app.ts
│ │ │ │ ├── friendships.ts
│ │ │ │ ├── secrets.ts
│ │ │ │ └── user.ts
│ │ │ └── trpc.ts
│ │ ├── trpc
│ │ │ ├── Provider.tsx
│ │ │ ├── api.ts
│ │ │ ├── client.ts
│ │ │ ├── context.ts
│ │ │ └── utils.ts
│ │ └── utils.ts
│ ├── middleware.ts
│ └── styles
│ └── globals.css
├── tailwind.config.ts
└── tsconfig.json
- Planetscale DB -> create it here
- Get the
Connection Details
from them and populate the.env
- Get the
1.Clone the wait4it repository:
git clone https://github.com/AlvaroAquijeDiaz/wait4it
2.Install the dependencies with one of the package managers listed below:
pnpm install
bun install
3.Start the development mode:
pnpm dev
bun dev
This project is fun way to share secrets between friends, allowing the reveal of them only at a certain date, all data is encrypted and unable to be seen by other users
Yes, we welcome contributions! Head over to Issues and follow this format:
- Title: [
BUG | FEATURE-REQUEST | HELP
] <descriptive title> - Description: As long as you want, proving screenshots is hugely welcomed
Please note that we're only allowing bugs/issues submission, it's possible that we'll enable PRs soon
Intended to reach sunlight in two weeks from this commit - aprox (30 oct 2023)
- May post tasks, updates and project from Linear here
- EasyReadme - for this documentation template generation
- Kirimase - for easy project boilerplate/scaffolding
- This article - very useful to understand the new paradigms on next.js and react
- Linear - I think we all know them lol
- shadcn-ui - Radix-ui - based, headless components
- Components divided into
- RSC -
(kebab-case).tsx
- Client Components -
(PascalCase).tsx
- UI -
(kebab-case).tsx
- UI -
- Hooks -
(camelCase).tsx
- RSC -
- Pages
(kebab-case).tsx