A simple recipe app built with Next.js and Supabase. Its primary objective is to be a personalised way to browse and view recipes, allowing fuzzy-finding, filtering based on ingredients and categories, ratings from a close group of friends, and more.
-
You'll first need a Supabase project which can be made via the Supabase dashboard
-
Clone this repo and open a terminal in the root directory
-
Compile the
cooklang-wasm
crate to WebAssembly (see the README incooklang-wasm
). -
Create
.env.local
and populate the following keys:NEXT_PUBLIC_SUPABASE_URL=[INSERT SUPABASE PROJECT URL] NEXT_PUBLIC_SUPABASE_ANON_KEY=[INSERT SUPABASE PROJECT API ANON KEY]
Both
NEXT_PUBLIC_SUPABASE_URL
andNEXT_PUBLIC_SUPABASE_ANON_KEY
can be found in your Supabase project's API settings -
You can now run the Next.js local development server:
yarn dev
Check out the docs for Local Development to also run Supabase locally.
To give a quick overview, this project uses:
- Next.js for UI focused on server rendering and static site generation
- Supabase for the database, storage, and authentication
- Cooklang as a markup language for defining recipes (using extensions from
cooklang-rs
) - Tailwind CSS for styling
- shadcn/ui for UI components
- wasm-pack to generate WebAssembly from Rust