Instafication is a smart notification service that monitors booking systems and instantly alerts you via SMS or email when new appointment slots become available. Never miss a booking opportunity again!
Clone the repository
git clone https://github.com/instafication/frontend.git
cd frontend
Install dependencies
bun install
Set up environment variables
Create a .env
file in the root directory:
DATABASE_URL=your_postgresql_connection_string
DIRECT_URL=your_postgresql_direct_connection_string
PUBLIC_SUPABASE_URL=your_supabase_project_url
PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key
STRIPE_SECRET_KEY=your_stripe_secret_key
STRIPE_WEBHOOK_SECRET=your_stripe_webhook_secret
Set up the database
bunx prisma generate
bunx prisma db push
Configure Supabase triggers Run this SQL in your Supabase SQL editor:
-- Create function to handle new user registration
create function public.handle_new_user()
returns trigger
language plpgsql
security definer set search_path = public
as $$
begin
insert into public.profiles (id, email)
values (new.id, new.email);
return new;
end;
$$;
-- Create trigger for new user registration
create trigger on_auth_user_created
after insert on auth.users
for each row execute procedure public.handle_new_user();
Start the development server
bun run dev
Visit http://localhost:5173
to see the application running!
bun run build
- Build for productionbun run dev
- Start development serverbun run deploy
- Deploy project to Cloudflaresrc/
βββ lib/
β βββ Components/ # Reusable Svelte components
β βββ Managers/ # Business logic managers
β βββ server/ # Server-side utilities
β βββ trpc/ # tRPC API routes
β βββ i18n.ts # Internationalization
β βββ translations.ts # Translation strings
βββ routes/
β βββ +layout.svelte # Main layout
β βββ +page.svelte # Landing page
β βββ [...api]/ # API routes
β βββ payment/ # Payment handling
β βββ webhook/ # Webhook endpoints
βββ app.html # HTML template
The application uses four main database tables:
profiles
- User profiles and subscription dataservices
- User service subscriptions and preferencesscrapers
- Monitoring configuration for different booking systemsnotifications
- Historical notification dataUsers can configure:
Administrators can configure:
bun i -g wrangler
wrangler.toml
bun run deploy
Instafication offers two pricing tiers:
Currently supports:
We welcome contributions! Please follow these steps:
git checkout -b feature/amazing-feature
git commit -m 'Add amazing feature'
git push origin feature/amazing-feature
The application uses tRPC for type-safe API communication. Key endpoints:
This project is proprietary software. All rights reserved.
Made with β€οΈ by the Instafication team