Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ari-s-123/poem-portal
Poem Portal is an app that surprises poetry enthusiasts with a random poem. It is a single page web app deployed on Vercel built primarily with CSR using the SvelteKit meta-framework, Tailwind and Shadcn-Svelte, Vitest & Svelte Testing Library for unit testing, Supabase for Postgres & Auth, Drizzle for ORM, and TypeScript with automated CI/CD.
https://github.com/ari-s-123/poem-portal
drizzle-kit drizzle-orm javascript poetry postgresql shadcn-svelte supabase supabase-auth supabase-db svelte sveltekit tailwindcss testing-library-svelte typescript vercel-deployment vite vitest
Last synced: about 2 months ago
JSON representation
Poem Portal is an app that surprises poetry enthusiasts with a random poem. It is a single page web app deployed on Vercel built primarily with CSR using the SvelteKit meta-framework, Tailwind and Shadcn-Svelte, Vitest & Svelte Testing Library for unit testing, Supabase for Postgres & Auth, Drizzle for ORM, and TypeScript with automated CI/CD.
- Host: GitHub
- URL: https://github.com/ari-s-123/poem-portal
- Owner: Ari-S-123
- License: mit
- Created: 2024-10-22T07:06:40.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-11-08T21:45:07.000Z (3 months ago)
- Last Synced: 2024-11-08T22:25:46.092Z (3 months ago)
- Topics: drizzle-kit, drizzle-orm, javascript, poetry, postgresql, shadcn-svelte, supabase, supabase-auth, supabase-db, svelte, sveltekit, tailwindcss, testing-library-svelte, typescript, vercel-deployment, vite, vitest
- Language: TypeScript
- Homepage: https://poemportal.vercel.app
- Size: 384 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# [Poem Portal](https://poemportal.vercel.app/)
Uses the PoetryDB API (https://poetrydb.org/) to present a user with a random poem.
![alt text](https://github.com/user-attachments/assets/6b434867-96fb-4c75-ae6a-aae5b9d13e59)
## Future Features:
- [x] Loading Spinner
- [x] Persistence Layer using Postgres on Supabase to save favorite poems with Drizzle as the ORM and GitHub OAuth for
Auth.- [ ] Google OAuth.
## How to run the app
1. Clone the repo.
2. Make sure you are using Node 20 and have Docker and Supabase installed.
3. Run `npm install -g pnpm` to install pnpm.
4. Run `pnpm install` to install the dependencies.
5. With Docker running, run `supabase start`.
6. Create a `.env` with `DATABASE_URL`, `PUBLIC_SUPABASE_URL`, `PUBLIC_SUPABASE_ANON_KEY`, `GITHUB_CLIENT_ID`, `GITHUB_CLIENT_SECRET`. The first three should be visible using the command `supabase status`. For the GitHub ones you would need to go into Developer Settings and create an OAuth App.
7. Run `pnpm run dev -- --open` to start the development server and open the app in a new browser tab.