Skip to content

Instantly share code, notes, and snippets.

View MuhammadKhizar7's full-sized avatar

Muhammad Khizar MuhammadKhizar7

View GitHub Profile
@MuhammadKhizar7
MuhammadKhizar7 / prd.md
Created April 13, 2025 00:50 — forked from burkeholland/prd.md
TheUrlist PRD

Project Requirements Document: The Urlist Website

The following table outlines the detailed functional requirements of The Urlist website.

Requirement ID Description User Story Expected Behavior/Outcome
FR001 Creating a New URL List As a user, I want to be able to start a new, empty list so I can begin adding URLs. The system should provide a clear way for the user to initiate the creation of a new list, potentially presenting an empty list view or an "add new list" button.
FR002 A
@MuhammadKhizar7
MuhammadKhizar7 / useFatchWithCached.ts
Created January 29, 2025 00:19
useFatchWithCached.ts
import { StorageSerializers } from '@vueuse/core';
export default async <T>(url: string) => {
// Use sessionStorage to cache the lesson data
const cached = useSessionStorage<T>(url, null, {
// By passing null as default it can't automatically
// determine which serializer to use
serializer: StorageSerializers.object,
});
Canva Pro Team Invite Link For Free 2023 [100% Working] 👇
https://www.canva.com/brand/join?token=GRui7Uc5Nts4iMxhKxh07A&referrer=team-invite

Pakistan CNIC Number Validator

RegEx for validating CNIC numbers of Pakistan

CNIC stands for Computerized National Identiry Card. There are two ways we can actually write CNIC numbers:

  1. 12345-1234567-1
  2. 1234512345671

One with dashes and one without dashes but not mixed with other.

Only Allow Dashes

@MuhammadKhizar7
MuhammadKhizar7 / Pakistan's Phone Number validation.md
Last active June 17, 2023 17:41
Pakistan's Phone Number validation

Pakistan Mobile Number Validator

RegEx for validating mobile numbers of Pakistan. To change it to work for your country just change 92 and 3 with your country code. Also you can change length of numbers by changing last {9}

^((\+92)?(0092)?(92)?(0)?)(3)([0-9]{9})$/gm

Test it online on RegExr or RegEx101

Explanation:

There are three groups:

@MuhammadKhizar7
MuhammadKhizar7 / githubAuthcloudflarefn.js
Created May 3, 2022 16:41
cloudflare worder function to auth github
addEventListener('fetch', (event) => {
event.respondWith(handle(event.request))
})
// use secrets
const client_id = CLIENT_ID
const client_secret = CLIENT_SECRET
const redirect_uri = 'https://url.workers.dev'
const scope = 'repo,user'
@MuhammadKhizar7
MuhammadKhizar7 / tonybaloneyextended.omp.json
Created November 6, 2021 17:52
tonybaloneyextended.omp.json
{
"$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
"blocks": [
{
"alignment": "left",
"horizontal_offset": 0,
"vertical_offset": 0,
"segments": [
{
"type": "os",
@MuhammadKhizar7
MuhammadKhizar7 / powershell profile
Last active January 12, 2022 02:39
Powershell profile
using namespace System.Management.Automation
using namespace System.Management.Automation.Language
clear
if ($host.Name -eq 'ConsoleHost') {
Import-Module PSReadLine
}
Import-Module -Name Terminal-Icons
@MuhammadKhizar7
MuhammadKhizar7 / db.js
Created November 1, 2021 11:00 — forked from smolinari/db.js
The services/db.js file for the Quasar todo browser extension demo
export default {
/**
* This will ask for ALL items from chrome storage and return only the ones we're interested in.
* @param type
*/
getAll (type) {
return this.get(null).then(allItems => {
return allItems.filter(f => f && f.type && f.type === type)
})
@MuhammadKhizar7
MuhammadKhizar7 / ActiveRouteTagHelper.cs
Created April 29, 2021 00:59
To add Active class on nav link in asp.net core
[HtmlTargetElement(Attributes = "is-active-route")]
public class ActiveRouteTagHelper : TagHelper
{
private IDictionary<string, string> _routeValues;
/// <summary>The name of the action method.</summary>
/// <remarks>Must be <c>null</c> if <see cref="P:Microsoft.AspNetCore.Mvc.TagHelpers.AnchorTagHelper.Route" /> is non-<c>null</c>.</remarks>
[HtmlAttributeName("asp-page")]
public string Page { get; set; }