Skip to content

A platform where user can come fetch their merged PRs from the selected repo and showcase and share their OS contribution as POW to anyone around the world

License

Notifications You must be signed in to change notification settings

amanbairagi30/merged-n-share

Repository files navigation

Merged&Share

TypeScript Docker Next.js Prisma PostgreSQL

Link: https://mergedandshare.in/

Merged&Share is a platform that allows users to fetch their merged pull requests (PRs) from any public GitHub organization. It lets users showcase and share their open-source contributions globally as proof of work.

Features

  • Fetch merged PRs from public GitHub repositories.
  • Display and share contributions.
  • User-friendly interface.

Tech Stack

  • Next.js 14+
  • TypeScript
  • PostgreSQL
  • Prisma ORM
  • Tailwind CSS
  • NextAuth.js
  • Zustand (State Management)
  • Shadcn-UI

Prerequisites

  • Node.js (v18 or higher)
  • PostgreSQL (running with correct connection details)
  • npm (or yarn)

Installation & Setup

  1. Clone the repository:

    git clone https://github.com/amanbairagi30/merged-n-share.git
    cd merged-n-share
  2. Install dependencies:

    npm install
  3. Set up environment variables:

    • Copy .env.example to .env
    • Fill in the required environment variables. See Environment Variables section below.
  4. Run database migrations:

    npx prisma migrate dev

Available Scripts

Currently, the package.json does not define any custom scripts. The following standard npm scripts are available:

  • npm run dev: Starts the Next.js development server.
  • npm run build: Builds the application for production.
  • npm run start: Starts the production server.

Environment Variables

Create a .env file based on .env.example and populate the following variables:

  • DATABASE_URL: Your PostgreSQL connection string. Example: postgresql://user:password@host:port/database
  • NEXTAUTH_SECRET: A secret used to encrypt session data. Generate a random string.
  • GITHUB_ID: Your GitHub application's Client ID.
  • GITHUB_SECRET: Your GitHub application's Client Secret.
  • Add any other environment variables required by your application here. Clearly document their purpose.

Development Guide

After completing the installation and setup, run the development server:

npm run dev

The application will be available at http://localhost:3000.

Deployment Instructions

This project is Docker configured. While the specific Docker commands are not included in the project yet, you will likely need to build a Docker image and then run it. Add detailed Docker instructions here once finalized. Example:

# Build the Docker image
docker build -t merged-and-share .

# Run the Docker container
docker run -p 3000:3000 merged-and-share

Further deployment details (e.g., for specific cloud providers) should be added here as needed.

Contributing

Contributions are welcome! Feel free to open issues or submit pull requests. Please ensure your code follows the existing style and include tests for any new features.

License

This project is licensed under the MIT License.

About

A platform where user can come fetch their merged PRs from the selected repo and showcase and share their OS contribution as POW to anyone around the world

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages