Giter Club home page Giter Club logo

escapist-marginalia's Introduction

Hello World

Hello World, I am Eric!

I am passionate about web-development, natural sciences, and photography.

Projects

Maintained

  • Escapist Marginalia — personal "escapism corner" of mine;
  • Photo Companion — minimalistic photography toolkit progressive web application;
  • vector — euclidean vector library written in JavaScript;
  • rational — rational numbers library written in JavaScript;
  • radix — radix number transformations and manipulations library;

Open-source contributions

  • slidy/svelte — simple & configurable sliding behavior action script with it's ecosystem;
  • colord — a tiny yet powerful tool for high-performance color manipulations and conversions;

Legacy or not currently maintained

  • Numbers — educative web-application to learn about number bases;
  • Wise Cookie — An inspirational daily phrases generator;
  • blossom — JS library tool for color manipulations and transformations;
  • Tic-Tac-Toe — Simple web-based tic-tac-toe game;
  • radix — considered to be a new version of numbers application from this list, frozen project;
  • Svelte Media Observer — SvelteJS media queries observer;

Technologies

Languages, tools, and others things I use the most:

Basic

HTML CSS JavaScript TypeScript

NodeJs Python

UI Libraries

Svelte React Solid

Web-frameworks

SvelteKit Astro NextJs

Others

LaTEX, MDX, pnpm, vite, esbuild.

escapist-marginalia's People

Contributors

ericrovell avatar

Stargazers

 avatar

Watchers

 avatar

escapist-marginalia's Issues

component: implement `<Switch />`

Right now the native <input type="checkbox /> is being used for content filter. As the effect immediate the switch should be used. Also, the checkbox styling is quite limited.

  • This design should be used as inspiration;
  • implementation should use this article as a guide to do this right.

layout: implement page header

To indicate the page info the header should be implemented. It would improve the layout considerably and give more information for a user. It should look like here .

The responsiveness should be considered. Should it be wide as the screen or have maximum width?

sketch: play/pause shortcut

Sketch page should have:

  • play/pause shortcut the same way as video: spacebar should be a good choice;
  • fullscreen mode using F11 key;
  • reset using ctrl + R or ctrl + Z.

improve `find`

find function should have optional options object to specify limit and sort functionality.
sort should pass an object key and number to describe asc or des:

{
  limit: 5,
  sort: {
    "object-key": -1
  }
}

After that, to sort the data:

items.sort((a, b) => (a.key> b.key ? Number(sort) : 1));

Also, the sort and limit options should be validated.

Reading time

Calculate article reading-time metadata.

The algorithm:

  • Get total word count;
  • Divide total word count by {238} - this is the average reading rate and get minutes;
  • Pay attention to images, {12 sec} each etc.

Image Preprocessor

Implement and use image preprocessor. Managing images for gallery and blogpost should be handled by preprocessor.
Use this project as a reference. Do not forget to add this project in attributions section.

Canvas observers

Right now the each Canvas component create it's own instance of ResizeObserver and IntersectionObserver, which may eat up resources. The observers should be extracted out to have one instance of each observer for every Canvas instance.

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.