stripe-node
dub
stripe-node | dub | |
---|---|---|
39 | 35 | |
3,689 | 16,402 | |
1.2% | 4.5% | |
9.1 | 10.0 | |
5 days ago | 5 days ago | |
TypeScript | TypeScript | |
MIT License | GNU Affero General Public License v3.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
stripe-node
-
Build authenticated and paywall pages with Stripe and Xata
// File: src/pages/api/stripe/webhook.ts import Stripe from 'stripe'; import { getXataClient } from '@/xata'; import type { APIContext } from 'astro'; // Process rawBody from the request Object async function getRawBody(request: Request) { let chunks = []; let done = false; const reader = request.body.getReader(); while (!done) { const { value, done: isDone } = await reader.read(); if (value) { chunks.push(value); } done = isDone; } const bodyData = new Uint8Array(chunks.reduce((acc, chunk) => acc + chunk.length, 0)); let offset = 0; for (const chunk of chunks) { bodyData.set(chunk, offset); offset += chunk.length; } return Buffer.from(bodyData); } // Stripe API Reference // https://stripe.com/docs/webhooks#webhook-endpoint-def export async function POST({ request }: APIContext) { try { const STRIPE_SECRET_KEY = import.meta.env.STRIPE_SECRET_KEY; const STRIPE_WEBHOOK_SIG = import.meta.env.STRIPE_WEBHOOK_SIG; if (!STRIPE_SECRET_KEY || !STRIPE_WEBHOOK_SIG) return new Response(null, { status: 500 }); const stripe = new Stripe(STRIPE_SECRET_KEY, { apiVersion: '2023-10-16' }); const rawBody = await getRawBody(request); let event = JSON.parse(rawBody.toString()); const sig = request.headers.get('stripe-signature'); try { event = stripe.webhooks.constructEvent(rawBody, sig, STRIPE_WEBHOOK_SIG); } catch (err) { console.log(err.message); return new Response(`Webhook Error: ${err.message}`, { status: 400 }); } if (event.type === 'checkout.session.completed' || event.type === 'payment_intent.succeeded') { const email = event.data.object?.customer_details?.email; if (email) { const xata = getXataClient(); const existingRecord = await xata.db.user.filter({ email }).getFirst(); if (existingRecord) { await xata.db.user.update(existingRecord.id, { paid: true }); } else { await xata.db.user.create({ email, paid: true }); } return new Response('marked the user as paid', { status: 200 }); } return new Response('no email of the user is found', { status: 200 }); } return new Response(JSON.stringify(event), { status: 404 }); } catch (e) { return new Response(e.message || e.toString(), { status: 500 }); } }
-
Setting Up Stripe Payments in React
Before you can start accepting payments with Stripe Checkout, you need to create a Stripe account. Visit the Stripe website and sign up for an account. Once you have created an account, you will receive an API key that you will use to authenticate your requests to the Stripe API.
-
Build and deploy a Next.js ecommerce website in 5 steps
Next, we will enable checkout and payment processing through Stripe. First, install the Stripe clients with the following command:
- Where the hell do I create these nice animations
-
Start Charging Customers with Django and DjStripe
Head to Stripe and register if you haven't already. We can use the Stripe API in Test Mode to build the e-commerce app. You can add a bank account and get verified later when you're ready to start collecting real payments.
-
Highlights from Stripe's annual 2023 letter
Stripe published its 2023 annual letter last week. Much like the previous edition it was filled with a lot of interesting nuggets. Stripe has a strong history of being fairly transparent with its practices. These range from engineering challenges through its blogs as well as thought leadership in the financial and entrepreneurship space. I personally like the writing style of this letter as it doesn’t seem corporate or stuffy. Instead it is filled with humorous anecdotes, quirky observations and intelligent historical narratives which make it a compelling read. You can read the letter here → Stripe Annual Letter: 2023
-
From Messy to Memorable: Shorten Your Links, Boost Your Brand
Stripe – payments
- Stripe Is Down
-
Hyper IDE, using No-Code and Low-Code to Generate Software
Imagine you want to create an API endpoint that allows users to register in your backend, while simultaneously making a payment towards Stripe. This could be for something that's a subscription-based service, where you charge people for access to something.
-
We made a tool to detect big signups to your SaaS app. Want to be a beta tester?
Our app – Upollo – connects with your app event data (like Segment) and payment data (like Stripe) to analyze your users and instantly figure out if someone is an important player in your industry. We also help you convert more users, reduce churn, and expand single seats to teams within a company. We're SOC 2 certified and we take data security very seriously.
dub
- Short Links with Superpowers
-
5 Open-Source Next.js Projects Rocking 2024 (Learn the Patterns!) 🚀
Github Repository: Here
- Dub.co – Link Management for Modern Marketing Teams
-
From Messy to Memorable: Shorten Your Links, Boost Your Brand
Dub An open-source link management tool for modern marketing teams to create, share, and track short links Introduction · Features · Tech Stack · Self-hosting · Contributing Introduction Dub.co is the open-source link management infrastructure for modern marketing teams. Features Advanced Analytics Branded Links QR Codes Personalization Team Collaboration Tech Stack Next.js – framework TypeScript – language Tailwind – CSS Upstash – redis Tinybird – analytics PlanetScale – database NextAuth.js – auth BoxyHQ – SSO/SAML Turborepo – monorepo Stripe – payments Postmark – emails Vercel – deployments Self-Hosting You can self-host Dub.co for greater control over your data and design. Read this guide to learn more. Contributing We love our contributors! Here's how you can contribute: Open an issue if you believe you've encountered a bug. Follow the local development guide to get your local dev environment set up. Make a pull request to add new features/make quality-of-life improvements/fix bugs. …
-
15 open-source tools to elevate your software design workflow
Thank you so much for reading to the end. Of all the tools on this site, Penpot is my absolute favorite. Its modern UI and all the amazing tools at the cost of running a single docker command is a real catch! As a thank you, there's another tool I'd like to present. It's called Dub. It's a link-shortener tool with lots of advanced features for marketing teams and a perfect addition for Umami.
-
Open Source alternatives to tools you Pay for
Dub - Open Source Alternative to Bitly
-
9 Next.js Open Source Projects for Contributions 🚀🚀
GitHub: https://github.com/steven-tey/dub
-
How to deal with routing between landing page & the actual app?
dub.sh - with redirection Redirects to app.dub.sh when you try to login github repo shows the app. in the app/ router, and domain in the [dub.sh] folder
-
Looking for professional Open source apps
There are amazing open-source projects to learn from. Few are: - cal.com - dub.sh - highstorm.app
- Top GitHub repositories to learn modern React development
What are some alternatives?
sanity-next-stripe-starter - Barebones blog set-up with NextJS and Sanity. Comes with Sanity's inbuilt image handler.
Shlink - The definitive self-hosted URL shortener
stripe-node-cloudflare-worker-template - Use stripe-node in a Cloudflare Worker.
taxonomy - An open source application built using the new router, server components and everything new in Next.js 13.
firebase-mobile-payments - Firebase Cloud Functions to create payments in native Android and iOS applications.
linen.dev - Lightweight Google-searchable Slack alternative for Communities
react-stripe-js - React components for Stripe.js and Stripe Elements
website - Website and documentation for Radix.
Stripe - PHP library for the Stripe API.
cmdk - Fast, unstyled command menu React component.
stripe-react-native - React Native library for Stripe.
YOURLS - 🔗 The de facto standard self hosted URL shortener in PHP