Giter VIP home page Giter VIP logo

site.v2's Introduction

Microflash deploy

Personal website of @naiyerasif

Development

  • Install Deno and Lume
  • Run lume --serve to serve the site at port 8080
  • Run lume to generate a production build

Deployment

The deployment on Netlify is automated through GitHub Actions.

Affordances

Install Velociraptor to use the affordances.

Creating a draft

vr post -t '${title}' -c '${category}' -d '${date in YYYY-MM-DD HH:mm:ss format}' -h '${comma separated tags}'

The draft will be created in .workspace/posts directory.

License

The source code of this site is available under MIT, the content under CC BY-SA 4.0.

site.v2's People

Contributors

naiyerasif avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

site.v2's Issues

Add a siteroll

A dedicated page with links to blogs, personal sites and non-site personal resources

Opt out of Google's Topic API

To opt out of Google’s Topic API, I need to send the following Permissions Policy HTTP response header.

Permissions-Policy: browsing-topics=()

Since this site is hosted on Netlify, create a netlify.toml with the following setting.

[[headers]]
  for = "/*"
  [headers.values]
    Permissions-Policy = "browsing-topics=()"

Alternatively, create a _headers file in the public directory.

/*
  Permissions-Policy: browsing-topics=()

Design language: icons

Rework current icons (if needed) and create new ones for more visual representation of concepts

Callouts: Remark plugin

Support the following callouts:

  • Note
  • Commend
  • Warn
  • Deter
  • Assert

The wrapping element should be <aside>.

Additionally, explore the possibility of adding a visual cue (like an emoji or icon) to signify the type of callout for accessibility.

Preferences: motion intensity

  • Disabled
  • Reduced
  • Enabled (default)

People should be able to choose an option.

Detection

  • media query for low DPI devices
  • media query for prefers-reduced-motion

New About page

With details on

  • experience and capabilities
  • FAQs (can include About site, its stack, acknowledgements, privacy practices)

Preferences: themes

  • Dark theme (default)
  • Light theme

People should be able to select a theme if needed.

Opt out of Google's Tracking APIs in Chrome-based browsers

Disable the following tech for Chrome-based browsers:

  • FLoC (through interest-cohort=())
  • Topic API (through browsing-topics=())
  • FLEDGE API (through join-ad-interest-group=() and run-ad-auction=())

To do this, I need to send the following Permissions Policy HTTP response header.

Permissions-Policy: browsing-topics=(), interest-cohort=(), join-ad-interest-group=(), run-ad-auction=()

Since this site is hosted on Netlify, create a netlify.toml with the following setting.

[[headers]]
  for = "/*"
  [headers.values]
    Permissions-Policy = "browsing-topics=(), interest-cohort=(), join-ad-interest-group=(), run-ad-auction=()"

Alternatively, create a _headers file in the public directory.

/*
  Permissions-Policy: browsing-topics=(), interest-cohort=(), join-ad-interest-group=(), run-ad-auction=()

Use OkLab based color system

For optically perceivable palette.

  • Reorganize brand, semantic and decorative colors
  • Palette for Dark theme
  • Palette for Light theme

Content organization

Take inspiration from Diátaxis to organize the content into the following categories.

  • Guides
  • Recipe
  • References
  • Crash Courses

Codeblocks: Shiki renderer

Custom shiki renderer to enable the following

  • Keyboard scrollable code fences: Use tabindex=0 on all the elements with overflow: auto or overflow: scroll to ensure that they can be focused by keyboard; this is needed to copy the content of such elements (such as code blocks). See scrollable-region-focusable
  • Line Highlighting
  • Show language of the code
  • Show caption for the code fences
  • Highlight code fence on selection or focus

The wrapping element should be <figure> in case when language of the code or caption is being displayed. The metadata itself should be a <figcaption>.

Popular Posts

Use Google Search Console API to query the popular posts and topics. This MUST be done at build time.

Figure and captions

Implement Remark plugin for wrapping images into <figure> and assign them a <figcaption>, just so that the alt text is visible as caption for the image.

Codeblocks: Remark plugin

This plugin will wire Starry Night with Remark with the following features:

  • Keyboard scrollable code fences: Use tabindex=0 on all the elements with overflow: auto or overflow: scroll to ensure that they can be focused by keyboard; this is needed to copy the content of such elements (such as code blocks). See scrollable-region-focusable
  • Line numbers for multiline fences
  • Line Highlighting
  • Language of the code
  • Caption for the code fences
  • Highlight code fence on selection or focus

Considerations

  • The wrapping element should be in case when language of the code or caption is being displayed. The metadata itself should be a .
  • Prompt support where a prompt is shown but is not selectable; useful when copying the commands

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.