Skip to content

user4302/GitLab-Activity-Visualizer

Repository files navigation

GitLab Activity Visualizer πŸš€

A high-performance, real-time GitLab contribution calendar generator for GitHub Profile READMEs and personal portfolios.

GitLab Activity

License: MIT GitLab Issues Deployment Status

Features ✨

  • Real-Time Data: Fetches directly from GitLab's official activity API.
  • 5-Range Precision: Matches GitLab's official breakdown: 0, 1-9, 10-19, 20-29, 30+.
  • Multiple Themes: Supports GitLab Light, GitLab Dark, Sky Blue, and Warm Orange.
  • High Performance: Optimized with SVG rendering and caching for instant loads.
  • Easy Embed: Simple Markdown syntax for GitHub and GitLab READMEs.
  • Premium UI: Interactive generator with live preview and theme selector.

Tech Stack / Built With πŸ› οΈ

Quick Start πŸš€

No setup required! Simply visit the live generator to create your embed link in seconds:

πŸ‘‰ Live Generator Tool

  1. Enter your GitLab username.
  2. Select your favorite theme.
  3. Copy the Markdown code and paste it into your README!

Manual Usage ⚑

If you prefer to construct the URL yourself, use the following Markdown syntax:

![GitLab Activity](https://user4302-gitlab-activity-visualizer.netlify.app/api/calendar?username=YOUR_USERNAME&theme=dark)

URL Parameters

  • username: Your GitLab username (required).
  • theme: Choice of classic, dark, blue, or orange (default: classic).

Self-Hosting / Installation πŸ“₯

If you want to run your own instance:

  1. Clone the repository:

    git clone https://gitlab.com/user4302_Projects/coding/next-js/gitlab-activity-visualizer.git
    cd gitlab-activity-visualizer
  2. Install & Run:

    npm install
    npm run dev

Project Structure πŸ“‚

  • src/app/api/calendar/route.ts: Core API logic for fetching data and generating SVG.
  • src/components/Generator.tsx: Interactive frontend for URL generation.
  • src/app/page.tsx: Landing page layout.

Configuration πŸ”§

No API keys are required as it uses public GitLab profile data.

Development πŸ—οΈ

# Start development server
npm run dev

# Run linting
npm run lint

Building for Production 🏭

npm run build

Deployment πŸš€

This project is optimized for Netlify.

  • Build Command: npm run build
  • Publish Directory: .next

The repository includes a netlify.toml for automatic configuration.

Contributing 🀝

Contributions are highly encouraged! Please see CONTRIBUTING.md for details. All communication and pull requests must be handled via GitLab Merge Requests.

License πŸ“„

This project is licensed under the MIT License - see the LICENSE file for details.

Support & Contact πŸ‘‹

For any questions, bug reports, feature requests, or security concerns, please open an issue on GitLab: Issues Page. No email or direct messaging support is available.

Packages

 
 
 

Contributors