Commit Graph

119 Commits

Author SHA1 Message Date
Franjo Mindek
93e3e9d916 Improve Stripe payment provider logic (#550)
Co-authored-by: Mihovil Ilakovac <mihovil@ilakovac.com>
2025-11-12 22:29:03 +01:00
vincanger
7d36c8f0b1 Refactor file upload and toast notifications (#472)
* Refactor file upload and toast notifications

Replaces react-hot-toast with a custom toast system using @radix-ui/react-toast, updating all usages and adding new UI components for toast and dialog. Refactors file upload to use a two-step process: first generating an S3 upload URL, then adding the file to the database, and adds file deletion support with confirmation dialog and S3 cleanup. Updates Prisma schema, removes unused fields, and cleans up navigation and admin settings page.

* Enforce file upload limit and update dependencies on opensaas-sh

Added a check to restrict users to 2 file uploads in the demo, with a new helper function and error handling. Updated navigation items, improved landing page content, and removed unused dependencies (react-hot-toast). Added @radix-ui/react-toast, updated testimonials, and made minor content and code improvements.

* update tests

* Improve file deletion error handling and cleanup

Refactors file deletion to delete the database record before attempting S3 deletion, ensuring the file is removed from the app even if S3 deletion fails. Adds error logging for failed S3 deletions to aid in manual cleanup. Also simplifies error handling in the file upload page and removes unused imports in the demo app page.

* Add credit check and S3 file existence validation

Added logic to decrement user credits or throw an error if out of credits in the AI demo app. Updated file upload operations to validate file existence in S3 before adding to the database, and implemented S3 file existence check utility. Minor UI and code improvements included.

* Update s3Utils.ts

* update app_diff

* fix diff

* Update deletions

* Improve toast UI, error handling, and credit messaging

Updated toast action hover style and icon spacing for better UI consistency. Enhanced error handling in file deletion to display specific error messages. Refined credit/subscription error message in GPT response operation for clarity and removed redundant credit decrement logic.

* Refactor file upload validation and error handling

Replaces error state management with toast notifications for file upload errors and success. Refactors file type validation to use a new ALLOWED_FILE_TYPES_CONST and type AllowedFileTypes. Updates validation logic to throw errors instead of returning error objects, and simplifies type handling across file upload modules.

* Refactor file upload to use s3Key and add cleanup job

Replaces the 'key' field with 's3Key' for file storage references throughout the codebase and database schema. Updates all related logic, types, and API contracts to use 's3Key'. Adds a scheduled job to delete old files from S3 and the database. Cleans up file type validation constants and improves consistency in file upload and download operations.

* add orphaned file clean up

* remove s3 cleanup job from template

removed but added suggestion to docs.

* Update SettingsPage.tsx

* prettier format

* Update  UI, remove unused files

Updated README with deployment and demo details. Removed unused App.tsx and package-lock.json files. Modified Main.css, NavBar constants, file uploading logic, file upload operations, and landing page content sections for improved UI and functionality.

* remove pricing page from isMarketingPage
2025-10-15 12:01:08 +02:00
Carlos Precioso
3f8d012c95 Ran lossless optimization on assets for template (#518) 2025-10-01 11:03:30 +02:00
Franjo Mindek
545a43c31e generate on build + gitignore 2025-09-24 18:49:53 +02:00
Franjo Mindek
12921ef92e open saas consistency 2025-09-24 14:10:17 +02:00
Franjo Mindek
0773fb9995 comma 2025-09-19 18:20:42 +02:00
Franjo Mindek
3f91e852a6 fix tailwind colors in blog 2025-09-19 18:19:12 +02:00
Franjo Mindek
3f463fb202 format 2025-09-18 11:42:49 +02:00
Franjo Mindek
054c1f8dc5 Revert "format write"
This reverts commit 448f3290fc.
2025-09-18 11:42:31 +02:00
Franjo Mindek
448f3290fc format write 2025-09-18 11:29:50 +02:00
Carlos Precioso
8fc03d970b Upgrade to Node 22.12 (#477) 2025-08-05 10:53:09 +02:00
vincanger
19dbc1b4ee update stripe sdk and webhooks to match (#427)
* update stripe sdk and webhooks to match

* Update deploying.mdx

* Update webhook.ts

* add github link to payload events

* lock stripe version

* remove pending status

* remove exports on handlers

* remove unnecessary functions
2025-07-29 11:27:18 +02:00
vincanger
d8088292d9 Update 2025-07-29-open-saas-version-2.mdx 2025-07-29 09:47:15 +02:00
vincanger
4030ab76ab Blogpost v2 lw10 (#455)
* add blog draft

* add videos

* update date

* more images and links

* Update 2025-07-29-open-saas-version-2.mdx
2025-07-29 09:40:41 +02:00
Fran
2caac6c1de OpenSaaS Redesign - Add ShadCN, and redesign OpenSaaS.sh landing page (#447)
* add shadcn and shadcn script

* cleanup

* navbar and announcement

* remove unnecessary documentation

* cleanup

* dark mode switcher

* update hero

* update features

* update clients

* update testimonials

* update faq

* add avatar and use it in hero

* update the demo app

* update pricing page

* update file upload page

* update account page

* update dropdown

* fix mobile menu

* use card for testimonials

* update analytics to use new color tokens

* use sheet for mobile nav bar

* update user table

* update settings page to use shadcn components

* update testimonials to use new design

* add section title component

* update components to use section header

* add gradients

* add secondary muted

* add dynamic navbar

* cleanup

* fix color tokens for the dark mode

* don't scale all the cards

* Examples component

* fix the carousel scrolling into view

* add highlighted feature component

* add features grid

* cleanup

* fix navbar announcment sticking

* fix padding

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* more robust on mouse leave for examples carousel

* auto scroll threshold set to 1

* generate app diff fo creating opensaassh

* add orbit

* fix mobile layout for Hero

* update template FeaturesGrid, and fix logos location

* Update the title for the features grid on landing

* update testimoinals layout

* update contentSections to support new testimonials

* update examples carousel

* update examples carouselui

* cleanup

* fix navbar layout when Announcement not present

* add highlighted features in examples

* cleanup

* fix faq component

* fix testimonials UI

* cleanup

* cleanup

* update contentSections

* update the ui limits

* make highlighted feature items centered

* remove inconsistent styles

* remove legacy classnames

* standardize chart cards

* fix dark mode ui issue with dropdown

* make it so that you can't change your own admin status

* fix changes with filtering on user table

* make filtering more intuitive

* fix calendar visibility issues

* remove forms pages

* use type tel for phone number

* button page redo

* clean up breadrcrumb and remove comments from default layout

* clean up navbar

* throttle scroll for navbar

* clean up remaining template items

* clean up

* fix the examples carousel so that it automatically scrolls

* fix demo app page

* fix FeaturesGrid types

* fix highlighted feature

* fix section title

* Replace old icons

* Remove package-lock.json

* fix opensaas issues

* remove all legacy icons

* remove accidental package files

* update throttleWithTrailingInvocation

* refactor the FeaturesGrid

* clean up highlithted feature

* clean up highlithted feature

* fix behavior of ExamplesCarousel

* clean up ExamplesCarousel

* fix wrong copy and layout on the landing for opensaas.sh

* center examples on the page if there are not enough of them

* Fix layout of pricing

* fix wrong link

* color of sidebar on admin

* add new examples

* fix icon layout

* adds specific tokens for opensaas landing

* layout fix

* remove leftover custom svgs

* update layout to better match figma

* use kebab-case for forms

* revert to h3

* png -> webp

* Update layout for bento grid for opensaas

* parse day views only once

* dropdown edit delete to shadcn

* remove the remaining svgs

* make useDebounce generic

* address small pr comments

* update examples carousel

* remove the banner from the hero

* section title subtitle → description

* remove unnecessary files

* address layout comments for opensaas.sh

* add back git star count

* update contentSections to have currently deployed copy

* useRef instaed of class query

* address layout comments for opensaas.sh

* adjust padding for RepoInfo on diff

* fix gradient on template

* Revert "fix gradient on template"

This reverts commit 4b45f7f437.

* fix gradient on template

* add AI Ready highlighted feature

* update landing page features & add LLM copy button and

Introduced a 'Copy URL for LLMs' button to the blog navbar by creating CopyForLlmButton.astro and integrating it into a new MyRightNavBarItems.astro component, replacing the previous theme select. Updated astro.config.mjs to use the new component. In the app template, added an example highlighted feature component to the landing page and updated testimonial avatars. Also enabled Google, GitHub, Discord, and Slack auth providers in main.wasp.

* Update NavBar announcement for Product Hunt launch

Refactored the Announcement component in NavBar to promote the Open SaaS v2.0 Product Hunt launch, including dynamic messaging based on launch date and updated links. Also updated the landing page to import and render new example components.

---------

Co-authored-by: vincanger <70215737+vincanger@users.noreply.github.com>
2025-07-28 18:29:22 +02:00
Franjo Mindek
91549ea9ae raise node 2025-07-02 12:58:37 +02:00
vincanger
f11a2a528c Update vibe-coding.mdx 2025-06-27 10:32:15 +02:00
vincanger
2a102e9be6 Update AI Rules & Docs (#431)
* add rules files

* Add guide to docs

* make Miho happy

* add docs referencing info

* Update authentication.mdc

* Update advanced-troubleshooting.mdc

* newlines

* add userSignupFields rule to auth rules

* update wasp overview rule
2025-06-27 10:26:33 +02:00
vincanger
707bddbe3d Update 2025-05-21-saas-cost-marketing-breakdown.mdx 2025-05-21 16:30:22 +02:00
vincanger
a0681df794 add coverlettergpt profit & marketing post 2025-05-21 16:05:05 +02:00
Andrew
5a90dcd1dd Fix broken discord auth link (#429) 2025-05-19 10:57:19 +02:00
vincanger
0e036c0b3c add llms.txt & llms-full.txt script (#422)
* add llms.txt

* Update index.mdx
2025-05-07 17:07:11 +02:00
Milica
597ed60da3 Merge pull request #400 from wasp-lang/ph-tips
Launching on PH tips and tricks
2025-05-07 14:10:30 +02:00
Milica Maksimovic
f9e060c25d update post 2025-05-07 14:04:55 +02:00
vincanger
d27b8f5c14 Add guide on how to update a local Open SaaS app (#403)
* Create updating-opensaas.md

* Update updating-opensaas.md

* Update opensaas-sh/blog/src/content/docs/guides/updating-opensaas.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Update opensaas-sh/blog/src/content/docs/guides/updating-opensaas.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Update updating-opensaas.md

* Update updating-opensaas.md

---------

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
2025-05-05 11:30:57 +02:00
Cameron Pak
6693d5156e Update codebase to use the latest install WASP command (#399)
* Update README.md to use the latest install WASP command

* Update installation command for Wasp in CI workflow and documentation to use the new URL
2025-04-01 12:48:19 +02:00
Milica Maksimovic
68a4045cae fix publishing date 2025-03-28 11:02:13 +01:00
Milica Maksimovic
c9033c0ca6 formatting 2025-03-28 11:00:22 +01:00
Milica Maksimovic
cc37c25fff add images 2025-03-28 10:30:18 +01:00
Mihovil Ilakovac
576d47a32e Adds Posthog script to opensaas.sh and docs.opensaas.sh (#398) 2025-03-21 11:14:06 +01:00
Milica Maksimovic
dea1fa7df0 fix list 2025-03-13 14:51:32 +01:00
Milica Maksimovic
2c2d9ae24e add new blog post 2025-03-12 17:51:04 +01:00
Milica
06add729d9 Merge pull request #393 from wasp-lang/plausible-interview
add an interactive demo to plausible post
2025-03-04 16:56:51 +01:00
Milica Maksimovic
25f4c1b839 fix plausible post with an interactive demo 2025-03-04 16:51:50 +01:00
vincanger
f98d17b2ad remove newsletter stuff (#383)
* remove newsletter stuff

* Update guided-tour.md

* Update deletions
2025-03-03 09:43:51 -05:00
Mihovil Ilakovac
fc2ffb156a Cleanup 2025-02-28 18:55:29 +01:00
Mihovil Ilakovac
98a9cf2d32 Update CORS docs 2025-02-28 18:51:12 +01:00
Filip Sodić
8c8093e580 Merge pull request #384 from wasp-lang/filip-tighthen-up-cors
Tighten up S3 CORS configuration
2025-02-28 10:29:14 +01:00
Milica
889fa09924 Merge pull request #388 from wasp-lang/plausible-interview
add interview with Plausible's co-founder Marko Saric
2025-02-27 15:07:22 +01:00
Milica Maksimovic
5da0d4bd06 add interview with Plausible co-founder Marko Saric 2025-02-26 14:36:10 +01:00
Milica
a6e5517475 Incident Report (Open Saas updateCurrentUser) blog post
* add martin as an author + post

* add all files

* rename post

* fix header size

* Incident report final touch.

---------

Co-authored-by: Martin Sosic <sosic.martin@gmail.com>
2025-02-26 14:32:15 +01:00
Filip Sodić
e04b00317e Add reminder about the CORS policy 2025-02-25 20:08:54 +01:00
Filip Sodić
dbca3a20c1 Tighten up S3 CORS configuration 2025-02-25 16:34:03 +01:00
Filip Sodić
40f6b72290 Merge pull request #365 from wasp-lang/update-updateUser-info
remove user lastActiveTimestamp property
2025-02-20 15:42:24 +01:00
vincanger
e1a9436029 improve one-time payment webhook logic (#375)
* improve one-time payment webhook logic

* Update paymentProcessor.ts.diff

* update tests and docs

* fix requested changes
2025-02-20 10:58:51 +01:00
vincanger
5c1ec767df update migrations and docs 2025-02-20 10:55:37 +01:00
Matija Sosic
fe73757138 docs: added 'deploy and get swag' CTA. 2025-02-14 17:42:57 +01:00
vincanger
4db607890b return user id and timestamp only 2025-02-14 14:17:54 +01:00
vincanger
7e46899a44 change url to wasp.sh 2025-02-13 12:59:17 +01:00
Milica Maksimovic
44cc770b64 add new blog post 2025-01-30 12:55:49 +01:00