- Multirole auth login guest and admin (with github, google, or credentials).
- Book recommendations(random pick).
- CRUD operations.
- Search the books that user want.
- Save the user data who lend a/the book to Supabase and display it into a table in
/list-users
page(only admin who can access this page). - Show the user profile.
- Export the users list to CSV format and only admin who can download it.
- Books recommendation
- Next JS 13
- Tailwind CSS with Tail Dashboard
- Jotai
- Clone this project, install all dependencies with
pnpm install
. - First, you will need to setup your OAuth Github App. Go to create one, and grab your Github Id and Github Secret, fill it in
NEXT_PUBLIC_GITHUB_ID
andNEXT_PUBLIC_GITHUB_SECRET
. - Setup your Google Cloud Project. Grab your Google Id and Google Secret, fill it in
NEXT_PUBLIC_GOOGLE_ID
andNEXT_PUBLIC_GOOGLE_SECRET
. - Setup your new Supabase Project and grab the Supabase Url and Supabase Key, fill it in
NEXT_PUBLIC_SUPABASE_URL
andNEXT_PUBLIC_SUPABASE_KEY
. - After that, fill the remaining variables.
- CREDENTIAL_ADMIN_USERNAME=<your_admin_username>
- CREDENTIAL_ADMIN_PASSWORD=<your_admin_password>
- DEVELOPMENT_URL=<your_development_url>
- PRODUCTION_URL=<your_production_url>
- ADMIN_ID=<your_admin_id>
- ADMIN_EMAIL=<your_used_email_for_admin>
- After you fill all the needed env variables, run the project by typing
pnpm run dev
. - Go to
http://localhost:3000
and see the result. - By the way, the default username and password for admin role is: username = pak_dengklek, password = 102938
MIT