Onyx
NextJS 14 + Supabase SSR Auth & PostgreSQL DB + Shadcn-UI + TanStack React Query + Rust runtime for Vercel serverless functions ready + React Hook Form + Zod + 'A' Security Headers Score + RBAC + Resend + CRUD operations + admin dashboard + OpenAI playground, and more. Deploy on Vercel and get your scalable MVP running in days.
Install / Use
/learn @rmourey26/OnyxREADME
What is Onyx?
- Onyx is a turnkey, full stack NextJS 14+ progressive web app written in Typescript that includes role based access control (RBAC), complete Supabase SSR Auth and DB integration, Zod validation, Tanstack React Query, Rust serverless function runtime and API, Markdown pages with ability to insert React components, React Hook form, and more. Fork, customize, and deploy on Vercel or elsewhere to have your MVP up and running in a few days or less. Stack details are below.
Stack and Features
- NextJS 14 App Router in Typescript
- Supabase
- SSR Auth with
- Fully configured email/password signup, login, oauth, PKCE and confirm routes
- middleware
- server actions
- typed Auth & DB clients
- readOnly userSession clients
- Postgres DB with CRUD functions configured
- User account and profile management configured
- RBAC configured admin dashboard with data visualization, members administration and todo lists
- Contact form with toast, Zod validation, server side table insert
- SSR Auth with
- TanStack React Query, Table, and Dev Tools
- Demo SSR with Supabase DB & cache helpers
- Zod data validation, schemas, event handling.
- Shadcn-UI, Radix-UI primitives, Tailwind CSS
- Markdown pages with Next/MDX - create page.mdx and layout.tsx for each markdown page
- Next-PWA
- Next Compose Plugins
- React Hook Form
- OpenAI playground UI
- Onboarding, signIn/signUp pages
- Podcast UI
- CookieButton component configured to work with Consent Manager from Termly free plan. Just create a free Termly account, add your Script tag on the app/layout page using Next Script and then add your CookieButton to your app/layout just above the ThemeProvider and just below your termly Script tag.
- Custom Formik Components with MUI are not used in app but code is solid for use in a "MUI Base X TailwindCSS config". Onyx is NOT currently configured for MUI nor MUI Base X TailwindCSS.
- Lucide React Icons with many brand SVGs ready for your props
- More..
API
Getting started with Onyx:
- First, configure your environment
-
Create a file named .env.local in project root
-
Create a Supabase account and add the following to your env file
- NEXT_PUBLIC_SUPABASE_ANON_KEY="Your supabase anon key"
- SUPABASE_JWT_SECRET="Your supabase JWT secret"
- NEXT_PUBLIC_SUPABASE_URL="Your supabase project URL"
- SUPABASE_SERVIC_ROLE_KEY="Your supabase service role key"
-
Ensure your Supabase tables match the tables and types found in '@/lib/supabase'.
-
Add authorized development and production URL's to Supabase URL config.
-
Run
- Development server:
npm i && npm run dev
# or
yarn i && yarn run dev
# or
pnpm i && pnpm dev
# or
bun i && bun dev
Open http://localhost:3000 with your browser to see the result.
Deploy on Vercel
Reference/Credit
- @chensokheng
Tips/Support
<a href="https://www.buymeacoffee.com/rmoureyjr" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/default-orange.png" alt="Buy Me A Coffee" height="51" width="217"></a>
Related Skills
himalaya
345.4kCLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
tmux
345.4kRemote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.
Writing Hookify Rules
104.6kThis skill should be used when the user asks to "create a hookify rule", "write a hook rule", "configure hookify", "add a hookify rule", or needs guidance on hookify rule syntax and patterns.
review-duplication
100.0kUse this skill during code reviews to proactively investigate the codebase for duplicated functionality, reinvented wheels, or failure to reuse existing project best practices and shared utilities.
