This is a Micro Saas project developed during the Micro Saas course by Rocketseat. The objective of this project is to provide an page for developers to showcase their projects.
- Next.js v15 and ReactJS v19
- Tailwind CSS (UI)
- Firebase (Database and storage)
- Auth.js (Authentication with Google)
- Stripe (Payment gateway)
- Lucide (Icons)
- Resend (Email)
- Setup Firebase Cloud Firestore
- Setup Firebase Cloud Storage
- Get Firebase bucket name
Add them to your .env file:
FIREBASE_PROJECT_ID=
FIREBASE_CLIENT_EMAIL=
FIREBASE_PRIVATE_KEY=
FIREBASE_STORAGE_BUCKET=To use Google authentication in Auth.js, you need to obtain your credentials:
- Go to the Google Cloud Console.
- Create a new project or select an existing one.
- Navigate to
APIs & Services > Credentials. - Click
Create Credentials>OAuth 2.0 Client ID. - Set up the consent screen and configure the redirect URIs.
- Authorized JavaScript Sources:http://localhost:3000
- Authorized redirect URIs:http://localhost:3000/api/auth/callback/google - Copy your
Client IDandClient Secret.
Add them to your .env file:
AUTH_GOOGLE_ID=
AUTH_GOOGLE_SECRET=
AUTH_SECRET=- Create a Stripe account
- Register products and get their Product IDs
- Set up a local webhook with stripe cli
- Run
pnpm webhook:runto retrieve the webhook secret - Get API keys (Public Key, Secret Key)
Add them to your .env file:
STRIPE_LIFETIME_PRICE_ID=
STRIPE_MONTHLY_PRICE_ID=
STRIPE_PUBLIC_KEY=
STRIPE_SECRET_KEY=
STRIPE_WEBHOOK_SECRET=To use Resend for sending emails, you need to obtain your API key:
Add it to your .env file:
RESEND_API_KEY=Follow the steps below to set up the project locally:
- Clone the repository:
git clone https://github.com/victordev13/curso-microsaas.git- Navigate to the project directory:
cd curso-microsaas- Install the dependencies:
pnpm install- Create and configure the
.envfile:
cp .env.dist .env
# Edit the .env file with your Firebase credentials- Start the development server:
pnpm dev- Start the local stripe webhook:
pnpm webhook:run- Open http://localhost:3000 in your browser.
- Allow to edit or remove user card custom links
- Allow to edit or remove projects






